[ANNOUNCE] nano-5.7 is released

Benno Schulenberg <[email protected]> Thu, 29 Apr 2021 13:09:31 +0200
Newsgroups gmane.editors.nano.announce,gmane.editors.nano.devel
Message-ID <[email protected]>
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--===============6306075197176679292==
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature";
 boundary="QGWDNJP2Hw29QvsX2PhuJBBnL32CXMBEZ"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--QGWDNJP2Hw29QvsX2PhuJBBnL32CXMBEZ
Content-Type: multipart/mixed; boundary="ECSx4OP0tfLpxULq8XVt8MzXA0TyLrpWd"

--ECSx4OP0tfLpxULq8XVt8MzXA0TyLrpWd
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable


2021.04.29 - GNU nano 5.7  "To=C8=9Bi ceilal=C8=9Bi arau c=C3=A2mpurile"

=E2=80=A2 The output of --constantshow (without --minibar) is more stable=
=2E
=E2=80=A2 When opening multiple buffers and there is an error message, th=
is
  message is shown again upon first switch to the relevant buffer.
=E2=80=A2 The position and size of the indicator now follow actual lines,=

  instead of visual lines when in softwrap mode, meaning that the
  size of the indicator can change when scrolling in softwrap mode.


GNU nano is a simple and easy-to-use editor for on the terminal.
  https://nano-editor.org/
  https://nano-editor.org/manual.html

A concise overview of nano's shortcut keystrokes:
  https://nano-editor.org/cheatsheet.html

The tarball and its signature are here:
  https://nano-editor.org/dist/v5/nano-5.7.tar.xz
  https://nano-editor.org/dist/v5/nano-5.7.tar.xz.asc


Specific issues that were addressed in this release:
  https://savannah.gnu.org/bugs/?60104  (memory leak when undoing uninden=
ting)
  https://savannah.gnu.org/bugs/?60172  (memory leak when pasting with sy=
ntax)
  https://savannah.gnu.org/bugs/?60262  (invalid Unicodes were mispresent=
ed)
  https://savannah.gnu.org/bugs/?60263  (some codes were misjudged as inv=
alid)
  https://savannah.gnu.org/bugs/?60278  (unwritable DOS file got Unix for=
mat)

  https://savannah.gnu.org/bugs/?60315  (wrong message when ^G was reboun=
d)
  https://savannah.gnu.org/bugs/?60393  (rare cursor misplacement on Open=
BSD)
  https://savannah.gnu.org/bugs/?60429  (toggling line numbers could be s=
low)
  https://savannah.gnu.org/bugs/?60436  (use-after-free for an offscreen =
undo)
  https://savannah.gnu.org/bugs/?60456  (CR was miscolored as valid)


Changes between v5.6.1 and v5.7:
--------------------------------

Mike Frysinger (1):
      syntax: tcl: support Expect scripts too

Hussam al-Homsi (1):
      syntax: c: make the highlighting of '#include <...>' more compliant=


Benno Schulenberg (63):
      build: drop the check for two functions that we don't use any more
      build: fix compilation for --enable-tiny plus --enable-multibuffer
      build: fix compilation when configured with --disable-multibuffer
      build: fix compilation when configured with --enable-tiny
      bump version numbers and add a news item for the 5.7 release
      chars: implement mblen() ourselves, for efficiency
      chars: implement mbtowc() ourselves, for more efficiency
      chars: work around a UTF-8 bug in glibc, to display invalid codes r=
ight
      chars: work around the wrong private-use-character widths on OpenBS=
D
      display: avoid determining twice from and until where to draw each =
row
      display: make the output of --constantshow less jittery
      editing: prevent the pointer for the top row from becoming dangling=

      feedback: upon first switch to a buffer, show its error message (if=
 any)
      files: always register the format, also when the file is unwritable=

      files: create a new buffer earlier, so that error messages can be s=
tored
      files: when Mac format has been detected, stay with it
      gnulib: pull in the fix for a build problem on older Debian
      gnulib: update to its current upstream state
      indicator: adjust the size to the number of visible lines, not chun=
ks
      input: accept Unicode codes for non-characters as valid, since they=
 are
      memory: do not allocate space for multidata when it's already alloc=
ated
      memory: fix an off-by-one error to free also the last line in a gro=
up
      memory: prevent a use-after-free when the user respects a lock file=

      oops: that doesn't work -- you can't break out of two for loops at =
once
      options: retire the obsolete 'smooth', 'morespace', and 'nopauses'
      po: update translations and regenerate POT file and PO files
      softwrap: avoid time-consuming computations, to burden large files =
less
      startup: do not crash when trying to open a device or directory
      startup: do not store an error message in the record of another buf=
fer
      startup: save the compiled file-matching regexes, to avoid recompil=
ing
      startup: show the helpful message only when ^G has not been rebound=

      syntax: c: colorize also labels that contain digits, and uncolorize=
 colon
      syntax: po: improve the coloring of format specifiers
      syntaxes: replace [[:space:]] with [[:blank:]] to exclude carriage =
return
      tweaks: adjust and improve one comment, and frob another
      tweaks: adjust two comments, and reshuffle two fragments
      tweaks: avoid a warning on newer compilers, by writing an extra byt=
e
      tweaks: avoid calling extra_chunks_in() when not softwrapping
      tweaks: avoid converting a file name for more than will fit on scre=
en
      tweaks: avoid parsing a multibyte character twice
      tweaks: condense three comments, drop another, and rewrap a line
      tweaks: drop unneeded braces and adjust indentation after previous =
change
      tweaks: elide a call of strlen() for every row
      tweaks: elide a function that is now basically just two lines
      tweaks: elide an unneeded resetting NULL call to wctomb()
      tweaks: elide a small function that is used just once
      tweaks: elide the pointless is_valid_unicode() function
      tweaks: elide two more instances of useless character copying
      tweaks: improve a couple of comments
      tweaks: morph a function into what it is actually used for
      tweaks: normalize the indentation after an earlier change
      tweaks: put the most likely condition first, for a quicker return
      tweaks: reduce the maximum character length from six bytes to four
      tweaks: remove a misplaced (and nested) #ifdef
      tweaks: rename a variable, away from an abbreviation
      tweaks: rename a variable, for contrast with another
      tweaks: reshuffle a comment, and put the main extension first
      tweaks: reshuffle a fragment of code, to prepare for the next chang=
e
      tweaks: reshuffle two conditions, to have the most unlikely one fir=
st
      tweaks: set the file format only when unset, so it doesn't need sav=
ing
      tweaks: shorten a comment and trim an #ifdef
      tweaks: simplify two fragments of code
      tweaks: simplify two fragments of code, eliding useless character c=
opying

--=20

Benno


--ECSx4OP0tfLpxULq8XVt8MzXA0TyLrpWd--

--QGWDNJP2Hw29QvsX2PhuJBBnL32CXMBEZ
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEv9AJBh5TUFKtDfIVDSjU0qCs6IQFAmCKk/QACgkQDSjU0qCs
6IS/yBAAilkUCMXV7YDmnzPMT8gQuvQb4yGf/2fIvrg/kHQZbp4rHi0pk2n5wpYA
bhtJ/YXH5P4QAYUkXC5d2bkMKpWAJfShZ3sf7gLffRZBcifqBTn7CVEr31IleDy1
ubvYscECG/e//EPd/XKQRVxLR1z5CpNcZXTD5vaVQlv2lybXS41DjIEiNHQPxDLv
zZSXqCRCiIE0hu/4QVGRWfPpFCOp5mZS8drkM+u2j8rNHgB1DSQsMveYItrL9hbG
jOIKKQbOWEvROSMxTFx0bHCAAk1JuVbsvixul2ktZo6DeQjpt4eF3yYF7vz0cP+L
xjv2mHU4jde4NIIvj6jcCuArQZytgX1UNuSde38+OWHxkwmqo2dkGxGBObWwCKn/
gEPY8sD4U/Y+IZyQ8/vxXtYmdO/xlGP4xZv57laWJZkU2T8HALh3xZPejc5l8505
lCszEXH9n+0dtpe+EUqZ6jPs/lY94tKNKAhEdPgcgYWFcpeNSNHnkkCrVZV8Gd1J
JnegbN2DUIVm1k+2pDygj3zhvpJ7n7th0WiYijvQqOpCQ2Am98N/sUdtdfKAN3d6
yziF5nqUsrkL16GCBcv2OzdkjiNGtjmy6sX5gRFky4IGcaW8HLosWu5Eza/4/i5p
jsrYMhEGiPV9D1y8siGgBZ3iKZHrtFdvnSshlEJO2gTS9BGSuEg=
=rJWZ
-----END PGP SIGNATURE-----

--QGWDNJP2Hw29QvsX2PhuJBBnL32CXMBEZ--


--===============6306075197176679292==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW5mby1uYW5v
IG1haWxpbmcgbGlzdApJbmZvLW5hbm9AZ251Lm9yZwpodHRwczovL2xpc3RzLmdudS5vcmcvbWFp
bG1hbi9saXN0aW5mby9pbmZvLW5hbm8K

--===============6306075197176679292==--