Wydawca NEWS -- history of user-visible changes. 2020-04-09 See the end of file for copying conditions. Please send Wydawca bug reports to . Version 3.1.90 (git) * Configuration file name changed to "wydawca.conf" Version 3.1, 2020-03-13 * Variable expansion syntax This release uses wordsplit v1.0-9-g7eaa3c4. Normal shell like expansion is allowed. This means that curly braces around variable names are optional and that the following forms are now allowed: ${VARIABLE:-WORD} "Use Default Values". If VARIABLE is unset or null, the expansion of WORD is substituted. Otherwise, the value of VARIABLE is substituted. ${VARIABLE:=WORD} "Assign Default Values". If VARIABLE is unset or null, the expansion of WORD is assigned to variable. The value of VARIABLE is then substituted. The assigned value remains in effect during expansion of the current string. ${VARIABLE:?WORD} "Display Error if Null or Unset". If VARIABLE is null or unset, the expansion of WORD (or a message to that effect if WORD is not present) is output to the current logging channel. Otherwise, the value of VARIABLE is substituted. ${VARIABLE:+WORD} "Use Alternate Value". If VARIABLE is null or unset, nothing is substituted, otherwise the expansion of WORD is substituted. * Handling of undefined variables Attempt to expand undefined variable causes fatal error. Use one of the advanced forms described above to handle such cases gracefully. * Variable names Several variable names have changed. Names that contained dash, now use underscore instead. These are: Old name Use this instead ------------------- ------------------- stat:check-failures stat:check_failures dest-dir dest_dir source-dir source_dir user:real-name user:real_name * $- is gone Trailing newlines are automatically removed from all variable expansions. Consequently, the $- marker (delete to the end of line) has been removed. Version 3.0, 2019-07-22 * Introduce loadable modules. Two modules are provided: mailutils, for mail notification using GNU mailutils, and logstat, for logging statistics. * Directory setup The new statement "create-directories" instructs wydawca to create missing source, destination and archive directories. Additional configuration statements are provided to configure ownership and modes of the created directories. * Bugfixes ** Avoid processing same triplet twice. ** Fix memory allocation bugs. Version 2.2 "HGY", 2013-01-01 * Implements upload protocol version 1.2 * Input file locations include start and end columns. * When available, uses inotify(7) to watch the input spools. The use of inotify allows wydawca to act immediately upon finished uploads without the need of external notifications. This makes the TCP-based notification unnecessary on GNU/Linux systems. Version 2.1 "KMB", 2010-01-06 * Incompatible changes The following meta-variables are renamed: Old name New name ---------------+--------------------- triplet:full triplet:ls:full triplet:upload triplet:ls:upload triplet:dist triplet:ls:dist triplet:sig triplet:ls:sig triplet:dir triplet:ls:dir The expansions of {triplet:ls:full} and {triplet:ls:upload} include trailing newline. This means that if your config contains one of these variables on a line by itself, you will need to add $- at the end of that line, to suppress an extra newline. See "listings" in subsection 4.14.4 "Event Notification", for an example. To update your configuration, use the following (extended) sed expression: s/\{(triplet):(full|upload)\}/{\1:ls:\2}$-/g s/\{(triplet):(dist|sig|dir)\}/{\1:ls:\2}/g * Distribution verification. The new keyword `check-script' defines a shell script to verify the submitted tarball. See the documentation, section 4.12 "Distribution Verification", for details. * New configuration statements sql default { config-file "file"; config-group "grp"; } The `config-file' statement specifies the SQL configuration file to use. The `config-group' statement indicates the group in that file to read. The defaults for both statements depend on the underlying database implementation. Currently only MySQL is supported, so the defaults are "/etc/my.cnf" for "file", and "client" for "group". These options can be used to store security-sensitive information in another file, and thus to relax permission requirements for wydawca.rc. * New meta-variables email:admin Full email address of the systems administrator. email:owner Full email address of the project administrator. email:user Full email address of the user who did the upload. Note: `email:user' is not to be confused with `user:email'. The latter is expanded to email address only, while the former yields full email address, i.e. an address with a personal part, e.g.: "Ty Coon" * New meta-construct The special construct $-, when used in message texts, causes removal of the character following it. Its intended use is primarily to remove the following newline character (like dnl in m4). Version 2.0, 2009-12-22 * Configuration file support rewritten from scratch. New configuration file is well structured. * Message templates can include timers. A timer is a special variable that is replaced by the actual amount of time (real or CPU), spent while performing a certain task. * New `daemon' mode The daemon mode allows to update submission target directories in real time. In this mode, Wydawca can receive upload notifications from GNU Rush. * TCP wrapper support. Access to the wydawca socket can be controlled using TCP wrappers. * Wydawca runs as a non-privileged user. * Spool locking. * Support for GPG signing of outgoing messages. * Submissions can be uploaded via anonymous FTP. * Uploaders are not required to have an account on wydawca server. * Per-spool notifications. Mail notifications can be configured on a per-spool basis. * Mail notifications can be sent to arbitrary email addresses. * Testsuite. Version 1.2, 2009-01-22 * Implicit signature archivation. When archivation of `file' is requested by `archive: file' statement in the directive file, the file `file.sig' will also be archived. This behavior can be disabled by setting `archive-signatures no' in the wydawca configuration file. * Symlink removal When handling `symlink: src dst' statement, existing `dst' is silently removed, if it is a symbolic link. If it exists, but is not a symlink an error is signalled and operation is aborted. * Bugfixes Fixed handling of standalone directives. Version 1.1, 2009-01-17 * Log detailed statistics only if at least one counter is not zero. * Handling of the `symlink' directive. If the symlink target exists, it is silently removed and the new link is created. This behavior is compatible with that of ftp.gnu.org. Version 1.0, 2008-08-23 First release. ---------------------------------------------------------------------- Copyright information: Copyright (C) 2007-2020 Sergey Poznyakoff Permission is granted to anyone to make or distribute verbatim copies of this document as received, in any medium, provided that the copyright notice and this permission notice are preserved, thus giving the recipient permission to redistribute in turn. Permission is granted to distribute modified versions of this document, or of portions of it, under the above conditions, provided also that they carry prominent notices stating who last changed them. Local variables: mode: outline paragraph-separate: "[ ]*$" eval: (add-hook 'write-file-hooks 'time-stamp) time-stamp-start: "changes. " time-stamp-format: "%:y-%02m-%02d" time-stamp-end: "\n" end: