]> git.cameronkatri.com Git - mandoc.git/blobdiff - NEWS
Fix a regression caused by the insertion of two new tokens,
[mandoc.git] / NEWS
diff --git a/NEWS b/NEWS
index 1bc72236d7a364ed6b136b3a92abde2daa34bc3b..ddf2faa595355cbdadc2e5bb52e86476e76d36eb 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,7 +1,240 @@
-$Id: NEWS,v 1.27 2017/08/05 13:34:39 schwarze Exp $
+$Id: NEWS,v 1.35 2019/10/13 14:45:17 schwarze Exp $
 
 This file lists the most important changes in the mandoc.bsd.lv distribution.
 
+Changes in version 1.14.6, released on XXX XXX, 2019
+
+    --- MAJOR NEW FEATURES ---
+ * man(1) -T ascii: slowly start implementing tagging support for man(7)
+   pages: tag alphabetic arguments of .IP, .TP, and .TQ macros
+ * -T html: wrap text and phrasing elements in paragraphs unless
+   already contained in flow containers; never put them directly
+   into sections.  This helps to format paragraphs with the CSS
+   class selector .Pp.
+    --- MINOR NEW FEATURES ---
+ * roff(7): implement the .break request (break out of a .while loop)
+ * if messages are shown and output is printed without a pager,
+   display a heads-up on stderr at the end because otherwise, users
+   may easily miss the messages
+ * mandoc.css: support prefers-color-scheme: dark
+    --- RELIABILITY BUGFIXES ---
+ * man(1): do not segfault if /tmp/ is not writeable
+ * tbl(7): fix a crash when the last column is only reached by spans
+ * tbl(7) -T ascii: fix a NULL pointer access on empty data cells
+ * tbl(7) -T ascii: fix a NULL pointer access on a line next to a short row
+ * -T html: fix an assertion failure caused by .ft in rare situations
+ * roff(7): fix a rare case of writing one byte past the end of the input buffer
+    --- MINOR FUNCTIONAL IMPROVEMENTS ---
+ * man(1) -h: for pages lacking a SYNOPSIS, show the NAME section
+ * man(1): when the first argument starts with a digit, optionally
+   followed by a letter, and at least one more argument follows,
+   interpret the first argument as a section name even when additional
+   characters follow after the digit and letter
+ * man(1): with a specific section requested, try harder to find
+   the best match; use this order of preference:
+   1. The section in both the directory name and the file name matches exactly.
+   2. The section in the file name matches exactly.
+   3. The section in the directory name matches exactly.
+   4. Neither of them matches exactly.
+ * man(1): if no tags were generated at all, unlink(2) the empty
+   tags file as soon the condition can be detected and do not pass
+   it to less(1)
+ * makewhatis(8): handle both dangling symlinks and .so links
+   in manual page directories more gracefully
+ * man.cgi(8): for invalid queries and for valid queries returning
+   no result, return the appropriate 40x status code rather than 200
+ * tbl(7) -T utf8: improved rendering of horizontal lines
+ * mdoc(7) -T html: format .Nd with <span> rather than <div>
+ * mdoc(7) -T lint: do not warn about $Mdocdate: October 13 2019 $ without an actual date
+ * mdoc(7) -T lint: do not complain about function types of the
+   form "ret_type (fname)(args)", but otherwise check names more strictly
+    --- MINOR BUGFIXES ---
+ * man(1): do the search for each name independently, and show the
+   results in the order of the command line argument
+ * man(1): when asking for a single manual page by name, prefer
+   file name matches over .Dt/.TH matches over first NAME matches
+   over later NAME matches, but do not change the ordering for
+   apropos(1) nor for man -a
+ * roff(7): when calling an empty macro, do not clobber existing arguments
+ * mdoc(7) .Bl -column: parse Macro in .It "word<tab>word" Ta word Macro<eol>
+ * -T html: remove some spurious line breaks, in particular inside <pre>
+    --- STRUCTURAL IMPROVEMENTS ---
+ * move some code out of the giant main() into separate functions
+   doing one well-defined task each
+ * clearly separate parser state (struct curparse) and formatter state
+   (struct outstate), don't mix them in the same struct
+ * in the HTML formatter, assert(3) that no HTML nesting violation occurs
+ * let html_close_paragraph() close any phrasing context
+    --- THANKS TO ---
+ * Marc Espie (OpenBSD) for a patch and for suggesting a feature impovement
+ * Anton Lindqvist (OpenBSD) for a patch
+ * Armin Besirovic for a contribution to mandoc.css
+ * Lorenzo Beretta for three bug reports
+   and for suggesting two feature impovements
+ * Anthony Bentley (OpenBSD) for three bug reports
+   and for suggesting a feature impovement
+ * Michael Stapelberg (Debian) and Jan Stary for a bug report
+   and for suggesting a feature impovement
+ * Stephen Gregoratto for two bug reports
+ * Brian Callahan, Klemens Nanni (OpenBSD), Jason Thorpe (NetBSD),
+   Yuri Pankov (FreeBSD), and Edgar Pettijohn for bug reports
+ * Theo Buehler (OpenBSD), Leah Neukirchen (Void Linux), Colin Watson (Debian),
+   and John Gardner for suggesting feature impovements
+ * TJ Townsend (OpenBSD) for help with CSS
+ * Christos Zoulas (NetBSD) for a report regarding portability
+ * Michal Nowak for reporting four code style issues
+
+Changes in version 1.14.5, released on March 10, 2019
+
+    --- MAJOR NEW FEATURES ---
+ * apropos(1): improve POSIX compliance by accepting case-insensitive
+   extended regular expressions by default
+ * new -O tag[=term] output option (open a page at the definition of a term)
+ * tbl(7) -T html: spanning and horizontal and vertical alignment of cells
+ * tbl(7) -T html: draw lines on the edges of table cells
+ * tbl(7) -T utf8: render lines with the Unicode box drawing characters
+ * mandoc is now able to handle the manual pages of the groff package.
+    --- MINOR NEW FEATURES ---
+ * -T html: new option -O toc (table of contents)
+ * -T html: second argument to -O man to support local and remote links
+ * mdoc(7) .Bd -centered now fills the text contained in it
+ * man-ext .SY and .YS macros (synopsis block)
+ * man-ext .TQ macro (tagged paragraph without vertical space before it)
+ * tbl(7) \& explicit alignment indicator
+ * roff(7) .shift, .while, and .return requests
+ * roff(7) .char request (output glyph definition)
+ * roff(7) .nop request (no operation)
+ * roff(7) .ft request: handle the CB, CI, and CR fonts
+ * roff(7) .if c conditional (character available)
+ * roff(7) \\$@ escape sequence (insert all macro arguments, quoted)
+ * roff(7) \*(.T predefined string (interpolate output device name)
+ * roff(7) \[charNNN] escape sequence (for printable ASCII characters)
+ * roff(7) \# escape sequence (line continuation with comment)
+    --- HTML OUTPUT SYNTAX CORRECTIONS ---
+ * Render .br and \p as <br/>, not as an empty <div>.
+ * Render .Pp and .PP as <p> and automatically close it when needed.
+ * Stop writing empty list elements for non-compact .Bl -tag lists.
+ * Do not put <p> inside <a> if .UR or .MT contain .PP.
+ * Implement tooltips purely in CSS rather than abusing title= attributes.
+    --- MINOR FUNCTIONAL IMPROVEMENTS ---
+ * many improvements to the handling of fill and no-fill mode
+ * tbl(7): better column widths in the presence of horizontal spans
+ * several minor improvements to escape sequence handling
+ * several minor improvements to manual font handling
+ * portability: autodetect need for _GNU_SOURCE or _OPENBSD_SOURCE
+ * portability: autodetect whether less(1) supports the -T option
+ * large numbers of bugfixes of diverse kinds
+    --- STRUCTURAL IMPROVEMENTS ---
+ * Disentangle eqn(7) and tbl(7) from other parser header files,
+   and clean up some parser data structures.
+ * Substantially simplify error and warning message infrastructure.
+    --- THANKS TO ---
+ * John Gardner for crucial help implementing tooltips in CSS.
+ * Alexander Bluhm, Raphael Graf, Ted Unangst (OpenBSD)
+   and Daniel Sabogal (Alpine Linux) for patches.
+ * Anthony Bentley and Jason McIntyre (OpenBSD) for documentation patches,
+   suggesting new features, bug reports, and useful discussions.
+ * Kyle Evans and Baptiste Daroussin (FreeBSD) for minor patches.
+ * Pali Rohar for suggesting multiple new features and for reporting
+   several bugs and missing features.
+ * Klemens Nanni (OpenBSD) for suggesting multiple new features.
+ * Kristaps Dzonsons (bsd.lv), Marc Espie (OpenBSD), Adam Kalisz,
+   and Laura Morales for suggesting new features.
+ * Wolfram Schneider and Yuri Pankov (FreeBSD) for reporting missing features.
+ * Edward Tomasz Napierala (FreeBSD) for suggesting a feature improvement.
+ * Thomas Klausner (NetBSD) and Sevan Janiyan (SmartOS)
+   for bug reports and release testing.
+ * Bryan Steele, Janne Johansson, Kurt Mosiejczuk, Mike Belopuhov, Theo
+   Buehler, Todd Miller (OpenBSD), Andreas Gustafsson, Christos Zoulas,
+   Robert Elz (NetBSD), Kurt Jaeger (FreeBSD), Fabio Scotoni, Kelvin
+   Sherlock, Mark Harris, Orestis Ioannou, Raf Czlonka, and Sean Farrell
+   for bug reports.
+ * Ulrich Spoerlein (FreeBSD), Leah Neukirchen (Void Linux),
+   Matej Cepl (openSUSE), and Jan Stary (MacOS X) for release testing.
+ * Brian Callahan and Stuart Henderson (OpenBSD) for help
+   with the OpenBSD groff port.
+ * Bertrand Garrigues, Branden Robinson, Ralph Corderoy, and Werner
+   Lemberg (GNU troff) for checking groff patches.
+ * Scott Cheloha, Theo de Raadt (OpenBSD)
+   and Natanael Copa (Alpine Linux) for useful discussions.
+
+Changes in version 1.14.4, released on August 8, 2018
+
+    --- MAJOR NEW FEATURES ---
+ * In ASCII output, render mathematical symbols and greek letters
+   as transliterations conveying the characters' meanings rather
+   than trying to imitate their shape.  Consequently, such characters
+   can now be used in portable manual pages.  All the same, please
+   limit their use to contexts where they really matter, for example
+   when showing complicated mathematical formulae.
+ * First steps towards better support for small screens in HTML
+   output (responsive design): avoid most style= attributes, in
+   particular all hard-coded indentations and column widths, and
+   provide a better mandoc.css style sheet with a @media query,
+   using em units throughout, and avoiding redundancy in selectors.
+ * Better HTML output with some more fitting HTML elements, eliminating
+   needless class= attributes, and avoiding various HTML syntax errors
+   (element nesting, URL-fragment syntax, duplicate id= attributes).
+    --- MINOR NEW FEATURES ---
+ * When a man(1) argument contains a slash, imply -l like in man-db.
+ * Use TIOCGWINSZ to reduce the default -Owidth and -Oindent during
+   interactive use on terminals narrower than 79 columns.
+ * Generated PostScript files are now more than 50% smaller.
+ * Terminal rendering of eqn(7) is improved in several respects.
+ * Simplified and nicer output from the mdoc(7) .Lk macro, formatting
+   all links in-line, even long ones.
+ * roff(7) \n+ and \n- numerical register auto-increment and -decrement
+ * roff(7) .nr optional third argument (auto-increment step size)
+ * Autodetect in ./configure whether the compiler can use -W and -static,
+   allowing to build on Solaris 10 and 11 without any configure.local.
+    --- RELIABILITY BUGFIXES ---
+ * Only activate UTF-8 output when the user really selected UTF-8,
+   not some other multibyte character encoding.
+ * Prevent excessive .ll arguments from generating infinite output.
+ * Fix out of bounds accesses to parse buffers that could happen when
+   using renamed or user defined macros after roff(7) conditionals.
+ * Avoid an assertion failure in certain .Bl -column lists.
+ * Avoid a NULL pointer access on deroff() failure after '.SS ""'.
+ * Fix a segfault that could be triggered by two invalid .Dt macros.
+ * Fix two syntax errors in generated PDF files.
+ * Properly state the page size in generated PostScript files.
+ * Close a memory leak caused by missing gzclose(3).
+ * Fix misformatting of man(7) documents lacking .SH macros
+   in PostScript and PDF output.
+ * And many minor bugfixes.
+    --- THANKS TO ---
+ * Marc Espie (OpenBSD) for implementing the size reduction of
+   PostScript files, one additional patch for code simplification,
+   and two bug reports.
+ * Theo Buehler (OpenBSD) for a bugfix patch,
+   and Theo de Raadt (OpenBSD) for checking it.
+ * John Gardner for more than a dozen suggestions regarding HTML output.
+ * Mike Williams for teaching me how to use %%DocumentMedia and
+   setpagedevice in PostScript files.
+ * Werner Lemberg (groff) for feedback on mdoc(7) language changes.
+ * Colin Watson (man-db) for feedback on man-db semantics.
+ * Jason McIntyre (OpenBSD) for lots of feedback and suggestions
+   on diagnostic messages and on the documentation.
+ * Thomas Klausner (NetBSD) for suggesting two new style messages
+   and one new feature, for two bug reports, and for release testing.
+ * Leah Neukirchen (Void Linux) for suggesting a new style message,
+   five bug reports, and release testing.
+ * Anthony Bentley (OpenBSD) for reporting multiple bugs and missing
+   features.
+ * Paul Irofti (OpenBSD) and Nate Bargmann for suggesting new features.
+ * Michael Stapelberg (Debian) for bug reports and release testing.
+ * Christian Weisgerber, Jonathan Gray, Stuart Henderson,
+   Ted Unangst (OpenBSD), Takeshi Nakayama (NetBSD),
+   Anton Lazarov, Jakub Klinkovsky, Jan Stary, Jesper Wallin,
+   Will Backmam, and Wolfgang Mueller for bug reports.
+ * Sevan Janiyan (NetBSD) for additions to lib.in.
+ * George Brown for suggesting code simplifications.
+ * David Coppa, Igor Sobrado (OpenBSD), and Alexander Kuleshov
+   for documentation improvements.
+ * Laura Morales and Raf Czlonka for questions resulting in better
+   documentation.
+ * Yuri Pankov (illumos) for release testing.
+
 Changes in version 1.14.3, released on August 5, 2017
 
     --- BUG FIXES ---