Skip to content

Releases: SeidenGroup/pfgrep

v0.6

21 Jan 20:03

Choose a tag to compare

What's Changed

  • Add the -B and -C flags.
  • Search member descriptions with the -d flag; they will be shown as line 0.
  • pfgrep is partially rewritten in C++, to use the STL and pase-cpp. json-c is no longer needed.

Full Changelog: v0.5.1...v0.6

0.5.1

08 May 19:15

Choose a tag to compare

pfgrep now calls QUSRMBRD for an accurate record count instead of deriving it from the POSIX file size. This may have a minor performance impact, but should fix issues of incorrect matches and possibly conversion issues.

0.5

18 Mar 19:09

Choose a tag to compare

0.5

This is a major pfgrep release, now including:

  • pfzip, a tool to make archives out of source libraries/files/physical file members/streamfiles. It converts them to standard UTF-8 text inside of the archive, and preserves text descriptions as file comments
  • Other minor tools like pfcat (print PF member/EBCDIC streamfile) and pfstat (print PF info as tab-separated values).
  • Man pages are included, you can refer to i.e. man pfgrep for command help.
  • Support for the -m option to limit matched reeturned.
  • Support for the -A option to print lines after the lines matched.
  • Improve iconv handling (reset shift state, use iconv directly)
  • Modularize pfgrep code to handle streamfiles and record files the same way.

v0.4

27 Jan 17:36
3cbb053

Choose a tag to compare

  • -E and -F flags are supported so multiple patterns can be passed.
  • The behaviour of -t is now inverted; whitespace is trimmed by default and -t will override this behaviour.
  • Streamfiles are supported. pfgrep is not a substitute for your regular grep, but streamfiles will be automatically converted from i.e. EBCDIC encodings, like QShell grep.
  • Unit tests have been added.
  • Fix an issue with inverted matches and empty lines.
  • Fix a corrupted free in EBCDIC conversion code.
  • Refactor reading code to keep whole converted buffer instead of line at a time. This uses more memory, but will allow for future features (i.e. context lines).

v0.3.2

18 Dec 23:07

Choose a tag to compare

  • Fix another issue with -t (failed to match at end of line)
  • Reset iconv state for DBCS encodings

v0.3.1

18 Dec 22:24

Choose a tag to compare

Fix -t not properly trimming whitespace.

v0.3

18 Dec 20:55

Choose a tag to compare

  • Read the file more efficiently and reduce allocations. Contributes to a 4x speedup.
  • PCRE JIT is used when possible. Currently, the version of PCRE2 IBM ships doesn't have JIT enabled, but pfgrep can take advantage of it when they do.
  • Only free memory on exit in debug builds.
  • Add a -V flag to print the version of pfgrep and dependent libraries.

v0.2

10 Dec 16:04

Choose a tag to compare

  • Cache iconv_open and QDBRTVFD values for better performance
  • Fix error handling when reading records
  • Improve error handling for iconv and getting file information
  • Supports reading non-source physical files with -p flag
  • Skip empty files and logical files
  • Use CCSID 37 for path conversion, fixing passing the incorrect path with files named in non-37 locales
  • Fix program return value for successful matches

v0.1

05 Dec 18:09

Choose a tag to compare

Initial pfgrep release.