X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=doc%2Fnews.texi;h=3375cd45745422e961a08961dd176dc4aee83dc2;hb=65ac1674ff0f9bd99bb29b5b8b1dc596b06216ce;hp=68661dbb3c2b8ac3a322a2ef3c0a9ac68118160b;hpb=ce54ce6d5524ca0da2bfd542100178ff870a609c;p=nncp.git diff --git a/doc/news.texi b/doc/news.texi index 68661db..3375cd4 100644 --- a/doc/news.texi +++ b/doc/news.texi @@ -3,7 +3,265 @@ See also this page @ref{Новости, on russian}. -@node Release 6.1.0 +@menu +* Release 7.3.0: Release 7_3_0. +* Release 7.2.1: Release 7_2_1. +* Release 7.2.0: Release 7_2_0. +* Release 7.1.1: Release 7_1_1. +* Release 7.1.0: Release 7_1_0. +* Release 7.0.0: Release 7_0_0. +* Release 6.6.0: Release 6_6_0. +* Release 6.5.0: Release 6_5_0. +* Release 6.4.0: Release 6_4_0. +* Release 6.3.0: Release 6_3_0. +* Release 6.2.1: Release 6_2_1. +* Release 6.2.0: Release 6_2_0. +* Release 6.1.0: Release 6_1_0. +* Release 6.0.0: Release 6_0_0. +* Release 5.6.0: Release 5_6_0. +* Release 5.5.1: Release 5_5_1. +* Release 5.5.0: Release 5_5_0. +* Release 5.4.1: Release 5_4_1. +* Release 5.4.0: Release 5_4_0. +* Release 5.3.3: Release 5_3_3. +* Release 5.3.2: Release 5_3_2. +* Release 5.3.1: Release 5_3_1. +* Release 5.3.0: Release 5_3_0. +* Release 5.2.1: Release 5_2_1. +* Release 5.2.0: Release 5_2_0. +* Release 5.1.2: Release 5_1_2. +* Release 5.1.1: Release 5_1_1. +* Release 5.1.0: Release 5_1_0. +* Release 5.0.0: Release 5_0_0. +* Release 4.1: Release 4_1. +* Release 4.0: Release 4_0. +* Release 3.4: Release 3_4. +* Release 3.3: Release 3_3. +* Release 3.2: Release 3_2. +* Release 3.1: Release 3_1. +* Release 3.0: Release 3_0. +* Release 2.0: Release 2_0. +* Release 1.0: Release 1_0. +* Release 0.12: Release 0_12. +* Release 0.11: Release 0_11. +* Release 0.10: Release 0_10. +* Release 0.9: Release 0_9. +* Release 0.8: Release 0_8. +* Release 0.7: Release 0_7. +* Release 0.6: Release 0_6. +* Release 0.5: Release 0_5. +* Release 0.4: Release 0_4. +* Release 0.3: Release 0_3. +* Release 0.2: Release 0_2. +@end menu + +@node Release 7_3_0 +@section Release 7.3.0 +@itemize + +@item +Ability to use directory with a bunch of files as a configuration. +@command{nncp-cfgdir} command appeared. + +@end itemize + +@node Release 7_2_1 +@section Release 7.2.1 +@itemize + +@item +Small optimizations in online commands. + +@end itemize + +@node Release 7_2_0 +@section Release 7.2.0 +@itemize + +@item +@command{nncp-trns} command appeared for manual transition packets creation. + +@item +If destination node of transitional packet has non empty @option{via} +route, then do not ignore, but use it. + +@item +Do not relay multicast packet to area message's originator, that +obviously has seen its own packet. + +@item +Much less memory usage during MTH hashing when offset is zero: when +packet is not resumed, but for example checked with @command{nncp-check} +command. + +@end itemize + +@node Release 7_1_1 +@section Release 7.1.1 +@itemize + +@item +Fixed failing directories fsync after @file{.seen} file creation. + +@end itemize + +@node Release 7_1_0 +@section Release 7.1.0 +@itemize + +@item +Multicasting areas feature appeared. Implemented merely by an additional +plain packet type with @command{nncp-toss}, @command{nncp-file} and +@command{nncp-exec} commands modification. + +@item +Fixed workability of @command{nncp-file} and @command{nncp-exec} +commands, that use temporary file (stdin and @option{-use-tmp}). + +@item +Fixed disappearing bad return code in @command{nncp-exec} command. + +@item +Fixed invalid @file{.hdr} generation when transitional packets are used. + +@item +@option{-all} option appeared in @command{nncp-rm} command, applying to +all the nodes at once. + +@item +@option{-cycle} option appeared in @command{nncp-check} command, looping +the check in infinite cycle. + +@item +@command{nncp-rm} command can take node alias name. + +@item +@command{nncp-pkt} can parse @file{.hdr} files. + +@end itemize + +@node Release 7_0_0 +@section Release 7.0.0 +@itemize + +@item +Minimal required Go version 1.13. + +@item +Merkle Tree-based Hashing with BLAKE3 (MTH) is used instead of BLAKE2b. +Because of that, there are backward @strong{incompatible} changes of +encrypted files (everything laying in the spool directory) and +@file{.meta} files of chunked transfer. + +Current implementation is far from being optimal: it lacks +parallelizable calculations and has higher memory consumption: nearly +512 KiB for each 1 GiB of file's data. Future performance and memory +size optimizations should not lead to packet's format change. But it is +still several times faster than BLAKE2b. + +@item +Resumed online downloads, because of MTH, require reading only of the +preceding part of file, not the whole one as was before. + +@item +@command{nncp-hash} utility appeared for calculating file's MTH hash. + +@item +BLAKE2 KDF and XOF functions are replaced with BLAKE3 in encrypted +packets. Lowering number of used primitives. Also, its encrypted +packet's header is used as an associated data during encryption. + +@item +MultiCast Discovery uses +@verb{|ff02::4e4e:4350|} address instead of @verb{|ff02::1|}. + +@item +@command{nncp-cfgenc} mistakenly asked passphrase three times during encryption. + +@item +@command{nncp-stat} reports about partly downloaded packets. + +@item +Updated dependencies. + +@end itemize + +@node Release 6_6_0 +@section Release 6.6.0 +@itemize + +@item +@command{nncp-daemon}, @command{nncp-call} and @command{nncp-caller} +commands wait for all background checksummers completion after +connection is finished. + +@item +Added possibility of address determining through multicast announcement +in local area network, so called MCD (MultiCast Discovery). + +@end itemize + +@node Release 6_5_0 +@section Release 6.5.0 +@itemize + +@item +Fixed segfault in @command{nncp-daemon} when SP handshake did not succeed. + +@item +Fixed possible bad return code ignoring in automatic tosser. + +@item +Fixed race during file descriptors closing when online protocol call is +finished, that could lead to write error of received packet fragment. + +@item +Kill all packet transmission progress bars in @command{nncp-daemon}, +@command{nncp-call} and @command{nncp-caller} when call is finished. + +@end itemize + +@node Release 6_4_0 +@section Release 6.4.0 +@itemize + +@item +Fixed possible race in online protocol, that lead to panic. + +@end itemize + +@node Release 6_3_0 +@section Release 6.3.0 +@itemize + +@item +Fixed possible panic while showing progress during online protocol. + +@end itemize + +@node Release 6_2_1 +@section Release 6.2.1 +@itemize + +@item +Three places in logs contained excess @code{%s}. + +@end itemize + +@node Release 6_2_0 +@section Release 6.2.0 +@itemize + +@item +Returned @command{nncp-caller}'s @option{-autotoss*} options workability. + +@item +Yet another logging refactoring and simplification. +Should be no visible differences to the end user. + +@end itemize + +@node Release 6_1_0 @section Release 6.1.0 @itemize @@ -12,9 +270,27 @@ Optimization: most commands do not keep opened file descriptors now. Previously you can exceed maximal number of opened files if you have got many packets in the spool directory. +@item +Optimization: do not close file descriptor of the file we download +online. Previously each chunk lead to expensive open/close calls. + +@item +Online downloaded files are saved with @file{.nock} (non-checksummed) +suffix, waiting either for @command{nncp-check}, or online daemons to +perform integrity check. + +@item +Optimization: files, that are not resumed, are checksummed immediately +during the online download, skipping @file{.nock}-intermediate step. + +@item +Ability to store encrypted packet's header in @file{.hdr} file, close to +the packet itself. That can greatly increase performance of packets +listing on filesystems with big block's size. + @end itemize -@node Release 6.0.0 +@node Release 6_0_0 @section Release 6.0.0 @itemize @@ -39,7 +315,7 @@ expectations of specified cron expression. @end itemize -@node Release 5.6.0 +@node Release 5_6_0 @section Release 5.6.0 @itemize @@ -61,7 +337,7 @@ supports modules. @end itemize -@node Release 5.5.1 +@node Release 5_5_1 @section Release 5.5.1 @itemize @@ -71,7 +347,7 @@ variables in @file{config} during installation. @end itemize -@node Release 5.5.0 +@node Release 5_5_0 @section Release 5.5.0 @itemize @@ -96,7 +372,7 @@ Updated dependencies. Minimal required Go version is 1.12. @end itemize -@node Release 5.4.1 +@node Release 5_4_1 @section Release 5.4.1 @itemize @@ -105,7 +381,7 @@ Fixed @code{SENDMAIL} variable usage during the build. @end itemize -@node Release 5.4.0 +@node Release 5_4_0 @section Release 5.4.0 @itemize @@ -119,7 +395,7 @@ implementation is included in tarball. @end itemize -@node Release 5.3.3 +@node Release 5_3_3 @section Release 5.3.3 @itemize @@ -131,7 +407,7 @@ Updated dependencies. @end itemize -@node Release 5.3.2 +@node Release 5_3_2 @section Release 5.3.2 @itemize @@ -142,7 +418,7 @@ forcefully disconnect. @end itemize -@node Release 5.3.1 +@node Release 5_3_1 @section Release 5.3.1 @itemize @@ -156,7 +432,7 @@ about each packet in the spool. @end itemize -@node Release 5.3.0 +@node Release 5_3_0 @section Release 5.3.0 @itemize @@ -186,7 +462,7 @@ SP-connection. That allows faster determining of connection unworkability. @end itemize -@node Release 5.2.1 +@node Release 5_2_1 @section Release 5.2.1 @itemize @@ -195,7 +471,7 @@ Fixed SP protocol error handling, sometimes causing program panic. @end itemize -@node Release 5.2.0 +@node Release 5_2_0 @section Release 5.2.0 @itemize @@ -213,7 +489,7 @@ Free disk space check during @command{nncp-bundle -rx} call. @end itemize -@node Release 5.1.2 +@node Release 5_1_2 @section Release 5.1.2 @itemize @@ -231,7 +507,7 @@ Explicit directories fsync-ing for guaranteed files renaming. @end itemize -@node Release 5.1.1 +@node Release 5_1_1 @section Release 5.1.1 @itemize @@ -240,7 +516,7 @@ Fixed workability of @command{nncp-file} with @option{-chunked 0} option. @end itemize -@node Release 5.1.0 +@node Release 5_1_0 @section Release 5.1.0 @itemize @@ -266,7 +542,7 @@ Ability to notify about successfully executed commands (exec) with @end itemize -@node Release 5.0.0 +@node Release 5_0_0 @section Release 5.0.0 @itemize @@ -314,13 +590,13 @@ Forbid any later GNU GPL version autousage @end itemize -@node Release 4.1 +@node Release 4_1 @section Release 4.1 @itemize @item Workability on GNU/Linux systems and Go 1.10 is fixed. @end itemize -@node Release 4.0 +@node Release 4_0 @section Release 4.0 @itemize @@ -356,13 +632,13 @@ Begin using of @code{go.mod} subsystem. @end itemize -@node Release 3.4 +@node Release 3_4 @section Release 3.4 @itemize @item @command{nncp-daemon} can be run as @command{inetd}-service. @end itemize -@node Release 3.3 +@node Release 3_3 @section Release 3.3 @itemize @@ -392,7 +668,7 @@ for @command{nncp-file} from 196 to 224. @end itemize -@node Release 3.2 +@node Release 3_2 @section Release 3.2 @itemize @item @@ -404,14 +680,14 @@ inside. NNCP accidentally was dependant on that bug. Explicit adding of archives. @end itemize -@node Release 3.1 +@node Release 3_1 @section Release 3.1 @itemize @item Ability to disable relaying at all using @verb{|-via -|} command line option. @end itemize -@node Release 3.0 +@node Release 3_0 @section Release 3.0 @itemize @@ -464,7 +740,7 @@ off by specifying zero value. @end itemize -@node Release 2.0 +@node Release 2_0 @section Release 2.0 @itemize @@ -483,7 +759,7 @@ identical to BLAKE2). @end itemize -@node Release 1.0 +@node Release 1_0 @section Release 1.0 @itemize @@ -517,19 +793,19 @@ command line argument, or environment variable. @end itemize -@node Release 0.12 +@node Release 0_12 @section Release 0.12 @itemize @item Sendmail command is called with @env{NNCP_SENDER} environment variable. @end itemize -@node Release 0.11 +@node Release 0_11 @section Release 0.11 @itemize @item @command{nncp-stat}'s command output is sorted by node name. @end itemize -@node Release 0.10 +@node Release 0_10 @section Release 0.10 @itemize @item @@ -537,7 +813,7 @@ command line argument, or environment variable. @file{SRC} path's element will be used by default. @end itemize -@node Release 0.9 +@node Release 0_9 @section Release 0.9 @itemize @item @@ -545,7 +821,7 @@ Fix @option{-rx}/@option{-tx} arguments processing in @command{nncp-call} command. They were ignored. @end itemize -@node Release 0.8 +@node Release 0_8 @section Release 0.8 @itemize @item @@ -553,7 +829,7 @@ Little bugfix in @command{nncp-file} command, where @option{-minsize} option for unchunked transfer was not in KiBs, but in bytes. @end itemize -@node Release 0.7 +@node Release 0_7 @section Release 0.7 @itemize @@ -593,14 +869,14 @@ Cryptographic libraries (dependencies) are updated. @end itemize -@node Release 0.6 +@node Release 0_6 @section Release 0.6 @itemize @item Small @command{nncp-rm} command appeared. @item Cryptographic libraries (dependencies) are updated. @end itemize -@node Release 0.5 +@node Release 0_5 @section Release 0.5 @itemize @item @@ -608,7 +884,7 @@ Trivial small fix in default niceness level of @command{nncp-file} and @command{nncp-freq} commands. @end itemize -@node Release 0.4 +@node Release 0_4 @section Release 0.4 @itemize @@ -628,13 +904,13 @@ is useful during @command{nncp-xfer} usage. @end itemize -@node Release 0.3 +@node Release 0_3 @section Release 0.3 @itemize @item Fixed compatibility with Go 1.6. @end itemize -@node Release 0.2 +@node Release 0_2 @section Release 0.2 @itemize