User-Visible Term::ANSIColor Changes
Term::ANSIColor 5.01 (2020-01-17)
Add support for NO_COLOR <https://no-color.org/> to suppress all
formatting sequences. Thanks, Andrea Telatin.
Document that aliases are expanded during alias definition, and thus
an alias defined in terms of another alias will not change if the
other alias is redefined.
Fix SYNOPSIS example of uncolor. The function returns a list, not a
reference to a list. Thanks, Joe Smith. (#131414)
Term::ANSIColor 5.00 (2020-01-05)
Drop support for Perl 5.6. The minimum supported version is now Perl
5.8. Perl 5.6 isn't supported by Travis-CI and is only spottily
tested, so true support is dubious.
Add suport for true color (24-bit color) via new rNNNgNNNbNNN and
on_rNNNgNNNbNNN attributes. These are only supported via the function
interface, not in the constant interface. Based on work by Lars
Dɪᴇᴄᴋᴏᴡ 迪拉斯. (#130083)
Allow color aliases to map to multiple attributes instead of only one
attribute. Based on work by Yanick Champoux.
Aliases may now be defined in terms of other aliases.
Document bad interactions between colored output to standard output
and standard error when standard output is line-buffered in a couple
of places in the manual and suggest setting autoflush() or EACHLINE
as a fix. (#121974)
Document how to support CLICOLOR <https://bixense.com/clicolors/> in
programs using Term::ANSIColor. (Due to backward compatibility and
non-output uses, there's no easy way to support CLICOLOR in the module
automatically.)
Update to rra-c-util 8.1:
* Update perlcritic configuration.
* Add SPDX-License-Identifier headers to all significant files.
Term::ANSIColor 4.06 (2016-10-28)
Add aliases ansi16 through ansi255 and on_ansi16 through on_ansi255
(plus the corresponding constants) for the grey and rgb colors so that
one can refer to all of the 256 ANSI colors with consistent names.
These are aliases; the colors returned by uncolor will still use the
grey and rgb names. (#118267)
Term::ANSIColor 4.05 (2016-03-20)
Color aliases are now restricted to ASCII alphanumerics, due to the
below change.
Delay loading of the Carp module and avoid using [:upper:], \w, and \d
in regular expressions to reduce the amount of memory this module
consumes. (Normally, I wouldn't worry about this, but this module is
very light-weight and can be useful even in highly space-constrained
environments, and the impact is slight.) Thanks, Nicolas R.
(#111552)
Provide a mailto address in bug tracking metadata, use the shorter
form of the RT bug tracker URL, and fix the license value to match the
new metadata specification. Rework Makefile.PL so that the munging
for older versions of ExtUtils::MakeMaker is less intrusive.
Term::ANSIColor 4.04 (2015-12-06)
Revert the build system back to ExtUtils::MakeMaker. This is the
build system actually used in Perl core, so this removes a level of
indirectly generated files and means that normal module development
tests the same build system used by Perl. Update Makefile.PL with the
additional metadata from the Module::Build build system.
For versions of Perl prior to 5.11, install the module into the Perl
core module directories, since in those versions site modules did not
take precedence over Perl core modules.
Rename NEWS to Changes to match the normal Perl convention.
Term::ANSIColor 4.03 (2014-03-23)
Switch the module build system to Module::Build, but still generate a
Makefile.PL file for backward compatibility and for the use of Perl
core.
Fix typo in SYNOPSIS (colorstrip example) and duplicated word.
Thanks, Olivier Mengué and David Steinbrunner. (#85480, #94006)
Skip POD and some other style tests unless doing automated or release
testing. Skip POD spelling, coverage, and Perl::Critic tests unless
doing author testing. Use the Lancaster Consensus environment
variables instead of RRA_MAINTAINER_TESTS. (#93474)
Add SEE ALSO reference to Win32::Console::ANSI. (#87295)
Term::ANSIColor 4.02 (2013-01-07)
When testing 256-color support, list the tag first in the import list
for compatibility with the Exporter from Perl 5.6.2. Thanks to David
Cantrell for the testing and debugging.
Add the minimum Perl version to the package metadata.
Term::ANSIColor 4.01 (2012-12-31)
Fix logic for skipping tests when Test::Warn is not installed.
Term::ANSIColor 4.00 (2012-12-30)
Add constants (with tag :constants256) and attributes for 256-color
emulators. Thanks, Kurt Starsinic.
Add support for custom color names configured with either a new
function, coloralias, or the ANSI_COLORS_ALIASES environment variable
as set during module load. Thanks, Stephen Tirlwall.
Only honor ANSI_COLORS_DISABLED if it is set to a true value.
The module now requires Perl 5.6 or later and makes use of Perl 5.6
features.
Replace the AUTOLOAD support for ANSI_COLORS_DISABLED with generation
of constant subs that check for ANSI_COLORS_DISABLED when they're
called. This fixes behavior if the constant were used before the
environment variable was set and then used again afterwards.
PUSHCOLOR now takes an array like all the other constant functions and
joins all arguments together before manipulating them, making behavior
more consistent in some edge cases.
$AUTOLOCAL now takes precedence over $AUTORESET, reversing the
previous behavior. It is also now properly documented.
Add a COMPATIBILITY section to the documentation collecting all
information about when features were introduced and adding the version
of Perl that they shipped with. Add appropriate version numbers to
the use statements in the SYNOPSIS.
Add a new generate-colors example script that can generate various
test and demonstration files, including for 256 colors and various
attributes. Remove the VT100 test files, which had an unclear
license. generate-colors can now generate better tests for everything
of significance to this package.
Term::ANSIColor 3.02 (2012-03-18)
In AUTOLOAD, only return pass-through behavior if the function that
was called was one of our constants, rather than turning every unknown
function in the Term::ANSIColor namespace into a passthrough join
function when colors are disabled.
Add the italic attribute and the ITALIC constant. Document that
support for it is rare.
Preserve an existing value of $@ when generating a constant sub and
restore it afterwards. Diagnose errors in creating the constant sub
and die instead of ignoring them.
Term::ANSIColor 3.01 (2011-07-20)
In colored, only interpret an initial array reference as a list of
colors, not any initial reference, allowing the colored function to
work properly on objects with stringification defined. Thanks, Revilo
Reegiles.
Warn in the documentation that attributes are not supported in and
will not work with Perl formats.
Term::ANSIColor 3.00 (2010-01-04)
Add bright versions of the basic eight foreground and background
colors using the 9x and 10x codes, supported by emulators with 16
color support.
Reword the explanation of bright and regular colors, and provide some
advice about which to use.
Reorganize the documentation and be clearer about the function
interface parameters.
Term::ANSIColor 2.02 (2009-08-30)
Add the new function colorvalid, which takes an attribute and returns
whether it's a known attribute.
Add FAINT as a synonym for DARK and export it when constants are
requested.
Update the terminal compatibility matrix to reflect that xterm now
supports blink.
Term::ANSIColor 2.01 (2009-07-04)
Add the new function colorstrip, which removes ANSI color codes from
strings. Thanks, Paul Miller.
When reporting errors for bad escape sequences in uncolor, don't
include the leading \e[ or trailing m in the error message.
Untaint $AUTOLOAD when generating constant subs, which is required by
Perl 5.10 and later running in taint mode. Thanks, Tim Bellinghausen.
Term::ANSIColor 2.00 (2009-02-28)
Add new functions PUSHCOLOR, POPCOLOR, and LOCALCOLOR, which maintain
a stack of colors using the constant syntax. PUSHCOLOR stores the
attributes being set on its internal stack, POPCOLOR returns to the
previous attribute set, and LOCALCOLOR surrounds its argument in
PUSHCOLOR and POPCOLOR. If $AUTOLOCAL is set, each sequence of color
constants will be implicitly preceded by LOCALCOLOR. This support was
contributed by openmethods.com voice solutions.
When AUTOLOAD is called to generate a constant sub and the environment
variable ANSI_COLORS_DISABLED is set, return the stringified arguments
rather than creating a sub. This allows colors to work later if
ANSI_COLORS_DISABLED is unset rather than making its effects
permanent. It also avoids adding a reset escape sequence when
$AUTORESET and ANSI_COLORS_DISABLED are both set.
Add faint as a synonym for dark.
Fix spelling and markup errors in the documentation and improve the
documentation of text attributes.
Term::ANSIColor 1.12 (2007-04-22)
Use the correct syntax for internal POD links in the documentation.
Document cyan and white as supported attributes.
Term::ANSIColor 1.11 (2006-06-22)
Clarify in the documentation the behavior of terminals when background
colors are set across newlines, and rewrite some of the examples to
avoid doing things that confuse the terminal.
Term::ANSIColor 1.10 (2005-08-21)
Fix $EACHLINE handling of lines consisting solely of "0".
Add terminal test files from Joe Smith to the distribution.
Term::ANSIColor 1.09 (2004-12-03)
Add compatibility information for Mac OS X Terminal to the terminal
emulators table. Thanks, Daniel Lindsley.
Term::ANSIColor 1.08 (2004-02-19)
Export DARK as a constant. This was missed when dark was added as a
supported attribute.
Term::ANSIColor 1.07 (2003-03-25)
Document the behavior of PuTTY, Windows telnet, and Cygwin OpenSSH in
the terminal emulators table.
Update the URL to the ECMA standard.
Term::ANSIColor 1.06 (2002-12-09)
Fix a typo in an L<> link in the documentation.
Term::ANSIColor 1.05 (2002-06-28)
Document the Windows consoles that don't work with this module.
Update the documentation formatting style.
Term::ANSIColor 1.04 (2001-07-10)
Add a new uncolor function, which takes a set of escape sequences and
returns a list of attribute names set by those escape sequences. This
is the opposite function as color.
If ANSI_COLORS_DISABLED is set in the environment, all of the
functions and constants in this module become no-ops that pass through
text without coloring it.
Add information about the relevant standards to the documentation.
Term::ANSIColor 1.03 (2000-08-06)
In the colored function, allow the attributes to be passed as an
initial array reference as well as a trailing list. When called with
that syntax, all subsequent arguments are taken as text to be colored.
Add the dark attribute.
Improve the documentation by including a table of supported attributes
on different terminal emulators in the documentation and documenting
whether diagnostics are fatal errors or warnings.
Install into the Perl library directory for Perl 5.6.0 or later, since
this module is now part of core.
Term::ANSIColor 1.02 (1998-11-27)
Call croak instead of die if the AUTOLOAD function to synthesize
constants fails.
Set ABSTRACT and AUTHOR in Makefile.PL to support PPD generation for
binary distributions or the Perl Resource Kits.
Term::ANSIColor 1.01 (1997-12-10)
Fix the call to carp when running under Perl versions later than
5.004_04, which no longer import Carp in strict.pm and thereby declare
the function at compile time.
Term::ANSIColor 1.00 (1997-11-29)
Correctly handle trailing delimiters when $EACHLINE is set.
Call croak instead of die if a caller uses an invalid attribute name,
since the error is really at the call site.
Add the correct rules to Makefile.PL to build a distribution.
Term::ANSIColor 0.09 (1997-02-17)
Initial public release. (Possibly. It's the oldest version available
on BackPan and dates back to when the "package" version was based on
the RCS revision of the ANSIColor.pm file.)