Changelog
All notable changes to the timelimit project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
1.9.4 - 2026-07-27
Fixes
- Rust implementation:
- correct the Cargo
categoriesfield of the binary crate
- correct the Cargo
Additions
- Rust implementation:
- add the
timelimit::limit_smol::Limit.run_with_io()method to communicate with the child process - add the
docs.rslinks to both crates - add more integration tests for both crates
- add the
1.9.3 - 2026-07-24
Additions
- Add a Rust implementation: the
timelimitlibrary crate and thetimelimit-clibinary one. - Add some MkDocs-based documentation.
Other changes
- Switch to SPDX copyright and license tags.
- Switch to yearless copyright notices.
- Use
reuse6.x, switch from.reuse/dep5toREUSE.tomlfor the exceptions.
1.9.2 - 2021-05-16
Fixes
- Happy 20th birthday, timelimit!
- Fix a bug with propagating a SIGKILL or SIGSTOP signal on at least some Linux/glibc systems
1.9.1 - (withdrawn)
1.9.0 - 2018-04-14
Fixes
- Drop an unused preprocessor conditional
- Mark some function parameters as used when some platform features are not present
- Define
_POSIX_C_SOURCEand_XOPEN_SOURCEby default
Additions
- Add the
--featurescommand-line option that always lists the "timelimit" feature (with the program version) and also lists the "subsecond" feature (version 1.0) if available - Autodetect platform features instead of specifying them in the Makefile
- Use the FSF TAP shell library
- Add the build-and-test-all tool to, well, test builds with and without the options supported on the current platform
Other changes
- Slightly change the format of the usage error message
1.8.2 - 2017-11-20
Fixes
- Allow the
install(1)invocations to be overridden
1.8.1 - 2016-04-15
Additions
- Install the tests as documentation examples
Other changes
- Remove the
$Ringlettags from the source files - Use the C99 bool type
- Use the C99 const keyword and in-place variable declarations
1.8 - 2011-04-13
Fixes
getopt()returns -1 on error, notEOF
Additions
- Add a simple test suite compatible with Perl's TAP framework
- Add the ability to specify signals by name and the
-lcommand-line option to list the available signal names. Debian: #621775
1.7 - 2010-09-30
Fixes
- Report the actual error condition if the waitpid() call fails
- Do not allow SIGCHLD to interrupt waitpid() after the kill
Additions
- Implement microsecond wait time precision using
setitimer(2)Debian: #597824
Other changes
- Remove the
warn()function that is never used even on platforms that lack theerr(3)family of functions - Remove the
cvs_idstring
1.6 - 2010-06-26
Fixes
- Rename the
ChangeLogtoNEWS, since that's what it is - Honor
CPPFLAGS
1.5 - 2009-10-30
Additions
- Add the
__dead2definition for no-return functions - Add the
-pflag to propagate information about the child process being terminated by a signal
1.4 - 2008-11-12
Fixes
- Correct options parsing on GNU systems - do not let timelimit grab the option arguments passed to the executed program Debian: #505140, reported by John Hasler jhasler@debian.org
1.3 - 2008-09-03
Fixes
- Fix the
$RingletVCS keyword in the source files
1.2 - 2008-08-22
Fixes
- Define
_GNU_SOURCEto properly use the Linux header files
Other changes
- Return the child process exit code instead of always exiting with 0
1.1 - 2007-12-07
Fixes
- Move the manual page from section 8 to section 1
1.0 - 2007-11-28
Fixes
- Attempt to create the installation directories
- Style fixes to the manual page
Additions
- Add an
installtarget to the Makefile - Build and install the gzipped manual page, too
- Add a two-clause BSD copyright to all files
Other changes
- Remove the
TARGETSfile that was never used as intended - Break the web-visible documentation out of the source tree
1.0pre3 - 2001-06-09
Fixes
- Actually add the
-qflag to thegetopt()arguments (ARGH!) - Use
envopts[]for time/sig variable setting (both env and cmdline) - Warn when no time/sig arguments specified
- Silence a few gcc warnings
- Removed
CC,CFLAGSinitial settings from Makefile
1.0pre2 - 2001-05-21
Additions
- Added the
-qflag to not output messages about signals sent to the child process - Added
timelimit.8manpage [roam/alpha] - Added killtime/warntime/killsig/warnsig defaults
Other changes
- Changed the
execv()call toexecvp(), soPATHis searched for the specified command, as suggested by alpha - Changed the default compiler to gcc, as suggested by alpha
1.0pre1 - 2001-05-16
Started
- First rolled-together prerelease.