Upgrade notes for s6-rc
As a general rule, if you change major versions, for instance if you upgrade from 0.1.0.0 to 0.2.1.2, you need to recompile your service databases, because the binary format is not guaranteed stable across major version changes. You can keep your compiled service databases across minor and bugfix version changes.
What has changed in s6-rc
in 0.7.0.0
- skalibs dependency bumped to 2.15.1.0.
- execline dependency bumped to 2.9.9.2.
- s6 dependency bumped to 2.15.1.0.
- New s6-rc reload command.
- The database format has changed! To safely upgrade a running s6-rc installation:
- Compile your current live database from the same source using the latest s6-rc-compile
- Run the latest s6-rc-format-upgrade with the newly obtained database
- Run the latest s6-rc-update with the same database
- Your system is now running the latest version of s6-rc; you can delete your old database.
- s6-rc-set-change has a different option syntax.
in 0.6.1.1
- execline dependency bumped to 2.9.9.1.
in 0.6.1.0
- skalibs dependency bumped to 2.15.0.0.
- execline dependency bumped to 2.9.9.0.
- s6 dependency bumped to 2.15.0.0.
in 0.6.0.0
- skalibs dependency bumped to 2.14.5.1.
- execline dependency bumped to 2.9.8.1.
- s6 dependency bumped to 2.14.0.1.
- The macros in s6-rc/config.h have changed. S6RC_LIVE_BASE is now named S6RC_LIVEDIR, in addition to the new S6RC_REPODIR and S6RC_BOOTDB.
- Lots of new commands.
in 0.5.6.0
- skalibs dependency bumped to 2.14.4.0.
- execline dependency bumped to 2.9.7.0.
- s6 dependency bumped to 2.13.2.0.
in 0.5.5.0
- skalibs dependency bumped to 2.14.3.0.
- execline dependency bumped to 2.9.6.1.
- s6 dependency bumped to 2.13.1.0.
- New function: s6rc_livedir_canon(). (Used to factor functionality for a bugfix.)
- Static libraries are installed in /usr/lib by default.
in 0.5.4.3
- skalibs dependency bumped to 2.14.2.0.
- execline dependency bumped to 2.9.6.0.
- s6 dependency bumped to 2.13.0.0.
in 0.5.4.2
- skalibs dependency bumped to 2.14.0.0.
- execline dependency bumped to 2.9.4.0.
- s6 dependency bumped to 2.12.0.0.
in 0.5.4.1
- execline dependency bumped to 2.9.2.1.
in 0.5.4.0
- skalibs dependency bumped to 2.13.1.0.
- execline dependency bumped to 2.9.2.0.
- s6 dependency bumped to 2.11.3.0.
in 0.5.3.3
- skalibs dependency bumped to 2.13.0.0.
- execline dependency bumped to 2.9.1.0.
- s6 dependency bumped to 2.11.2.0.
in 0.5.3.2
- skalibs dependency bumped to 2.12.0.0.
- execline dependency bumped to 2.9.0.0.
- s6 dependency bumped to 2.11.1.0.
in 0.5.3.1
- No functional changes.
in 0.5.3.0
- skalibs dependency bumped to 2.11.1.0.
- execline dependency bumped to 2.8.2.0.
- s6 dependency bumped to 2.11.0.1.
- s6-rc-compile now reads service dependency information from the dependencies.d directory and bundle information from the contents.d directory, instead of the dependencies and contents flat files. The old format is still supported, but deprecated.
in 0.5.2.3
- skalibs dependency bumped to 2.11.0.0.
- execline dependency bumped to 2.8.1.0.
- s6 dependency bumped to 2.11.0.0.
in 0.5.2.2
- skalibs dependency bumped to 2.10.0.3.
- execline dependency bumped to 2.8.0.1.
- s6 dependency bumped to 2.10.0.3.
in 0.5.2.1
- skalibs dependency bumped to 2.10.0.0.
- execline dependency bumped to 2.7.0.0.
- s6 dependency bumped to 2.10.0.0.
in 0.5.2.0
- skalibs dependency bumped to 2.9.3.0.
- execline dependency bumped to 2.6.1.1.
- A new file, flag-essential, is now recognized in source definition directories for s6-rc-compile. It prevents a service from being brought down by s6-rc -d change. A new option, -D, has been added to s6-rc to still force such a service down.
in 0.5.1.4
- No functional changes.
in 0.5.1.3
- skalibs dependency bumped to 2.9.2.1.
- execline dependency bumped to 2.6.1.0.
- s6 dependency bumped to 2.9.2.0.
in 0.5.1.2
- skalibs dependency bumped to 2.9.2.0.
- execline dependency bumped to 2.6.0.0.
- s6 dependency bumped to 2.9.1.0.
in 0.5.1.1
- skalibs dependency bumped to 2.9.1.0.
- execline dependency bumped to 2.5.3.0.
- s6 dependency bumped to 2.9.0.1.
in 0.5.1.0
- skalibs dependency bumped to 2.9.0.0.
- execline dependency bumped to 2.5.2.0.
- s6 dependency bumped to 2.9.0.0.
in 0.5.0.0
- This is a major version update but the database format did not change, no need to recompile your service databases.
- skalibs dependency bumped to 2.8.0.0.
- execline dependency bumped to 2.5.1.0.
- s6 dependency bumped to 2.8.0.0.
- s6-rc-compile does not support the -u or -g options anymore; instead, at any time, the user who can operate an s6-rc database is the user who owns the supervision tree.
- Everything now builds as PIC by default no matter the toolchain's settings. Use the --disable-all-pic configure option to build executables and static libraries as non-PIC.
- The underlying s6 dependency needs a major version upgrade. It is recommended to first stop all your services, then upgrade s6 and s6-rc, then immediately restart your supervision tree, then start your services again. Failure to do so *will* cause issues if you're relying on s6-ftrigrd notifications (which is the case with services managed by s6-rc).
in 0.4.1.0
- skalibs dependency bumped to 2.7.0.0.
- execline dependency bumped to 2.5.0.1.
- s6 dependency bumped to 2.7.2.0.
- The max-death-tally and down-signal files, used by recent versions of s6, are now supported by s6-rc in a longrun definition directory.
in 0.4.0.1
- s6 dependency bumped to 2.7.1.0.
in 0.4.0.0
- skalibs dependency bumped to 2.6.3.0.
- s6 dependency bumped to 2.6.2.0.
- s6-rc-compile now accepts multiple lines in a consumer-for file: a longrun can now have multiple producers, which means that pipelines are really funnels. The compiled databases are not compatible with previous versions, and the source databases are not compatible either, because the pipeline-name file must now be present in the definition of the final consumer of a pipeline, not in the definition of a first producer (to avoid ambiguity). Edit your databases and recompile them.
- New tool: s6-rc-format-upgrade
in 0.3.0.1
- skalibs dependency bumped to 2.6.2.0.
- execline dependency bumped to 2.3.0.4.
- s6 dependency bumped to 2.6.2.0.
- New -p option to s6-rc-init to allow using several live directories with the same scandir.
- New command: s6-rc diff.
- s6-rc-compile now guarantees that service numbers do not change if the source database does not change. This is useful for updates to the database format. You should recompile your service databases in preparation for the switch to s6-rc-0.4.0.0.
in 0.3.0.0
- skalibs dependency bumped to 2.6.0.1.
- execline dependency bumped to 2.3.0.3.
- s6 dependency bumped to 2.6.1.1.
- New -p option to s6-rc-init to allow using several live directories with the same scandir.
- New command: s6-rc diff.
in 0.2.1.2
- skalibs dependency bumped to 2.6.0.0.
- execline dependency bumped to 2.3.0.2.
- s6 dependency bumped to 2.6.1.0.
in 0.2.1.1
- No functional changes.
in 0.2.1.0
- skalibs dependency bumped to 2.5.1.1.
- execline dependency bumped to 2.3.0.1.
- s6 dependency bumped to 2.6.0.0.
- s6-rc change now ensures that a longrun is down when its up transition fails.
- s6-rc change now kills subprocesses waiting on a longrun transition when it receives a SIGINT or a SIGTERM.
in 0.2.0.1
- skalibs dependency bumped to 2.5.1.0.
- execline dependency bumped to 2.3.0.1.
- s6 dependency bumped to 2.5.1.0.
in 0.2.0.0
- skalibs dependency bumped to 2.5.0.0.
- execline dependency bumped to 2.3.0.0.
- s6 dependency bumped to 2.5.0.0.
- s6-rc commands taking a lock on the live directory or the service database now fail instantly if the lock is already held. The new -b option makes them revert to the "block until the lock is released" behaviour.
in 0.1.0.0
- skalibs dependency bumped to 2.4.0.0.
- execline dependency bumped to 2.2.0.0.
- s6 dependency bumped to 2.4.0.0.
in 0.0.3.0
- skalibs dependency bumped to 2.3.10.0.
- execline dependency bumped to 2.1.5.0.
- s6 dependency bumped to 2.3.0.0.
in 0.0.2.1
- s6 dependency bumped to 2.2.4.2.
in 0.0.2.0
- Better exit codes for s6-rc-update.
- skalibs dependency bumped to 2.3.8.3.
- execline dependency bumped to 2.1.4.5.
- s6 dependency bumped to 2.2.4.0.
in 0.0.1.5
- skalibs dependency bumped to 2.3.8.2.
- execline dependency bumped to 2.1.4.4.
- s6 dependency bumped to 2.2.3.1.
in 0.0.1.4
- No functional changes.
in 0.0.1.3
- No functional changes.
in 0.0.1.2
- GNU make dependency pushed back to 3.81.
- skalibs dependency bumped to 2.3.8.0.
- execline dependency bumped to 2.1.4.2.
- s6 dependency bumped to 2.2.2.0.
in 0.0.1.1
- skalibs dependency bumped to 2.3.7.1.
- execline dependency bumped to 2.1.4.1.
- s6 dependency bumped to 2.2.1.1.
in 0.0.1.0
- Initial release.
