Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
lowdown is just another Markdown translator. It can output traditional
HTML or a document for your troff type-setter of choice, such as
groff(1), Heirloom troff, or even mandoc(1). lowdown doesn't require
XSLT, Python, or even Perl - it's just clean, secure, open source
C code with no dependencies.
|
|
|
|
textproc/py-sphinxcontrib-newsfeed.
sphinxcontrib-newsfeed is a extension for adding a simple Blog,
News or Announcements section to a Sphinx website.
Features:
Makes feed entries from Sphinx documents.
Generates a list of entries with teasers.
Saves the feed to a file in RSS format.
Supports comments via Disqus.
|
|
v0.2.2:
not documented
v0.2.1
Add the rel HTML attribute to the footer links which point to the previous and next pages.
Fix toctree issue caused by Sphinx singlehtml builder (#367)
v0.2.0
Adds the comments block after the body block in the template
Added "Edit on GitLab” support
Many bug fixes
v0.1.10-alpha
Removes Sphinx dependency
Fixes hamburger on mobile display
Adds a body_begin block to the template
Add prev_next_buttons_location which can take the value bottom, top, both , None and will display the “Next” and “Previous” buttons accordingly
|
|
Autodetected line-endings, in-place mode, user-defined functions, and more
This major release significantly expands the expressiveness of the DSL for mlr put and mlr filter. (The upcoming 5.1.0 release will add the ability to aggregate across all columns for non-DSL verbs such as mlr stats1 and mlr stats2. As well, a Windows port is underway.)
Please also see the Miller main docs.
Simple but impactful features:
Line endings (CRLF vs. LF, Windows-style vs. Unix-style) are now autodetected. For example, files (including CSV) with LF input will lead to LF output unless you specify otherwise.
There is now an in-place mode using mlr -I.
Major DSL features:
You can now define your own functions and subroutines: e.g. func f(x, y) { return x**2 + y**2 }.
New local variables are completely analogous to out-of-stream variables: sum retains its value for the duration of the expression it's defined in; @sum retains its value across all records in the record stream.
Local variables, function parameters, and function return types may be defined untyped or typed as in x = 1 or int x = 1, respectively. There are also expression-inline type-assertions available. Type-checking is up to you: omit it if you want flexibility with heterogeneous data; use it if you want to help catch misspellings in your DSL code or unexpected irregularities in your input data.
There are now four kinds of maps. Out-of-stream variables have always been scalars, maps, or multi-level maps: @a=1, @b[1]=2, @c[1][2]=3. The same is now true for local variables, which are new to 5.0.0. Stream records have always been single-level maps; $* is a map. And as of 5.0.0 there are now map literals, e.g. {"a":1, "b":2}, which can be defined using JSON-like syntax (with either string or integer keys) and which can be nested arbitrarily deeply.
You can loop over maps -- $*, out-of-stream variables, local variables, map-literals, and map-valued function return values -- using for (k, v in ...) or the new for (k in ...) (discussed next). All flavors of map may also be used in emit and dump statements.
User-defined functions and subroutines may take map-valued arguments, and may return map values.
Some built-in functions now accept map-valued input: typeof, length, depth, leafcount, haskey. There are built-in functions producing map-valued output: mapsum and mapdiff. There are now string-to-map and map-to-string functions: splitnv, splitkv, splitnvx, splitkvx, joink, joinv, and joinkv.
Minor DSL features:
For iterating over maps (namely, local variables, out-of-stream variables, stream records, map literals, or return values from map-valued functions) there is now a key-only for-loop syntax: e.g. for (k in $*) { ... }. This is in addition to the already-existing for (k, v in ...) syntax.
There are now triple-statement for-loops (familiar from many other languages), e.g. for (int i = 0; i < 10; i += 1) { ... }.
mlr put and mlr filter now accept multiple -f for script files, freely intermixable with -e for expressions. The suggested use case is putting user-defined functions in script files and one-liners calling them using -e. Example: myfuncs.mlr defines the function f(...), then mlr put -f myfuncs.mlr -e '$o = f($i)' myfile.dat. More information is here.
mlr filter is now almost identical to mlr put: it can have multiple statements, it can use begin and/or end blocks, it can define and invoke functions. Its final expression must evaluate to boolean which is used as the filter criterion. More details are here.
The min and max functions are now variadic: $o = max($a, $b, $c).
There is now a substr function.
While ENV has long provided read-access to environment variables on the right-hand side of assignments (as a getenv), it now can be at the left-hand side of assignments (as a putenv). This is useful for subsidiary processes created by tee, emit, dump, or print when writing to a pipe.
Handling for the # in comments is now handled in the lexer, so you can now (correctly) include # in strings.
Separators are now available as read-only variables in the DSL: IPS, IFS, IRS, OPS, OFS, ORS. These are particularly useful with the split and join functions: e.g. with mlr --ifs tab ..., the IFS variable within a DSL expression will evaluate to a string containing a tab character.
Syntax errors in DSL expressions now have a little more context.
DSL parsing and execution are a bit more transparent. There have long been -v and -t options to mlr put and mlr filter, which print the expression's abstract syntax tree and do a low-level parser trace, respectively. There are now additionally -a which traces stack-variable allocation and -T which traces statements line by line as they execute. While -v, -t, and -a are most useful for development of Miller, the -T option gives you more visibility into what your Miller scripts are doing. See also here.
Verbs:
most-frequent and least-frequent as requested in #110.
seqgen makes it easy to generate data from within Miller: please also see here for a usage example.
unsparsify makes it easy to rectangularize data where not all records have the same fields.
cat -n now takes a group-by (-g) option, making it easy to number records within categories.
count-distinct,
uniq,
most-frequent,
least-frequent,
top, and
histogram
now take a -o option for specifying their output field names, as requested in #122.
Median is now a synonym for p50 in stats1.
You can now start a then chain with an initial then, which is nice in backslashy/multiline-continuation contexts.
This was requested in #130.
I/O options:
The print statement may now be used with no arguments, which prints a newline, and a no-argument printn prints nothing but creates a zero-length file in redirected-output context.
Pretty-print format now has a --pprint --barred option (for output only, not input). For an example, please see here.
There are now keystroke-savers of the form --c2p which abbreviate --icsvlite --opprint, and so on.
Miller's map literals are JSON-looking but allow integer keys which JSON doesn't. The
--jknquoteint and --jvquoteall flags for mlr (when using JSON output) and mlr put (for dump) provide control over double-quoting behavior.
Documents new since the previous release:
Miller in 10 minutes is a long-overdue addition: while Miller's detailed documentation is evident, there has been a lack of more succinct examples.
The cookbook has likewise been expanded, and has been split out
into three parts: part 1, part
2, part 3.
A bit more background on C performance compared to other languages I experimented with, early on in the development of Miller, is here.
On-line help:
Help for DSL built-in functions, DSL keywords, and verbs is accessible using mlr -f, mlr -k, and mlr -l respectively; name-only lists are available with mlr -F, mlr -K, and mlr -L.
Bugfixes:
A corner-case bug causing a segmentation violation on two sub/gsub statements within a single put, the first one matching its pattern and the second one not matching its pattern, has been fixed.
Backward incompatibilities: This is Miller 5.0.0, not 4.6.0, due to the following (all relatively minor):
The v variables bound in for-loops such as for (k, v in some_multi_level_map) { ... } can now be map-valued if the v specifies a non-terminal in the map.
There are new keywords such as var, int, float, num, str, bool, map, IPS, IFS, IRS, OPS, OFS, ORS which can no longer be used as variable names. See mlr -k for the complete list.
Unset of the last key in an map-valued variable's map level no longer removes the level: e.g. with @v[1][2]=3 and unset @v[1][2] the @v variable would be empty. As of 5.0.0, @v has key 1 with an empty-map value.
There is no longer type-inference on literals: "3"+4 no longer gives 7. (That was never a good idea.)
The typeof function used to say things like MT_STRING; now it says things like string.
|
|
Upstream changes:
2.031 2017-01-26
- Fix use of cache files when reading streams: temp files will now
be used any time a stream is larger than 16MB (by default).
Formerly, due to a bug, they would only be created when a 4kB
chunk of a stream increased to 16kB or more after being
decompressed.
- Numbers, booleans, and null values can now be read from object
streams.
- Update to [RT #113290]: Objects inside a large object stream are
now read without loading the entire object stream into memory.
- DEPRECATION: The low-level new_api methods have been deprecated
in favor of calling new directly. If your code uses
new_api($api2, ...), replace it with new($api2->{'pdf'}, ...).
- [RT #118352] Don't crash when adding an annotation to a page
that has an existing annotations array stored as an indirect
object (reported by Johan Vromans).
- [RT #118717] Die with an informative error if a file can't be
opened during open() or saveas() (reported by Johan Vromans).
|
|
Upstream changes:
1.27 - 2017-03-02, H.Merijn Brand
* Remove unneeded done_testing (Paul Howarth)
* Attribute sep/sep_char is not allowed to be undefined
* Increased test coverage: added errors 1008 and 1014
* Default for escape_null in csv () is now false
* It's 2017
* New error code for illegal argument(s)/parameter(s) (RT#119827)
* Fix tests for perl without dot in @INC
* Fix crlf issue for csv () on Windows (RT#120466)
1.26 - 2016-11-29, H.Merijn Brand
* Disable some Unicode related tests for unhealthy $PERL_UNICODE
(RT#117856)
* is_missing (0) on empty line returns 1 for keep_meta_info = true
(issue 27 on github)
|
|
in PATH.
|
|
|
|
The Levenshtein Python C extension module contains functions for fast
computation of: Levenshtein (edit) distance and edit operations, string
similarity, approximate median strings and general string averaging,
and string sequence and set similarity. It supports both normal and
Unicode strings.
Packaged by David H. Gutteridge via PR pkg/52017
|
|
1.47 2017-02-27
- Fix longstanding memory leak in _scrubpkg() [#22031]
- Fix various spelling errors [#86872]
|
|
|
|
Upstream changes:
1.91 2017-01-28
- production release
1.90_01 2017-01-20
- Text::CSV_PP is totally refactored using the code/doc of
Text::CSV_XS 1.27. Almost all the code/docs in CSV_XS.pm are
copied and a large portion of CSV_XS.xs is ported verbatim,
and now CSV_PP passes all the tests for CSV_XS (with slight
modification like s/XS/PP/g).
|
|
Prompted by https://repology.org.
Changes since 1.4.5:
- typo in last commit (Eagle eyes of Gary)
- issue #251 avoid potential clash between built-in and custom defined
kinds like sections
- Issue #248 overeager error messages for module-level fields
- Issue #248: assignment wrong way around (Monday morning mode)
- Issue #248 standalone field considered a parse error; reset is_local
after parse_error set
|
|
|
|
[v1.4.2][1.4.2]
-------------------------------------------------------------------------
### Fixed
- A PEM-formatted key encoded as bytes could cause a `TypeError` to be raised [#213][213]
[v1.4.1][1.4.1]
-------------------------------------------------------------------------
### Fixed
- Newer versions of Pytest could not detect warnings properly [#182][182]
- Non-string 'kid' value now raises `InvalidTokenError` [#174][174]
- `jwt.decode(None)` now gracefully fails with `InvalidTokenError` [#183][183]
|
|
-------------------------------------
1.70 2017-01-22 08:59:54Z
[FIXED]
- Some errors writing to a file were incorrectly reported.
|
|
1.23 Sun Feb 19 22:07:57 CET 2017
- Fix $YAML::Numify (empty values were converted to 0)
|
|
Add test target.
Changes in version 1.14.1, released on February 21, 2017
--- MAJOR NEW FEATURES ---
* apropos(1): Reimplement complete semantic search functionality
without the dependency on SQLite3, using only POSIX APIs.
This comes with a completely new mandoc.db(5) file format.
* man(1): Support more than one tag entry for the same search term,
plus some minor improvements to the less(1) :t support.
* -Thtml: Use real macro names for CSS classes.
Systematic cleanup of and many improvements to mandoc.css.
* -Thtml: Produce human readable HTML code by using indentation
and better line breaks. Improve various HTML elements,
and trim several useless ones.
* New catman(8) utility, still somewhat experimental.
* Now includes a portable version of the OpenBSD mandoc regression
suite, see regress/regress.pl.1 for details.
--- REMOVED FUNCTIONALITY ---
* Operating systems that don't provide mmap(3) are no longer supported.
* Drop support for manpath(1). Even if your system has manpath(1),
it is simpler to use MANPATH_DEFAULT in configure.local for
operating system defaults, man.conf(5) for machine-specific
modifications, and ${MANPATH}, -m, and -M for user preferences
than to bother with the complexity of manpath(1).
* makewhatis(8) -p: No longer warn about missing MLINKS since these
are no longer needed for anything.
--- MINOR NEW FEATURES ---
* mdoc(7): Warn about invalid punctuation and content below NAME.
* mdoc(7): Warn about .Xr lacking the second argument (section).
* mdoc(7): Warn about violations of the rule "new sentence, new line".
* roff(7): Warn about trailing whitespace at the end of comments.
* mdoc(7): Improve rendering of double quotes.
* mdoc(7): Always do text production in the validator, never in the
formatters. Cleaner, simpler, shorter, helps NetBSD apropos(1)
and also makes -Ttree output more useful.
* -Ttree: Show metadata and some additional node flags.
New -Onoval output option to show the unvalidated tree.
--- RELIABILITY BUGFIXES ---
* man(1): Make "man -l" work with standard input from a pipe or file,
as long as standard output is a terminal.
* man(7): Fix out of bounds read access if a text node immediately
preceded the first .SH header.
* mdoc(7): Fix out of bounds read access for .Bl without a type
but with a width.
* mdoc(7): Fix out of bounds read access for .Bl -column starting
with a tab character instead of a child .It macro.
* mdoc(7): Fix syntax tree corruption leading to segfaults caused
by stray block end macros in nested blocks of mismatching type.
* man(1): Fix NULL dereference when the first of multiple pages
shown was preformatted.
* mdoc(7): Fix syntax tree corruption leading to NULL dereference
caused by partial implicit macros inside .Bl -column table cells.
* mdoc(7): Fix syntax tree corruption leading to NULL dereference
for macro sequences like .Bl .Bl .It Bo .El .It.
* mdoc(7): Fix syntax tree corruption leading to NULL dereference
caused by .Ta following a nested .Bl -column breaking another block.
* mdoc(7): Fix syntax tree corruption sometimes leading to NULL
dereference caused by indirectly broken .Nd or .Nm blocks.
* mdoc(7) -Thtml: Fix a NULL dereference for .Bl -column with 0 columns.
* mdoc(7): Fix NULL dereference in some specific cases of a
block-end macro calling another block-end macro.
* mdoc(7): Fix NULL dereference if the only child of the head
of the first .Sh was an empty in-line macro.
* eqn(7): Fix NULL dereference in the terminal formatter
for empty matrices and empty square roots.
* mdoc(7): Fix an assertion failure for a .Bd without a type that
breaks another block.
* mdoc(7): Fix an assertion failure that happened for some .Bl -column
lists containing a column width of "-4n", "-3n", or "-2n".
* mdoc(7): Fix an assertion failure caused by .Bl -column without .It
but containing eqn(7) or tbl(7) code.
* roff(7): Fix an assertion failure caused by \z\[u00FF] with -Tps/-Tpdf.
* roff(7): Fix an assertion failures caused by whitespace inside \o''
(overstrike) sequences.
* -Thtml: Fix an assertion failure caused by -Oman or -Oincludes of
excessive length.
--- PORTABILITY IMPROVEMENTS ---
* man(1): Do not mix stdio narrow and wide stream orientation
on stdout, which could cause output corruption on glibc.
* mandoc(1): Autodetect a suitable locale for -Tutf8 mode.
* ./configure: Autodetect whether PATH_MAX and O_DIRECTORY are defined.
* ./configure: Autodetect if nanosleep(3) needs -lrt.
* ./configure: Provide an ${LN} configuration variable.
* ./configure: Put compiler arguments that may contain -l at the end.
--- MINOR BUGFIXES ---
* mdoc(7): Fix SYNOPSIS output if the first child of .Nm is a macro.
* mdoc(7) -Thtml: Improve formatting of .Bl -tag with short tags.
* man(7) -Thtml: Preserve whitespace in .nf (nofill) mode.
* mandoc(1): Error out on invalid output options on the command line.
--- STRUCTURAL CHANGES, no functional change ---
* Redesign part of the mandoc_html(3) interfaces, making them much
easier to use and reducing the amount of code by a few hundred lines.
--- THANKS TO ---
* Michael Stapelberg (Debian) for designing the new mandocd(8)
and parts of the new catman(8), for release testing, and for a
number of patches and bug reports.
* Baptiste Daroussin (FreeBSD) for profiling the new makewhatis(8)
implementation and suggesting an algorithmic improvement which
more than doubled performance, and for a few bug reports.
* Ed Maste (FreeBSD) for an important patch improving reproducibility
of builds in makewhatis(8), and for a few bug reports.
* Theo Buehler (OpenBSD) for almost twenty important bug reports,
most of them found by systematic afl(1) fuzzing.
* Benny Lofgren, David Dahlberg, and in particular Vadim Zhukov
for crucial help in getting .Bl -tag CSS formatting fixed.
* Svyatoslav Mishyn (Crux Linux) for an initial version of the
patch to autodetect a suitable locale for -Tutf8 mode
and for release testing.
* Jason McIntyre (OpenBSD) for multiple useful discussions
and a number of bug reports.
* Sevan Janiyan (NetBSD) for extensive release testing and multiple
bug reports.
* Thomas Klausner and Christos Zoulas (NetBSD), Yuri Pankov (illumos),
and Leah Neukirchen (Void Linux) for release testing and bug reports.
* Ulrich Spoerlein (FreeBSD) for release testing.
* Alexander Bluhm, Andrew Fresh, Antoine Jacoutot, Antony Bentley,
Christian Weisgerber, Jonathan Gray, Marc Espie, Martijn van Duren,
Stuart Henderson, Ted Unangst, Theo de Raadt (OpenBSD), Abhinav
Upadhyay, Kamil Rytarowski (NetBSD), Aaron M. Ucko, Bdale Garbee,
Reiner Herrmann, Shane Kerr (Debian), Daniel Sabogal (Alpine Linux),
Carsten Kunze (Heirloom roff), Kristaps Dzonsons (bsd.lv),
Anton Lindqvist, Jan Stary, Jeremy A. Mates, Mark Patruck,
Pavan Maddamsetti, Sean Levy <attila@stalphonsos.com>, and
Tiago Silva for bug reports.
* Brent Cook, Marc Espie, Philip Guenther, Todd Miller (OpenBSD)
and Markus Waldeck for useful discussions.
* And as usual, OpenCSW for providing me with a Solaris 9/10/11
testing environment.
|
|
3.09 Sun 23 Oct 2016 20:24:06 BST
- Support Orgs (worthmine)
3.08 Sun 9 Oct 2016 21:56:23 BST
- Enconde/decode the key value pair to UTF-8 solves (jluis)
|
|
It supports both python 2 and 3 nowadays.
|
|
0.9.4.1
-------
* Pickling/deepcopy hotfix (#60)
|
|
see ebook-tools.
|
|
0.2.0
This release contains major bug fixes.
Among them crash bugs/security bugs.
Update recommended
|
|
|
|
- Release after pause-cleanup screwed up Swim dists
|
|
1.22 Tue Feb 14 23:23:08 CET 2017
- Add $YAML::Numify @perlpunk++
|
|
Changes:
* Included the to_xs arity patch needed for weird Rails compatibility
issue.
* Escaping newlines in attributes now.
* Allow method caching
|
|
|
|
This is required to update textproc/ruby-builder to 3.1.x, which is
incompatible with devel/ruby-activemodel32.
|
|
- Added lexers:
* AMPL
* TypoScript
* Varnish config
* Clean
* WDiff
* Flatline
* Silver
* HSAIL
* JSGF
* NCAR command language
* Extempore
* Cap'n Proto
* Whiley
* Monte
* Crystal
* Snowball
* CapDL
* NuSMV
* SAS, Stata
- Added the ability to load lexer and formatter classes directly from files
with the `-x` command line option and the `lexers.load_lexer_from_file()`
and `formatters.load_formatter_from_file()` functions.
- Added `lexers.find_lexer_class_by_name()`.
- Added new token types and lexing for magic methods and variables in Python
and PHP.
- Added a new token type for string affixes and lexing for them in Python, C++
and Postgresql lexers.
- Added a new token type for heredoc (and similar) string delimiters and
lexing for them in C++, Perl, PHP, Postgresql and Ruby lexers.
- Styles can now define colors with ANSI colors for use in the 256-color
terminal formatter.
- Improved the CSS lexer.
- Added "Rainbow Dash" style.
- Delay loading `pkg_resources`, which takes a long while to import.
|
|
Upstream changes:
$Revision: 2.88 $ $Date: 2016/11/29 23:29:23 $
! t/taint.t
Pulled: Fix test t/taint.t to pass when Encode::ConfigLocal is present
https://github.com/dankogai/p5-encode/pull/83
! Makefile.PL Unicode/Makefile.PL bin/enc2xs lib/Encode/Alias.pm
t/Aliases.t t/enc_data.t t/enc_module.t t/encoding.t t/jperl.t
Pulled: various fixes
https://github.com/dankogai/p5-encode/pull/82
! t/mime-header.t
Pulled: Fix test t/mime-header.t to pass on HP-UX 11.23/64 U
with perl v5.8.3
https://github.com/dankogai/p5-encode/pull/81
! t/Encode.t
Pulled: Extend COW tests for UTF-8 and Latin1
https://github.com/dankogai/p5-encode/pull/80
! Encode.xs Unicode/Unicode.xs
Pulled: Rmv impediment to compiling under C++11
https://github.com/dankogai/p5-encode/pull/78
! Encode.xs Unicode/Unicode.xs
Pulled: Do not use expressions in macros SvTRUE, SvPV, SvIV,
attr and attr_true
https://github.com/dankogai/p5-encode/pull/77
! Unicode/Unicode.xs t/magic.t
Pulled: Fix handling of undef, COW and magic scalar argument
in Unicode.xs
https://github.com/dankogai/p5-encode/pull/76
! Encode.xs encoding.pm
Fix 2 of 3 problems Steve Hay found.
1. C89 compiler failures (patch attached).
2. encoding.pm has changed slightly but has no $VERSION++
Message-Id: <CADED=K6ve_DAzRXPX=EsjtUDnZppAaw+BP1Ziw_fU5f32k+Wyg@mail.gmail.com>
|
|
categories.
|
|
of installation.
|
|
Bug-fix release.
|
|
|
|
M2R converts a markdown file including reST markups to a valid reST format.
Features:
* Basic markdown and some extensions
o inline/block-level raw html
o fenced-code block
o tables
o footnotes ([^1])
* Inline- and Block-level reST markups
o single- and multi-line directives (.. directive::)
o inline-roles (:code:`print(1)` ...)
o ref-link (see `ref`_)
o footnotes ([#fn]_)
o math extension inspired by recommonmark
* Sphinx extension
o add markdown support for sphinx
o mdinclude directive to include markdown from md or reST files
|
|
The fastest markdown parser in pure Python with renderer features, inspired by
marked.
Features:
* Pure Python. Tested in Python 2.6+, Python 3.3+ and PyPy.
* Very Fast. It is the fastest in all pure Python markdown parsers.
* More Features. Table, footnotes, autolink, fenced code etc.
|
|
* Add support for Python 3.6.
* Documentation hosted `on Read the Docs <https://cssselect.readthedocs.io/>`_
|
|
|
|
This package contains a tool to verify that the functions in the
SYNOPSIS of a man page match the actual implementation.
|
|
|
|
|
|
Simplify package.
Changes: not found.
LICENSE is now installed, github changelog looks like
bugfixes.
|
|
|
|
* Noteworthy changes in release 4.4 (2017-02-03) [stable]
** Bug fixes
sed could segfault when invoked with specific combination of newlines
in the input and regex pattern. [Bug introduced in sed-4.3]
|
|
This module implements utility functions for expanding embedded
variables in a string. Variable references are embedded in strings in
a similar form to the Bourne shell, namely, in the form $NAME or
${NAME}. In the former case, the NAME must consist of a capital letter
or underscore, and may be followed by zero or more capital letters,
digits or underscores. In the latter case, the name can consist of any
characters, but will be terminated by the first close brace character
'}'.
|
|
|
|
Upstream changes:
* Noteworthy changes in release 2.27 (2016-12-06) [stable]
** Bug fixes
grep no longer reports a false match in a multibyte, non-UTF8 locale
like zh_CN.gb18030, with a regular expression like ".*7" that just
happens to match the 4-byte representation of gb18030's \uC9, the
final byte of which is the digit "7".
[bug introduced in grep-2.19]
grep by default now reads all of standard input if it is a pipe,
even if this cannot affect grep's output or exit status. This works
better with nonportable scripts that run "PROGRAM | grep PATTERN
>/dev/null" where PROGRAM dies when writing into a broken pipe.
[bug introduced in grep-2.26]
grep no longer mishandles ranges in nontrivial unibyte locales.
[bug introduced in grep-2.26]
grep -P no longer attempts multiline matches. This works more
intuitively with unusual patterns, and means that grep -Pz no longer
rejects patterns containing ^ and $ and works when combined with -x.
[bugs introduced in grep-2.23] A downside is that grep -P is now
significantly slower, albeit typically still faster than pcregrep.
grep -m0 -L PAT FILE now outputs "FILE". [bug introduced in grep-2.5]
To output ':' and tab-align the following character C, grep -T no
longer outputs tab-backspace-':'-C, an approach that has problems if
run inside an Emacs shell window. [bug introduced in grep-2.5.2]
grep -T now uses worst-case widths of line numbers and byte offsets
instead of guessing widths that might not work with larger files.
[bug introduced in grep-2.5.2]
grep's use of getprogname no longer causes a build failure on HP-UX.
** Improvements
grep no longer reads the input in a few more cases when it is easy
to see that matching cannot succeed, e.g., 'grep -f /dev/null'.
* Noteworthy changes in release 2.26 (2016-10-02) [stable]
** Bug fixes
Grep no longer omits output merely because it follows an output line
suppressed due to encoding errors. [bug introduced in grep-2.21]
In the Shift_JIS locale, grep no longer mistakenly matches in the
middle of a multibyte character. [bug present since "the beginning"]
** Improvements
grep can be much faster now when standard output is /dev/null.
grep -F is now typically much faster when many patterns are given,
as it now uses the Aho-Corasick algorithm instead of the
Commentz-Walter algorithm in that case.
grep -iF is typically much faster in a multibyte locale, if the
pattern and its case counterparts contain only single byte characters.
grep with complicated expressions (e.g., back-references) and without
-i now uses the regex fastmap for better performance.
In multibyte locales, grep now handles leading "." in patterns more
efficiently.
grep now prints a "FILENAME:LINENO: " prefix when diagnosing an
invalid regular expression that was read from an '-f'-specified file.
* Noteworthy changes in release 2.25 (2016-04-21) [stable]
** Bug fixes
In the C or POSIX locale, grep now treats all bytes as valid
characters even if the C runtime library says otherwise. The
revised behavior is more compatible with the original intent of
POSIX, and the next release of POSIX will likely make this official.
[bug introduced in grep-2.23]
grep -Pz no longer mistakenly diagnoses patterns like [^a] that use
negated character classes. [bug introduced in grep-2.24]
grep -oz now uses null bytes, not newlines, to terminate output lines.
[bug introduced in grep-2.5]
** Improvements
grep now outputs details more consistently when reporting a write error.
E.g., "grep: write error: No space left on device" rather than just
"grep: write error".
|