mirror of
https://github.com/kellyjonbrazil/jc.git
synced 2025-10-08 23:22:21 +02:00
419 lines
16 KiB
Plaintext
419 lines
16 KiB
Plaintext
jc changelog
|
|
|
|
20210923 v1.17.0
|
|
- Note to Package Maintainers: please see note at 20210720 v1.16.0
|
|
- Add wrapping of warning and error messages
|
|
- ??? Add generic ASCII tables parser
|
|
- Add vmstat parser tested on linux
|
|
- Add support for streaming parsers
|
|
- Add ls command streaming parser tested on linux, macOS, and freeBSD
|
|
- Add ping command streaming parser tested on linux, macOS, and freeBSD
|
|
- Add vmstat command streaming parser tested on linux
|
|
- Add -u option to allow unbuffered output
|
|
|
|
20210830 v1.16.2
|
|
- Note to Package Maintainers: please see note at 20210720 v1.16.0
|
|
- Update sfdisk parser to support the -F option and newer versions of sfdisk
|
|
|
|
20210813 v1.16.1
|
|
- Note to Package Maintainers: please see note at 20210720 v1.16.0
|
|
- Fix issue with process substitution with the magic syntax
|
|
- Fix issue with globs not including filenames with spaces with magic syntax
|
|
- Fix stat parser to properly handle filenames with spaces on macOS/BSD
|
|
|
|
20210720 v1.16.0
|
|
- Note to Package Maintainers:
|
|
TL;DR: `/man/jc.1.gz` and `/jc/man/jc.1.gz` are deprecated and only `/man/jc.1` should be used.
|
|
|
|
The Man page in the PyPi source packages will be moving from `/jc/man/jc.1.gz` to `/man/jc.1`
|
|
in version 1.17.0. For now the Man pages will be available in both locations, but be aware that
|
|
the Man page at `/jc/man/jc.1.gz` is now considered deprecated.
|
|
|
|
Also, starting in v1.17.0, the Man page will no longer be compressed in the source package,
|
|
therefore `/man/jc.1.gz` should also be considered deprecated and will no longer be available
|
|
after v1.17.0. Please use `/man/jc.1` and compress downstream if you would like.
|
|
- Include CHANGELOG in source distribution
|
|
- Fix Man page location in source packages
|
|
- Add sfdisk command parser tested on linux
|
|
- Update unit test files to change the timezone when needed (POSIX only)
|
|
- Binaries and DEB/RPM/MSI packages now include Python 3.9.5 interpreter
|
|
|
|
20210628 v1.15.6
|
|
- Fix issue to only load local plugin parsers that have filenames that end in .py
|
|
|
|
20210520 v1.15.5
|
|
- Fix issue where help and about information would not display if a 3rd party parser library was missing. (e.g. xmltodict)
|
|
- Add more error message detail when encountering ParseError and LibraryNotFound exceptions
|
|
|
|
20210517 v1.15.4
|
|
- Update ping parser to support error responses in OSX and BSD
|
|
- Update ping parser to be more resilient against parsing errors for unknown error types
|
|
- Update dig parser to support `+noall +answer` use case
|
|
- Update dig parser compatibility to all platforms
|
|
- Fix colors in Windows terminals (cmd.exe and PowerShell)
|
|
- Fix epoch calculations when UTC is referenced as "Coordinated Universal Time"
|
|
- Add Windows time format for systeminfo output
|
|
- Add exceptions module to standardize parser exceptions
|
|
- JC no longer swallows exit codes when using the "magic" syntax. See the Exit Codes section of the README and man page for details
|
|
|
|
20210426 v1.15.3
|
|
- Add ufw status command parser tested on linux
|
|
- Add ufw-appinfo command parser tested on linux
|
|
- Fix deb package name to conform to standard
|
|
- Add Caveats section to readme and manpage
|
|
|
|
20210418 v1.15.2
|
|
- Add systeminfo parser tested on Windows
|
|
- Update dig parser to fix an issue with IPv6 addresses in the server field
|
|
- Update dig parser to fix an issue when axfr entries contain a semicolon
|
|
- Update dig parser to add support for Additional Section and Opt Pseudosection
|
|
- Update dig parser to add query_size field
|
|
- Use dig parser as the main example in readme, documentation, and man page
|
|
- Standardize int, float, and boolean conversion rules with functions in jc.utils
|
|
|
|
20210413 v1.15.1
|
|
- New feature to show parser documentation interactively with -h --parser_name
|
|
for example: $ jc -h --arp
|
|
- Add man page to pypi package for easier packaging in homebrew
|
|
- Update rpm-qi parser to add two calculated timestamp fields: install_date_epoch and install_date_epoch_utc
|
|
- Clean up documentation and autogenerate the Parser Information section from metadata
|
|
|
|
20210407 v1.15.0
|
|
- Add acpi command parser tested on linux
|
|
- Add upower command parser tested on linux
|
|
- Add /usr/bin/time command parser tested on linux and macOS
|
|
- Add dpkg -l command parser tested on linux
|
|
- Add rpm -qi command parser tested on linux
|
|
- Add finger command parser tested on linux and macOS
|
|
- Add dir command parser tested on Windows 10
|
|
- Update date parser: complete rewrite (v2.0) providing many enhancements:
|
|
- Make weekday numbering ISO 8601 compliant
|
|
- Add a calculated naive timestamp field
|
|
- Add a calculated UTC timestamp field (only if date output is in UTC)
|
|
- Add several fields, including: hour_24, utc_offset, day_of_year, week_of_year, iso, and timezone_aware
|
|
- Update uptime parser to add uptime_days, uptime_hours, uptime_minutes, uptime_total_seconds, time_hour,
|
|
time_minute, and time_second fields
|
|
- Update last parser to use new timestamp function
|
|
- Update stat parser to add access_time_epoch, access_time_epoch_utc, modify_time_epoch, modify_time_epoch_utc,
|
|
change_time_epoch, change_time_epoch_utc, birth_time_epoch, birth_time_epoch_utc fields
|
|
- Update timedatectl parser to add epoch_utc field
|
|
- Update who parser to add epoch field
|
|
- Update dig parser to add when_epoch and when_epoch_utc fields
|
|
- Update ls parser to add epoch and epoch_utc fields
|
|
- Add -h option to display the help text. Piping errors no longer show the help text.
|
|
- Add -v option to display version information.
|
|
- Add contributing information to project root
|
|
- Make all external python library dependencies optional: pygments, ruamel.yaml, xmltodict
|
|
- JSON output now supports unencoded unicode characters
|
|
- JSON output is now more compact unless the -p (pretty) option is used
|
|
- Developer scripts added and enhanced to automate documentation and man page creation
|
|
- Enhanced man page
|
|
|
|
20210305 v1.14.4
|
|
- Packaging fix only for binaries and RPMs hosted on https://github.com/kellyjonbrazil/jc-packaging.
|
|
Packages from PyPi and OS repositories are not affected. This fixes an issue that kept the YAML
|
|
parser from initializing.
|
|
|
|
20210210 v1.14.3
|
|
- Add hciconfig parser tested on linux
|
|
- Update dig parser to simplify answer data logic
|
|
|
|
20210205 v1.14.2
|
|
- Update dig parser to fix cases where there are spaces in the answer data (e.g. TXT records)
|
|
|
|
20210106 v1.14.1
|
|
- Add iw-scan parser tested on linux (beta)
|
|
- Update date parser for Ubuntu 20.04 support
|
|
- Update last parser for last -F support
|
|
- Update last parser to add convenience fields and augment data for easier parsing
|
|
- Update man page
|
|
- Minor documentation updates
|
|
|
|
20201231 v1.14.0
|
|
- Add hashsum parser tested on linux, macos
|
|
- Add hash parser tested on linux, macos
|
|
- Add cksum parser tested on linux, macos
|
|
- Add wc parser tested on linux, macos
|
|
- Add printenv support under env parser
|
|
- Add vdir support under ls parser
|
|
- Add python 3.9 to github automation tests
|
|
|
|
20200805 v1.13.4
|
|
- Update crontab and crontab-u parsers to tighten up variable detection
|
|
- Update ping parser to tighten linux/bsd detection
|
|
|
|
20200804 v1.13.3
|
|
- Update ping parser for Raspberry Pi compatibility
|
|
|
|
20200803 v1.13.2
|
|
- Add key/value file parser (wrapper for ini parser)
|
|
- Add date command parser
|
|
- Update traceroute parser to more gracefully handle missing header row
|
|
- Update traceroute parser to handle annotations
|
|
- Update traceroute parser to only return successful probes
|
|
|
|
20200727 v1.13.1
|
|
- Add route -6 tests
|
|
|
|
20200727 v1.13.0
|
|
- Add ping and ping6 command parser tested on linux, macos, and freebsd
|
|
- Add traceroute and traceroute6 command parser tested on linux, macos, and freebsd
|
|
- Add tracepath command parser tested on linux
|
|
- Update ini parser to support files only containing key/value pairs
|
|
- Update uname parser exception with a hint to use "uname -a"
|
|
- Update route parser to support IPv6 tables
|
|
|
|
20200711 v1.12.1
|
|
- Fix tests when using older version of pygments library
|
|
|
|
20200710 v1.12.0
|
|
- Add sysctl command parser tested on linux, macOS, and freebsd
|
|
- Update the cli code to allow older versions of the pygments library (2.3.0) for debian packaging
|
|
- Code cleanup on the cli
|
|
- Add tests for the cli
|
|
- Vendorize cgitb as tracebackplus for verbose debug messages
|
|
|
|
20200625 v1.11.8
|
|
- Add verbose debug option using -dd argument
|
|
|
|
20200622 v1.11.7
|
|
- Fix iptables parser issue which would not output the last chain
|
|
|
|
20200614 v1.11.6
|
|
- Improve and standardize empty data check for all parsers
|
|
|
|
20200612 v1.11.5
|
|
- Update airport_s parser to fix error on parsing empty data
|
|
- Update arp parser to fix error on parsing empty data
|
|
- Update blkid parser to fix error on parsing empty data
|
|
- Update crontab parser to fix error on parsing empty data
|
|
- Update crontab_u parser to fix error on parsing empty data
|
|
- Update df parser to fix error on parsing empty data
|
|
- Update free parser to fix error on parsing empty data
|
|
- Update lsblk parser to fix error on parsing empty data
|
|
- Update lsmod parser to fix error on parsing empty data
|
|
- Update mount parser to fix error on parsing empty data
|
|
- Update netstat parser to fix error on parsing empty data
|
|
- Update ntpq parser to fix error on parsing empty data
|
|
- Update ps parser to fix error on parsing empty data
|
|
- Update route parser to fix error on parsing empty data
|
|
- Update systemctl parser to fix error on parsing empty data
|
|
- Update systemctl_lj parser to fix error on parsing empty data
|
|
- Update systemctl_ls parser to fix error on parsing empty data
|
|
- Update systemctl_luf parser to fix error on parsing empty data
|
|
- Update uptime parser to fix error on parsing empty data
|
|
- Update w parser to fix error on parsing empty data
|
|
- Update xml parser to fix error on parsing empty data
|
|
- Add tests to all parsers for no data condition
|
|
- Update ss parser to fix integer fields
|
|
|
|
20200610 v1.11.4
|
|
- Update ls parser to fix error on parsing an empty directory
|
|
|
|
20200609 v1.11.3
|
|
- Add local parser plugin feature (contributed by Dean Serenevy)
|
|
|
|
20200530 v1.11.2
|
|
- Update netstat parser to add freebsd support
|
|
- Update netstat parser to add route_flags_pretty field
|
|
- Update netstat parser to change osx_inode field name to unix_inode
|
|
- Update netstat parser to change osx_flags field name to unix_flags
|
|
- Update netstat parser to strip whitespace from state field
|
|
- Update route parser to add flags_pretty field
|
|
- Update arp parser to add permanent field (freebsd and osx)
|
|
- Update arp parser to add expires field (freebsd)
|
|
- Update w parser to strip whitespace from what field
|
|
- Update last parser to fix FreeBSD issues
|
|
- Update stat parser to change osx_flags field name to unix_flags
|
|
- Update stat parser to add unix_device field for freebsd and osx
|
|
- Fix freebsd compatibility message for df, fstab, mount, ntpq, stat, and uname parsers
|
|
- Fix compatibility message for platforms that include the version number at the end (e.g. freebsd12)
|
|
|
|
20200523 v1.11.1
|
|
- Update stat command parser to change osx_flags field to string
|
|
|
|
20200522 v1.11.0
|
|
- Add dmidecode command parser
|
|
- Update stat command parser to add OSX support
|
|
- Update netstat command parser to add OSX support
|
|
- Update netstat command parser to add -r (route) functionality for linux and OSX
|
|
- Update netstat command parser to add -i (interface) functionality for linux and OSX
|
|
|
|
20200511 v1.10.12
|
|
- Remove shebang from jc/cli.py for Fedora packaging
|
|
|
|
20200511 v1.10.11
|
|
- Change file permissions for Fedora packaging
|
|
|
|
20200509 v1.10.10
|
|
- Fix ls parser issue where the first file was skipped for ls -R on some platforms
|
|
- Update last parser to handle 'gone - no logout' condition
|
|
- Update netstat parser to handle bluetooth section (ignore gracefully for now)
|
|
|
|
20200508 v1.10.9
|
|
- Add license info to vendorized ifconfig-parser class
|
|
|
|
20200508 v1.10.8
|
|
- Add license file to dist for Fedora RPM packaging requirements
|
|
- Remove tests from package to keep from polluting the global site-packages
|
|
|
|
20200501 v1.10.7
|
|
- Requirements modifications for Fedora RPM packaging requirements
|
|
|
|
20200420 v1.10.6
|
|
- Remove homebrew shim references from du osx tests
|
|
|
|
20200414 v1.10.5
|
|
- Minor change of using sys.exit(0) instead of exit()
|
|
|
|
20200412 v1.10.4
|
|
- Add color customization via JC_COLORS env variable
|
|
|
|
20200409 v1.10.3
|
|
- Fix break on pipe error
|
|
|
|
20200409 v1.10.2
|
|
- Change colors to ansi and match jello colors
|
|
|
|
20200402 v1.10.1
|
|
- Code cleanup
|
|
|
|
20200402 v1.10.0
|
|
- Add color output by default when not piping data to another program
|
|
- Add -m option for monochrome output
|
|
|
|
20200326 v1.9.3
|
|
- Add axfr support for dig command parser
|
|
|
|
20200312 v1.9.2
|
|
- Updated arp parser to fix OSX detection for some edge cases
|
|
|
|
20200312 v1.9.1
|
|
- Updated file command parser to make filename splitting more robust
|
|
|
|
20200311 v1.9.0
|
|
- Added ntpq command parser
|
|
- Added timedatectl status command parser
|
|
- Added airport -I and airport -s command parser
|
|
- Added file command parser
|
|
- Optimized history command parser by https://github.com/philippeitis
|
|
- Magic syntax fix for certain edge cases
|
|
|
|
20200308 v1.8.1
|
|
- CLI optimizations by https://github.com/philippeitis
|
|
- Refactored magic syntax function and added tests (https://github.com/philippeitis)
|
|
- Github actions for CI testing on multiple platforms by https://github.com/philippeitis
|
|
- Updated ls parser to fix parsing error in OSX with -lR when there are empty folders
|
|
|
|
20200303 v1.8.0
|
|
- Added blkid command parser
|
|
- Added last and lastb command parser
|
|
- Added who command parser
|
|
- Added CSV file parser
|
|
- Added /etc/passwd file parser
|
|
- Added /etc/shadow file parser
|
|
- Added /etc/group file parser
|
|
- Added /etc/gshadow file parser
|
|
|
|
20200227 v1.7.5
|
|
- Updated ls parser to support filenames with newline characters
|
|
|
|
20200219 v1.7.4
|
|
- Updated ls parser to support multiple directories, globbing, and -R (recursive)
|
|
|
|
20200211 v1.7.3
|
|
- Add alternative 'magic' syntax: e.g. `jc ls -al`
|
|
- Options can now be condensed (e.g. -prq is equivalant to -p -r -q)
|
|
|
|
20200208 v1.7.2
|
|
- Include test fixtures in wheel and sdist
|
|
|
|
20200205 v1.7.1
|
|
- Add YAML file parser
|
|
- Add INI file parser
|
|
- Add XML file parser
|
|
- Add id parser (tested on linux and OSX)
|
|
- Add crontab file parser with user support (tested on linux)
|
|
- Add __version__ variable to parser modules
|
|
- Add exit code on error
|
|
- Updated history parser to output "line" as an integer
|
|
- Updated compatibility list for some parsers
|
|
- Bugfix in crontab file parser: header insertion was clobbering first row
|
|
- Just-in-time loading of parser modules instead of loading all at start
|
|
|
|
20191217 v1.6.1
|
|
- Add du parser (tested on linux and OSX)
|
|
- Add crontab parser (tested on linux and OSX)
|
|
- Add pip list parser (tested on linux and OSX)
|
|
- Add pip show parser (tested on linux and OSX)
|
|
- Add OSX support for the ifconfig, arp, df, mount, and uname parsers
|
|
- Add tests for ls, dig, ps, w, uptime on OSX
|
|
- Add about option
|
|
- Add universal parsers to refactor repetitive code
|
|
- Updated ifconfig parser to output 'state' as an array
|
|
|
|
20191117 v1.5.1
|
|
- Add ss parser
|
|
- Add stat parser
|
|
- Add /etc/hosts parser
|
|
- Add /etc/fstab parser
|
|
- Add systemctl parser (includes list-jobs, list-sockets, and list-unit-files)
|
|
- Add -r and raw=True options. By default, jc will now convert numbers and boolean, if possible, and add other semantic information, while the raw output will keep all values as text and provide a more literal JSON output
|
|
- Add -q and quiet=True options to suppress warnings to stderr
|
|
- Add -d option to debug parsing issues
|
|
- Add compatibility warnings to stderr
|
|
- Add documentation
|
|
- Updated iptables parser to allow --line-numbers option
|
|
- Updated lsblk parser to allow parsing of added columns
|
|
- Updated mount parser: changed 'access' field name to 'options'
|
|
- Updated netstat parser to allow parsing of unix sockets and raw network connections
|
|
- Updated w parser to fix unaligned data where blanks are possible
|
|
- Clean up code and reorganize package
|
|
|
|
20191031 v1.1.1
|
|
- Add arp parser
|
|
- Add dig parser
|
|
- Add unit tests
|
|
- fix netstat parser (remove side effects due to global variable)
|
|
|
|
20191025 v1.0.1
|
|
- Add w parser
|
|
- Add uptime parser
|
|
- Add history parser
|
|
- Flatten env parser output
|
|
- Remove problematic characters from key names in: df, free, history, lsblk, lsof, and w
|
|
- Where possible, lowercase all keys (except cases like env where the key is the variable name)
|
|
- Remove integer values
|
|
- Handle CTRL-C gracefully
|
|
|
|
20191023 v0.9.1
|
|
- Add jobs parser
|
|
- Add lsof parser
|
|
- Add lsmod parser
|
|
- No blocking if no piped data
|
|
- Better help text
|
|
- Clean up iptables parser code
|
|
|
|
20191022 v0.8.1
|
|
- Add env parser
|
|
- Add df parser
|
|
- Add free parser
|
|
- Add lsblk parser
|
|
- Add mount parser
|
|
- Add uname parser
|
|
- Add iptables parser
|
|
|
|
20191021 v0.6.4
|
|
- Flatten netstat parser output
|
|
- Clean up argument parsing
|
|
- Fix command help
|
|
|
|
20191018 v0.5.5
|
|
- Fix netstat -p parsing for Ubuntu
|
|
- Add ps parser
|
|
- Add route parser
|
|
- ls parser fixes
|
|
|
|
20191017 v0.2.0
|
|
- ifconfig, ls, and netstat support
|