]> git.cameronkatri.com Git - mandoc.git/blobdiff - NEWS
Do not confuse .Bl -column lists that just broken another block
[mandoc.git] / NEWS
diff --git a/NEWS b/NEWS
index 217686017f0a130a7d7529bd82ae3482f2d197f8..fbcdfc2ad3cf85eeb19da9c73fb671e879cb5759 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,8 +1,182 @@
-$Id: NEWS,v 1.1 2013/10/01 00:24:00 schwarze Exp $
+$Id: NEWS,v 1.8 2014/12/13 13:43:47 schwarze Exp $
 
 This file lists the most important changes in the mdocml.bsd.lv distribution.
 
-Changes in version 1.12.2, released on Oktober 1, 2013
+Changes in version 1.13.2, released on December 13, 2014
+
+    --- MAJOR NEW FEATURES ---
+ * Include an implementation of man(1), the manual page viewer.
+ * Unified set of command line option, each one supported by all
+   command names, including new options -a (format all), -c (no
+   pager), -h (synopsis only), and -w (list filenames).
+ * Support the MANPAGER and PAGER environment variables.
+ * Support gzip'ed manuals by the whole toolset, even as .so targets.
+ * Support UTF-8 and Latin-1 input by the whole toolset, delete preconv(1).
+ * Switch the default output mode from -Tascii to -Tlocale.
+ * Improve -Tascii output for Unicode escape sequences.
+ * Let the -Thtml output mode produce polyglot HTML5.
+ * Many improvements for eqn(7), in particular in-line equations,
+   MathML output in -Thtml mode, and much improved terminal formatting.
+    --- PORTABILITY IMPROVEMENTS ---
+ * Change the build sequence to the usual ./configure; make; make install.
+ * Support ./configure.local for build customizations.
+ * Autodetect wchar, sqlite3, and manpath support.
+ * Provide a fallback version of fts(3) for systems lacking it.
+ * Support choosing alternative binary and manual names.
+    --- MINOR NEW FEATURES ---
+ * Rudimentary implementation of the e, x, and z tbl(7) layout
+   modifiers to equalize, maximize, and ignore the width of columns.
+ * Implement font modifiers in tbl(7) layouts.
+ * Allow comma-separated options in the tbl(7) options line.
+ * Parse and ignore the .pl (page length) roff(7) request.
+ * Implement .An -[no]split for the mdoc(7) -Thtml output mode.
+ * Support bold italic font in PostScript and PDF output.
+ * Warn about commas in function arguments and parentheses in function names.
+ * Warn about botched .Xr ordering and punctuation below SEE ALSO.
+ * Warn about AUTHORS sections without .An macros.
+ * Warn about attempts to call non-callable macros.
+ * New developer documentation manual page mandoc_headers(3).
+    --- BUGFIXES ---
+ * Fix read buffer overrun sometimes triggered by trailing whitespace.
+ * Fix read buffer overrun triggered by certain invalid \H sequences.
+ * Fix NULL pointer access triggered by .Bl without any arguments.
+ * Fix NULL pointer access triggered by .It Nm Fo without .Fc.
+ * Fix NULL pointer access triggered by .Sh Xo .Sh without .Xc.
+ * Fix NULL pointer access triggered by missing .Nm.
+ * Fix an assertion triggered by .It right after .El.
+ * Fix an assertion triggered by .Ec without preceding .Eo.
+ * Fix an assertion triggered by .Sm or .Db with multiple arguments.
+ * Fix assertion failures triggered by very large width arguments.
+ * Fix a division by zero in the roff(7) parser.
+ * Prevent negative arguments to .ll from causing integer underflow.
+ * Correctly autodetect source format even when .Dd is preceded by .ll.
+ * Multiple fixes with respect to .Bd and .Bl -offset and -width.
+ * Many bugfixes with respect to scaling units.
+ * Multiple fixes with respect to delimiter handling by in-line macros.
+ * Multiple fixes with respect to .Pf.
+ * Make \c work properly in no-fill mode.
+ * Stricter syntax checking of Unicode character names.
+    --- THANKS TO ---
+ * Kristaps Dzonsons for rewriting the eqn(7) parser, implementing
+   HTML5 and MathML output, and various other code contributions.
+ * Jonathan Gray (OpenBSD) for extensive testing with afl (the
+   American Fuzzy Lop security fuzzer) resulting in many bug reports.
+ * Anthony Bentley (OpenBSD), Baptiste Daroussin (FreeBSD), Daniel
+   Dickman, Doug Hogan, Jason McIntyre, Theo de Raadt (OpenBSD),
+   and Martin Natano for source code patches.
+ * Carsten Kunze (Heirloom troff), Daniel Levai (Slackware),
+   Garrett D'Amore (illumos), Giovanni Becchis, Matthew Dempsky,
+   Stuart Henderson, Ted Unangst, Todd Miller (OpenBSD), Thomas
+   Klausner (NetBSD), Ulrich Spoerlein (FreeBSD), Justin Haynes,
+   Marcus Merighi, Sebastien Marie, Steffen Nurpmeso and Theo Buehler
+   for bug reports.
+
+Changes in version 1.13.1, released on August 10, 2014
+
+    --- MAJOR NEW FEATURES ---
+ * A complete apropos(1)/makewhatis(8)/man.cgi(8) suite
+   based on SQLite3 is now included.
+ * The roff(7) parser now provides an almost complete implementation
+   of numerical expressions.
+ * Warning and error messages have been improved in many ways.
+   Almost all fatal errors were downgraded to normal errors and some
+   even to warnings.  Almost all messages now mention the macro where
+   the issue is detected and many indicate the workaround employed.
+   The mandoc(1) manual now includes a list explaining all messages.
+    --- MINOR NEW FEATURES ---
+ * The roff(7) parser now supports the .ami (append to macro with
+   indirectly specified name), .as (append to user-defined
+   string), .dei (define macro with indirectly specified name),
+   .ll (line length), and .rr (remove register) requests.
+ * The roff(7) parser now supports string comparison and numerical
+   conditionals in the .if and .ie requests.
+ * The roff parser now fully supports the \B (validate numerical
+   expression) and partially supports the \w (measure text width)
+   escape sequences.
+ * The terminal formatter now supports the \: (optional line break)
+   escape sequence.
+ * The roff parser now supports expansion of user-defined strings
+   involving indirect references.
+ * The roff(7) parser now handles some pre-defined read-only
+   number registers that occur in the pod2man(1) preamble.
+ * For backward compatibility, the mdoc(7) parser and formatters
+   now support the obsolete macros .En, .Es, .Fr, and .Ot.
+ * The mdoc(7) formatter non partially supports .Bd -centered.
+ * tbl(7) now handles leading and trailing vertical lines.
+ * The build system now provides fallback versions of strcasestr(3)
+   and strsep(3) for systems lacking them.
+ * The mdoc(7) manual now explains how various standards
+   supported by the .St macro are related to each other.
+    --- BUGFIXES ---
+ * In the roff(7) parser, several bugs were fixed with respect
+   to closing conditional blocks on macro lines.
+ * Parsing of roff(7) identifiers and escape sequences was improved
+   in multiple respects.
+ * In the mdoc(7) parser, the handling of defective document
+   prologues was improved in multiple ways.
+ * The mdoc(7) parser no longer skips content before the first section
+   header, and it no longer deletes non-.% content from .Rs blocks.
+ * In the mdoc(7) parser, a crash was fixed related to weird .Sh headers.
+ * In the mdoc(7) parser, handling of .Sm with missing or invalid
+   arguments was corrected.
+ * In the mdoc(7) parser, trailing punctuation at the end of partial
+   implicit macros no longer triggers end-of-sentence spacing.
+ * In the terminal formatter, two crashes were fixed: one triggered by
+   excessive indentation and another by excessively long .Nm arguments.
+ * In the terminal formatter, a floating point rounding bug was
+   fixed that sometimes caused an off-by-one error in indentation.
+ * In the UTF-8 formatter, rendering of accents, breakable hyphens,
+   and non-breakable spaces was corrected.
+ * In the HTML formatter, encoding of special characters was
+   corrected in multiple respects.
+ * In the mdoc(7) formatter, rendering of .Ex and .Rv was
+   improved for various edge cases.
+ * In the mdoc(7) formatter, handling of empty .Bl -inset item
+   heads was improved.
+ * In the man(7) formatter, some bugs were fixed with respect
+   to same-line detection in the context of .TP and .nf macros,
+   and the indentation of .IP and .TP blocks was improved.
+ * The mandoc(3) library no longer prints to stderr.
+    --- THANKS TO ---
+   Abhinav Upadhyay (NetBSD), Andreas Voegele, Anthony Bentley (OpenBSD),
+   Christian Weisgerber (OpenBSD), Havard Eidnes (NetBSD), Jan Stary,
+   Jason McIntyre (OpenBSD), Jeremie Courreges-Anglas (OpenBSD),
+   Joerg Sonnenberger (NetBSD), Juan Francisco Cantero Hurtado (OpenBSD),
+   Marc Espie (OpenBSD), Matthias Scheler (NetBSD), Pascal Stumpf (OpenBSD),
+   Paul Onyschuk (Alpine Linux), Sebastien Marie, Steffen Nurpmeso,
+   Stuart Henderson (OpenBSD), Ted Unangst (OpenBSD), Theo de Raadt (OpenBSD),
+   Thomas Klausner (NetBSD), and Ulrich Spoerlein (FreeBSD)
+   for reporting bugs and missing features.
+
+Changes in version 1.12.3, released on December 31, 2013
+
+ * In the mdoc(7) SYNOPSIS, line breaks and hanging indentation
+   now work correctly for .Fo/.Fa/.Fc and .Fn blocks.
+   Thanks to Franco Fichtner for doing part of the work.
+ * The mdoc(7) .Bk macro got some addititonal bugfixes.
+ * In mdoc(7) macro arguments, double quotes can now be quoted
+   by doubling them, just like in man(7).
+   Thanks to Tsugutomo ENAMI for the patch.
+ * At the end of man(7) macro lines, end-of-sentence spacing
+   now works.  Thanks to Franco Fichtner for the patch.
+ * For backward compatibility, the man(7) parser now supports the
+   man-ext .UR/.UE (uniform resource identifier) block macros.
+ * The man(7) parser now handles closing blocks that are not open
+   more gracefully.
+ * The man(7) parser now ignores blank lines right after .SH and .SS.
+ * In the man(7) formatter, reset indentation when leaving a block,
+   not just when entering the next one.
+ * The roff(7) .nr request now supports incrementing and decrementing
+   number registers and stops parsing the number right before the
+   first non-digit character.
+ * The roff(7) parser now supports the alternative escape sequence
+   syntax \C'uXXXX' for Unicode characters.
+ * The roff(7) parser now parses and ignores the .fam (font family)
+   and .hw (hyphenation points) requests and the \d and \u escape
+   sequences.
+ * The roff(7) manual got a new ESCAPE SEQUENCE REFERENCE.
+
+Changes in version 1.12.2, released on Oktober 5, 2013
 
  * The mdoc(7) to man(7) converter, to be called as mandoc -Tman,
    is now fully functional.
@@ -31,6 +205,7 @@ Changes in version 1.12.2, released on Oktober 1, 2013
  * For mandoc developers, we now provide a tbl(3) library manual and
    gmdiff, a very small, very simplistic groff-versus-mandoc output
    comparison tool.
+ * Provide this NEWS file.
 
 Changes in version 1.12.1, released on March 23, 2012
 
@@ -129,13 +304,16 @@ Changes in version 1.11.1, released on April 4, 2011
  * The earlier libroff, libmdoc, and libman soup have been merged into
    a single library, libmandoc, which manages all aspects of parsing
    real manuals, from line-handling to tbl(7) parsing.
- * Beyond this structural change, initial eqn(7) functionality is in
-   place.  For the time being, this is limited to the recognition of
-   equation blocks; future version of mdocml will expand upon this
-   framework.
  * As usual, many general fixes and improvements have also occurred.
    In particular, a great deal of redundancy and superfluous code has
    been removed with the merging of the backend libraries.
+ * see also the changes in 1.10.10
+
+Changes in version 1.10.10, March 20, 2011, NOT released
+
+ * Initial eqn(7) functionality is in place.  For the time being,
+   this is limited to the recognition of equation blocks;
+   future version of mdocml will expand upon this framework.
 
 Changes in version 1.10.9, released on January 7, 2011
 
@@ -149,19 +327,23 @@ Changes in version 1.10.9, released on January 7, 2011
 
 Changes in version 1.10.8, released on December 24, 2010
 
- * Significant improvements merged from OpenBSD downstream, including
-    - many new roff(7) components,
-    - in-line implementation of troff's soelim(1),
-    - broken-block handling,
-    - overhauled error classifications, and
-    - cleaned up handling of error conditions.
- * Also overhauled the -Thtml and -Txhtml output modes.  They now display
+ * Overhauled the -Thtml and -Txhtml output modes.  They now display
    readable output in arbitrary browsers, including text-based ones like
    lynx(1).  See HTML and XHTML manuals in the DOCUMENTATION section
    for examples.  Attention: available style-sheet classes have been
    considerably changed!  See the example.style.css file for details.
    Lastly, libmdoc and libman have been cleaned up and reduced in size
    and complexity.
+ * see also the changes in 1.10.7
+
+Changes in version 1.10.7, December 6, 2010, NOT released
+
+ Significant improvements merged from OpenBSD downstream, including:
+ * many new roff(7) components,
+ * in-line implementation of troff's soelim(1),
+ * broken-block handling,
+ * overhauled error classifications, and
+ * cleaned up handling of error conditions.
 
 Changes in version 1.10.6, released on September 27, 2010
 
@@ -193,12 +375,16 @@ Changes in version 1.10.4, released on July 12, 2010
  * Lots of features developed during both "Summer of Code" and the
    OpenBSD c2k10 hackathon:
  * minimal "ds" roff(7) symbols are supported
- * "Bk" mdoc(7) support
  * beautified SYNOPSIS section output
- * variable font-width and paper-size support in mandoc(1) -Tps output
  * acceptance of scope-block breakage in mdoc(7)
  * clarify error message status
  * many minor bug-fixes and formatting issues resolved
+ * see also changes in 1.10.3
+
+Changes in version 1.10.3, June 29, 2010, NOT released
+
+ * variable font-width and paper-size support in mandoc(1) -Tps output
+ * "Bk" mdoc(7) support
 
 Changes in version 1.10.2, released on June 19, 2010