3.9.0 -> 3.9.1
- Fix off-by-one error which can lead to crash when copytruncate is used.
3.8.9 -> 3.9.0
- Fix crash when using long dateformat. [nmerdan]
- Add support for %H dateformat. [czchen]
- Fix regression introduced in 3.8.9 when when rotating multiple
logs when one of them is missing.
- In the debug mode, do not skip the code-path which handles the case when
the last rotation does not exist. [Sergey Vidishev]
- Show more precise description when "log does not need rotating".\
- Add new -l option to log verbose output to file. The file is overwritten
on every logrotate execution.
- Allow rotation of sparse files with copytruncate.
PKgsrc changes :
Switched from old Makefile to new building procedure, using autogen,
configure and (g)make, which was introduced in version 3.8.8.
The new patch file contains a workaround to get the new building procedure
working.
Changelog is :
3.8.8 -> 3.8.9
- Add new directive "createolddir" and "nocreateolddir". These directives
can be used to create the directory specified by olddir with particular
"mode", "owner" and "group".
- Continue with rotation even when first log from logset is removed
during the rotation.
- Fix crash on BSD systems introduced in 3.8.8 caused by different qsort_r
function. Function qsort is now used instead.
- Fix potential buffer overflow in usage of strncat function.
- Fix compilation with musl-libc.
- Add experimental 'renamecopy' directive to allow 'olddir' on different
physical device. See the "man logrotate" for more information.
3.8.7 -> 3.8.8
- Add support for building using autotools/automake. Using "./autogen.sh",
"./configure" and "make" is now preferred way how to build logrotate.
Old Makefile remains available, but it is deprecated and will be removed
in the future. Please report any problem related to new build system.
- Add support for systems which do not support fork (use vfork instead)
and madvise.
- Fix bug when wrong log file has been removed in case of dateext and
dateformat %d-%m-%Y.
- Do not expect that the name of root account is 'root'.
- Do not stop rotation with an error when olddir and log file
are on different devices and copy or copytruncate is used.
- Return an error code when parent directory of log does not exist,
"su" directive is not used, logrotate is running as root and missingok
is not specified. [vcizek]
- Prepend error printed by compression program with the log name even when
the compression program exits with zero exit code.
pkgsrc change : took over maintainership.
Via Nils Ratusznik in PR pkg/48311.
pkgsrc changes:
---------------
FETCH_USING=curl to fetch over https.
Upstream changes:
-----------------
Changelog :
3.8.6 -> 3.8.7
- Fixed --force/-f option handling together with "size" directive
(3.8.5 regression).
- Use "logrotate_tmp_t" context for SELinux tests and if this context does
not exist, skip SELinux related tests.
3.8.5 -> 3.8.6
- Fixed memory corruption caused by rotation directory which does not
exist with "sharedscripts" together with "prerotate" script.
Based on PR pkg/48073 by Nils Ratusznik.
(drop FETCH_USING=curl, put distfile on ftp.n.o).
3.8.4 -> 3.8.5
- Improved rotation during daylight saving time and between timezone
changes.
- Fixed ACL setting problem caused by ext3 erroneously reporting ENOSYS
instead of ENOSUP.
- Do not continue with rotation if state file is corrupted.
- Make logrotate.status creation atomic.
- Allow "hourly" rotation. See manpage for more information.
- Use "/bin/echo" in tests. Fixes tests execution in Dash.
- Do no try to parse config files bigger than 16MB.
- Improved manpage consistency and formatting.
- Fix race condition between acl_set_fd() and fchmod().
From Nils Ratusznik per PR pkg/47800
pkgsrc changes:
---------------
Update MASTER_SITES. Now requires curl to fetch on https mirror.
Upstream changes:
-----------------
3.8.3 -> 3.8.4
- Added --version command line option
- Disable ACL tests if logrotate is not compiled WITH_ACL support or if
ACLs are not supported by the system running tests
- Disable SELinux tests if logrotate is not compiled WITH_SELINUX support
or if SELinux is not supported by the system running tests
- Fixed bug which prevented skipping particular log file config
if the config contained errors.
- Fixed skipping of configs containing firstaction/lastaction scripts
with '}' character in case of error before these scripts.
- Support also 'K' unit for *size directives.
- Added preremove option to let admin to do something with the old logs
before they are removed by logrotate.
- Fixed possible loop in tabooext parsing.
- Move code to set SELinux context before compressLogFile calls to create
compressed log files with the proper context.
- Call prerotate/postrotate script only for really rotated files in
nosharedscripts mode (as stated in man page).
PR pkg/47581 by Nils Ratusznik.
3.8.2 -> 3.8.3
- Fixed setting "size" bigger than 4GB on 32bit architectures
- Do not overwrite mode set by "create" option when using ACL. "create"
directive is now not mixed up with ACLs. If you use "create" in config
file and log file has some ACLs set, ACLs are not kept and are
overwritten by the mode set in "create" directive.
- Mode argument in "create" directive can be omitted. Only owner and group
is set in this case. Check man page for more info.
Changes:
- show error and ignore config if '{' is not present after log files declaration
- support whitespaces in compressoptions directive
- support for tilde expansion in config files
- fixed mail sending for 'mailfirst', 'dateext' and 'delaycompress' combination
- do not use gzip/gunzip from /usr/local on Solaris
- Do not include alloca.h on NetBSD, since alloca() is declared in stdlib.h there
The logrotate utility is designed to simplify the administration of
log files on a system which generates a lot of log files. Logrotate
allows for the automatic rotation compression, removal and mailing of
log files. Logrotate can be set to handle a log file daily, weekly,
monthly or when the log file gets to a certain size. Normally,
logrotate runs as a daily cron job.