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.23.0

1 year ago
  • Add input slicing as a jc command-line option
  • Add ssh configuration file parser
  • Add ver Version string parser
  • Add zpool iostat command parser
  • Add zpool status command parser
  • Fix acpi command parser for "will never fully discharge" battery state
  • Fix crontab and crontab-u command and file parsers for cases where only shortcut schedule items exist
  • Fix ifconfig command parser for older-style linux output
  • Fix xrandr command parser for proper is_current output
  • Fix xrandr command parser for infinite loop with some device configurations
  • Add reflection key to xrandr parser schema
  • Add display model info from EDID to xrandr parser
  • Add MPX-specific VMA support for VM Flags in /proc/<pid>/smaps parser

v1.22.5

1 year ago
  • Add TOML file parser
  • Add INI with duplicate key support file parser
  • Add AIX support for the arp command parser
  • Add AIX support for the mount command parser
  • Fix lsusb command parser when extra hub port status information is output
  • Refactor lsusb command parser for more code reuse
  • Fix INI file parser to include top-level values with no section header
  • Fix INI file parser to not specially handle the [DEFAULT] section
  • Fix INI file and Key/Value parsers to only remove one quotation mark from the beginning and end of values.
  • Update copyright dates

v1.22.4

1 year ago
  • Add iwconfig command parser
  • Add NeXTSTEP format support to the PLIST file parser
  • Fix proc parser magic signature detection for /proc/pid/stat hacks
  • Fix x509-cert parser for string serial numbers
  • Add category tags to parser metadata: generic, standard, file, string, binary, command
  • Add "list parsers by category" view to help
  • Fix python 3.6-related issues
  • Add python 3.6 to automated tests

Release Notes: https://blog.kellybrazil.com/2022/09/27/jc-version-1-22-0-released

v1.22.3

1 year ago
  • Add Common Log Format and Combined Log Format file parser (standard and streaming)
  • Add PostgreSQL password file parser
  • Add openvpn-status.log file parser
  • Add cbt command parser (Google Big Table)
  • Enhance ifconfig parser with interface lane information on BSD
  • Enhance ifconfig parser with additional IPv6 scope_id info for BSD
  • Fix ifconfig parser to capture some IPv6 addresses missed on BSD
  • Fix git-log and git-log-s parsers for failure on empty author name
  • Update os-prober parser with split EFI partition fields
  • Add ISO string attribute (.iso) to jc.utils.timestamp()
  • Fix several documentation typos

Release Notes: https://blog.kellybrazil.com/2022/09/27/jc-version-1-22-0-released/

v1.22.2

1 year ago
  • add sshd-conf parser for sshd configuration files and sshd -T output
  • add findmnt command parser
  • add git ls-remote command parser
  • add os-prober command parser
  • add SemVer string parser
  • enhance the ifconfig parser so it can output multiple IPv4 and IPv6 addresses
  • enhance the ifconfig parser so it can output additional fields common on BSD
  • enhance xml parser with optional _ prefix for attributes instead of @ by using the --raw option. This can make it easier to filter the JSON output in some tools.
  • fix the xml parser to output a normal Dictionary instead of OrderdDict. This cleans up YAML output. (No !!omap comments)
  • fix csv and csv-s parsers for UTF-8 encoded CSV files with leading BOM bytes
  • fix exit code to be non-zero on interrupt
  • allow parser module objects to be used as arguments to jc.get_help() and jc.parser_info()
  • catch unexpected exceptions in the CLI
  • add error message on interrupt to STDERR
  • add python 3.11 tests to github actions
  • fix XML parser in macOS binary

Release Notes: https://blog.kellybrazil.com/2022/09/27/jc-version-1-22-0-released

v1.22.1

1 year ago
  • add udevadm command parser
  • add lspci command parser
  • add pci.ids file parser
  • fix proc-pid-stat parser for command names with spaces and newlines
  • enhance ip-address parser to add ip_split field
  • rename iso-datetime parser to datetime-iso. A deprecation warning will display until iso-datetime is removed in a future version.
  • refactor cli module
  • optimize performance of calculated timestamps
  • add more type annotations
  • add support for deprecating parsers
  • move jc-web demo site from heroku to render.com

Release Notes: https://blog.kellybrazil.com/2022/09/27/jc-version-1-22-0-released

v1.22.0

1 year ago
  • Add /proc file parsers for linux. Support for the following files: /proc/buddyinfo /proc/consoles /proc/cpuinfo /proc/crypto /proc/devices /proc/diskstats /proc/filesystems /proc/interrupts /proc/iomem /proc/ioports /proc/loadavg /proc/locks /proc/meminfo /proc/modules /proc/mtrr /proc/pagetypeinfo /proc/partitions /proc/slabinfo /proc/softirqs /proc/stat /proc/swaps /proc/uptime /proc/version /proc/vmallocinfo /proc/vmstat /proc/zoneinfo /proc/driver/rtc /proc/net/arp /proc/net/dev /proc/net/dev_mcast /proc/net/if_inet6 /proc/net/igmp /proc/net/igmp6 /proc/net/ipv6_route /proc/net/netlink /proc/net/netstat /proc/net/packet /proc/net/protocols /proc/net/route /proc/net/unix /proc/<pid>/fdinfo/<fd> /proc/<pid>/io /proc/<pid>/maps /proc/<pid>/mountinfo /proc/<pid>/numa_maps /proc/<pid>/smaps /proc/<pid>/stat /proc/<pid>/statm /proc/<pid>/status
  • Magic syntax support for /proc files
  • Enhance bash and zsh autocompletions for /proc files
  • Enhance free parser to support -w option integer conversions
  • Fix ini and kv parsers so they don't change keynames to lower case NOTE: This can be a breaking change in your scripts
  • Fix id command parser to allow usernames and groupnames with spaces
  • Enhance metadata output to output metadata even when results are empty
  • Optimize tests
  • Optimize documentation build script

Release Notes: https://blog.kellybrazil.com/2022/09/27/jc-version-1-22-0-released/

v1.21.2

1 year ago
  • Fix IP Address string parser for older python versions that don't cleanly accept decimal input format - IPv6 fix (e.g. python 3.6)

v1.21.1

1 year ago
  • Fix IP Address string parser for older python versions that don't cleanly accept decimal input format (e.g. python 3.6)
  • Fix arp -a parser for cases where incomplete hardware addresses are found in the arp table on linux

v1.21.0

1 year ago
  • Add --meta-out or -M option to add metadata to the JSON output, including a UTC timestamp, parser name, magic command, and magic command exit code
  • Add IP Address string parser
  • Add Syslog standard and streaming string parsers (RFC 3164 and RFC 5424)
  • Add CEF standard and streaming string parsers
  • Add PLIST file parser (XML and binary support)
  • Add mdadm command parser tested on linux
  • Add -n support to the traceroute parser
  • Fix lsusb command parser for output containing a Device Qualifier and Binary Object Store Descriptor sections
  • Change LANG=C to LC_ALL=C in locale instructions
  • Add __main__.py to package allowing python -m jc usage
  • Add an enclosing top-level folder inside the windows.zip package

Release notes: https://blog.kellybrazil.com/2022/08/21/jc-version-1-21-0-released/