Jc Versions Save

CLI tool and python library that converts the output of popular command-line tools, file-types, and common strings to JSON, YAML, or Dictionaries. This allows piping of output to tools like jq and simplifying automation scripts.

v1.25.2

1 month ago
  • Add apt-cache-show command parser
  • Add apt-get-sqq command parser
  • Add ethtool command parser
  • Add needrestart command parser
  • Enhance df parser to add human readable output support. Note: the size field has been changed to an integer and all size values have been normalized to bytes.
  • Enhance free parser to add human readable output support. All size values have been normalizd to bytes.
  • Enhance iptables parser to handle -x output
  • Enhance /proc/pid/stat parser to support "Idle" state
  • Enhance rpm_qi and pkg_index_deb parsers to split list fields into arrays
  • Fix iwconfig parser to handle more special characters in the SSID name
  • Fix xrandr parser to ignore extra horizontal and vertical stats lines
  • Add aarch64 binaries to Releases for macOS and Linux
  • Documentation and doc build updates

v1.25.1

2 months ago
  • Fix for crash when optional libraries are not installed (e.g. xmltodict)
  • Fix for ini parser crashing with some keys with no values
  • Fix xrandr parser to extract more EDID data
  • Enhance uptime parser to support output with no user information
  • Enhance --quiet CLI option to cover more warning messages
  • Add tests for missing optional libraries
  • Documentation updates

v1.25.0

2 months ago
  • Add --slurp functionality to wrap output from multiple lines into a single array. Note, this only works with single-line input parsers. (e.g. date, ip-address, url, etc.) Streaming parsers are not supported. Use jc -hhh to find parsers compatible with the slurp option.
  • Enhance /proc file magic syntax to allow slurping when multiple files are selected and to include the _file metadata field in the data
  • Enhance --meta-out functionality to include a list of the input data when using --slurp or /proc file magic syntax. For slurpable parsers, this is a list of string inputs in order. For /proc file magic syntax, this is a list of /proc filenames in order. This can help with identifying which input matches to which output when using --slurp or when converting multiple files via /proc file magic syntax.
  • Add curl-head command parser for curl --head or curl -I with verbose support
  • Add efibootmgr command parser
  • Add http-headers parser for plain HTTP header output
  • Add kv-dup parser for Key/Value files with duplicate keys
  • Add path string parser to parse posix path
  • Add path-list string parser to parse path list strings found in env variables
  • Add source link to online parser documentation
  • Add snap package build scripts
  • Add remove_quotes function to utils.py
  • Add normalize_key function to utils.py
  • Add line_slice function to utils.py
  • Add get_parser function to lib.py
  • Enhance nsd-control parser to support more zone information
  • Enhance ping and ping-s parsers to support the -I command option
  • Enhance proc-net-tcp parser to add opposite endian support for architectures like the s390x
  • Enhance url parser to add parent, filename, stem, and extension fields
  • Fix ini and ini-dup parsers to consistently handle null values as empty strings
  • Fix line slicer to not skip blank lines
  • Refactor parser aliases for kv, pkg_index_deb, lsb_release, and os-release
  • Update copyright date

v1.24.0

4 months ago
  • Add debconf-show command parser
  • Add iftop command parser
  • Add pkg-index-apk parser for Alpine Linux Package Index files
  • Add pkg-index-deb parser for Debian/Ubuntu Package Index files
  • Add proc-cmdline parser for /proc/cmdline file
  • Add swapon command parser
  • Add tune2fs command parser
  • Remove iso-datetime parser deprecated since v1.22.1. (use datetime-iso instead)
  • Update timezone change in Github Actions for node v16 requirement
  • Add Python 3.12 tests to Github Actions
  • Refactor acpi command parser for code cleanup
  • Refactor vendored libraries to remove Python 2 support
  • Fix iptables parser for cases where the target field is blank in a rule
  • Fix vmstat parsers for some cases where wide output is used
  • Fix mount parser for cases with spaces in the mount point name
  • Fix xrandr parser for infinite loop issues

v1.23.6

6 months ago
  • Fix XML parser for xmltodict library versions < 0.13.0
  • Fix who command parser for cases when the from field contains spaces

v1.23.5

6 months ago
  • Add host command parser
  • Add nsd-control command parser
  • Add lsb_release command parser
  • Add /etc/os-release file parser
  • Enhance env command parser to support multi-line values
  • Enhance ping and ping-s parsers to add error and corrupted support
  • Enhance xml parser to include comments in the JSON output
  • Fix pidstat command parser when using -T ALL
  • Fix x509-cert parser to allow negative serial numbers
  • Fix x509-cert parser for cases when bitstrings are larger than standard
  • Fix xrandr command parser for associated device issues
  • Fix error when pygments library is not installed

v1.23.4

8 months ago
  • Add /etc/resolve.conf file parser
  • Add /proc/net/tcp and /proc/net/tcp6 file parser
  • Add find command parser
  • Add ip route command parser
  • Fix certbot command parser to be more robust with different line endings

v1.23.3

10 months ago
  • Add lsattr command parser
  • Add srt file parser
  • Add veracrypt command parser
  • Add X509 Certificate Request file parser
  • Enhance X509 Certificate parser to allow non-compliant email addresses with a warning
  • Enhance dig command parser to support the +nsid option
  • Enhance last and lastb command parser to support the -x option
  • Enhance route command parser to add Windows support
  • Enhnace netstat command parser to add Windows support
  • Enhance ss command parser to support extended options
  • Enhance the compatibility warning message
  • Fix bluetoothctl command parser for some mouse devices
  • Fix ping command parsers for output with missing hostname
  • Fix stat command parser for older versions that may not contain all fields
  • Fix deprecated option in setup.cfg

v1.23.2

11 months ago
  • Add bluetoothctl command parser
  • Add certbot command parser for certificates and show_account options
  • Fix acpi command parser for "Not charging" battery status lines
  • Fix iwconfig command parser for SSIDs with dashes in the name
  • Fix crontab command parsers for incorrect variable parsing in some cases
  • Fix git-log and git-log-s command parsers for incorrect insertion/deletion parsing
  • Fix ufw-appinfo command parser for parsing errors on multiline description fields
  • Fix pytest warnings

v1.23.1

1 year ago
  • Fix zpool-status command parser for lines that start with tab
  • Fix timedatectl command parser when RTC set to local
  • Fix to ensure py.typed file is included in the package wheel
  • Fix lsusb command parser to support CDC MBIM and CDC MBIM Extended fields
  • Add support for the timesync-status for the timedatectl command parser
  • Fix to ignore non-parser-plugins in the parser plugin directory