summaryrefslogtreecommitdiff
path: root/ANNOUNCE
blob: b93dfe8458f1d36a728c85fac4402719842a59bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
[[ maintainer: send to platform-testers for betas/RCs;
               info-gnu for releases ]]

groff 1.23 release candidate 2, 1.23.0.rc2, is now available from GNU's
alpha FTP site.  You may download the distribution archive from there.

  https://alpha.gnu.org/gnu/groff/

What is groff?
==============

groff (GNU roff) is a typesetting system that reads plain text input
files that include formatting commands to produce output in PostScript,
PDF, HTML, or DVI formats or for display to a terminal.  Formatting
commands can be low-level typesetting primitives, macros from a
supplied package, or user-defined macros.  All three approaches can be
combined.

A reimplementation and extension of the typesetter from AT&T Unix, groff
is present on most POSIX systems owing to its long association with Unix
manuals (including man pages).  It and its predecessor are notable for
their production of several best-selling software engineering texts.
groff is capable of producing typographically sophisticated documents
while consuming minimal system resources.

  https://www.gnu.org/software/groff/

Changes
=======

groff 1.23.0.rc2 represents two years of development since the previous
release candidate, and four since the last release.

Headline features nominated by our development community include:
  * a new 'man' macro, "MR", for formatting man page cross references;
  * hyperlinked text in terminals via the ECMA-48 OSC 8 escape sequence;
  * a new 'rfc1345' macro package, contributed by Dorai Sitaram,
    enabling use of RFC 1345 mnemonics as groff special characters;
  * a new 'sboxes' macro package, contributed by Deri James, enabling
    'ms' documents to place shaded and/or bordered rectangles underneath
    any groff page elements (PDF output only);
  * 'mom' 2.5, a macro package contributed by Peter Schaffter;
  * the 'ms' package's new strings to assist subscripting;
  * Italian localization, including hyphenation patterns and macro
    package string translations, thanks to Edmond Orignac; and
  * new hyphenation patterns for English.

For more on these and other feature changes, see "News" below.

Much attention has been given to fixing bugs, improving diagnostic
messages, and correcting and expanding documentation.  The previous
release shipped with three automated unit tests; this one ships with
over 130 unit and regression tests.

As of this writing, per the GNU Savannah bug tracker, the groff project
has resolved 379 problems as fixed for the 1.23.0 release.  Some of the
bugs we've corrected were over 30 years old.

Classifying these issues by type and the component of the project to
which they apply, we find the following.

  Type                              Component
  ----                              ---------
  Build/installation           35   Core                           95
  Crash/unresponsive           10   Driver: grohtml                 4
  Documentation                95   Driver: gropdf                  7
  Feature change               37   Driver: grops                   2
  Incorrect behavior          115   Driver: grotty                  4
  Lint                         12   Driver: others/general          4
  Rendering/cosmetics          10   Font: devpdf                    1
  Test                          4   Font: devps                     3
  Warning/suspicious behavior  61   Font: others/general            4
                                    General                        39
                                    Macros: man                    32
                                    Macros: mdoc                   10
                                    Macros: me                     36
                                    Macros: mm                     16
                                    Macros: mom                     9
                                    Macros: ms                     27
                                    Macros: other/general          25
                                    Preprocessor: eqn               3
                                    Preprocessor: grn               3
                                    Preprocessor: pic               5
                                    Preprocessor: preconv           7
                                    Preprocessor: refer             3
                                    Preprocessor: tbl              15
                                    Preprocessor: others/general    5
                                    Utilities                      17

Another way of capturing the amount of revision is as follows.

$ git diff --stat 1.22.4 HEAD | tail -n 1
 935 files changed, 117550 insertions(+), 69438 deletions(-)

Obtaining groff
===============

Here are the compressed sources and a GPG detached signature[*].
  [[ maintainer: insert .tar.gz URL ]]
  [[ maintainer: insert .tar.gz.sig URL ]]

[[ maintainer: include the following for final release:
Use a mirror for higher download bandwidth.
  https://ftpmirror.gnu.org/groff/groff-1.23.0.tar.gz
  https://ftpmirror.gnu.org/groff/groff-1.23.0.tar.gz.sig
]]

Here are the SHA-1 and SHA-256 checksums.

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  groff-1.23.0.rc2.tar.gz
yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy  groff-1.23.0.rc2.tar.gz

The SHA-256 checksum is encoded in Base64 instead of the hexadecimal
form that most checksum tools default to.

[*] Use a .sig file to verify that the corresponding file (without the
    .sig suffix) is intact.  First, be sure to download both the .sig
    file and the corresponding archive.  Then, verify the archive.

      gpg --verify groff-1.23.0.rc2.tar.gz

    If that command fails because you don't have the required public
    key, you can import it.

      gpg --keyserver keys.gnupg.net --recv-keys [[ maintainer: keyID ]]

    Re-run the 'gpg --verify' command subsequently.

News
====

[[ maintainer: insert output of
   "sed -n '/VERSION 1\.23/{:X;n;/VERSION 1\.22/q;p;bX}' NEWS" ]]