upstart 0.6.0 "How appropriate, you fight like a cow"

Milestone information

Code name:
How appropriate, you fight like a cow
Scott James Remnant (Canonical)
Release registered:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata


Assigned to you:
No blueprints or bugs assigned to you.
16 Scott James Remnant (Canonical)
No blueprints are targeted to this milestone.
16 Fix Released

Download files for this release

After you've downloaded a file, you can verify its authenticity using its MD5 sum or signature. (How do I verify a download?)

File Description Downloads
download icon upstart-0.6.0.tar.gz (md5, sig) Upstart 0.6.0 23
last downloaded 19 weeks ago
Total downloads: 23

Release notes 

At last, the announcement of a new stable series. This one's based off 0.5.2 but with a lot of the sharp corners shaved off, and lots of bug fixes.

I strongly suggest that everybody using 0.3.x or 0.5.x now bite the bullet and switch to using 0.6.0, I probably won't make another release on those branches now. There's a bit of a compatibility bump moving the configuration directory, but I'll make sure that the 0.10 development series is backwards compatible with it.


View the full changelog

 * The licence for Upstart has been changed back to version 2 of the

 * D-Bus 1.2.15 is now required, this is the current GIT HEAD
   pending a 1.2.16 release.

 * Configuration paths have changed. Global configuration now
   resides in "/etc/init.conf" while jobs are now configured in

 * Job configuration filenames must now end in ".conf"

 * Default configuration files are now supplied in the "conf"
   sub-directory of the source, and installed into "/etc/init".

   These match the Debian/Ubuntu sysvinit configuration so may
   require some tweaking for other distributions, but provide an
   excellent base.

   The old example-jobs tarballs are deprecated.

 * The D-Bus interface remains unstable, to reflect this the current
   interface name has changed to "com.ubuntu.Upstart0_6" and the
   name of the job and instance interfaces have changed to match.

 * The "EmitEvent" D-Bus method gains a wait argument, when given
   as TRUE (the recommended setting) the method call will be blocked
   until all effects of the event have finished. When FALSE the
   method call will return once the event has been queued.

 * The "Start", "Stop" and "Restart" D-Bus methods of jobs and
   instances gain a similar wait argument.

 * The Upstart D-Bus object now has "version" and "log_priority"
   properties. The former is to obtain the version of the init daemon,
   the latter allows you to obtain and change the logging priority.

 * Job D-Bus objects now have "name", "description", "author" and
   "version" properties to obtain the job name and the contents of
   the equivalent job file fields for the others.

 * Instance D-Bus objects now have "name", "goal", "state" and
   "processes" properties to obtain the instance name, goal, state
   and list of running processes and their pids respectively.

 * The default D-Bus security policy now permits use of the "Get"
   methods by all users, including obtaining values of properties.

 * initctl has been rewritten with functionality more along the
   lines of Upstart 0.3.x than before; since many distributions are
   still shipping 0.3.x the summary of changes for the tool reflects
   both changes from 0.3.x and 0.5.x

 * The global "-p"/"--pid" argument has been dropped, since
   communication is over D-Bus. New "--system" and "--dest" arguments
   have been added to force communication over the system bus, and
   specify the destination, instead of using the private socket (this
   is the default when run as non-root to permit "list" and "status"
   to work for ordinary users).

 * The "-i"/"--id" and "--show-ids" options to commands have been
   dropped since jobs no longer have ids.

 * Since instances may now have names, these will be displayed in
   brackets after the job name when one is present. The output of
   the goal and state are now expressed as "start/running" instead
   of "(start) running" to disambiguate.

 * initctl "start" and "stop" now only output the final state of
   the job, not intermediate states it passes through. When called
   with "--no-wait", the commands now output a status before
   returning (which may not be the final status).

 * initctl "start", "stop" and "status" now only accept a single
   job name. Further arguments are taken as KEY=VALUE environment
   variables to pass to the job, replacing the previous "-e" option.

 * There is a new initctl "restart" command, with matching
   /sbin/restart symlink. This is the atomic equivalent of calling
   "stop" and "start" with the exception that a stopped job will
   not be started again.

 * In keeping with the newer instance model, instance jobs are now
   output on separate lines with their full names rather than
   indented under a "master" instance.

 * initctl "status" will exit non-zero if the job name was not
   found. (Bug: #328323)

 * initctl "status" now outputs information for multi-instance
   jobs. (Bug: #331407)

 * initctl "list" no longer accepts a pattern, use grep. Output
   is no longer sorted.

 * initctl "emit" no longer outputs changes that occur as a result
   of the event.

 * When initctl "emit" is called with "--no-wait", it will return
   immediately. (Bug: #324890)

 * initctl "emit" now only accepts a single event name. Further
   arguments are taken as KEY=VALUE environment for the event,
   replacing the previous "-e" option.

 * initctl "jobs" and "events" have been dropped.

 * initctl "log-priority" may be called without arguments, in
   which case it will output the current priority. (Bug: #280529)

 * initctl "reload" has been renamed to "reload-configuration"
   to avoid confusion with reloading a job's configuration.

 * initctl(8) man page updated. (Bug: #285753)

 * runlevel no longer accepts the --set and --reboot arguments,
   instead telinit and shutdown write these records into utmp and wtmp.

 * runlevel(7) man page added to describe the runlevel event, and
   the implementation of runlevels and System V compatibility in
   Upstart. (Bug: #60429)

 * telinit will no longer silently ignore the "a", "b" or "c"

 * telinit now accepts the previously ignored "-e" argument, passing
   the environment variables given along with the runlevel event.

 * telinit now officially accepts the "q"/"Q" and "u"/"U" arguments,
   the former will reload the Upstart configuration while the latter
   will re-execute Upstart.

 * telinit q will also attempt to reconnect to the D-Bus system bus
   if the connection has not been made, or has been lost.
   (Bug: #323022)

 * reboot no longer silently ignores the "-t" option.

 * reboot now silently ignores the "-n", "-i" and "-h" options; it
   will no longer sync your disks, down your network interfaces or
   spin down your hard drives. This functionality is all handled
   by the kernel on a modern system. (Bug: #92685)

 * reboot now writes a "shutdown" record to /var/log/wtmp, this means
   that the "-w" option is honoured with its original intent. We
   still silently ignore the "-d" option.

 * shutdown message generation fixed to be more easily translatable.
   (Bug: #102565)

 * The TERM/KILL timeout, and other system timeouts, now use the
   monotonic clock so are unaffected by system clock changes.
   (Bug: #389588)

 * Respawn detection now uses the monotonic clock so is unaffected
   by system clock changes. (Bug: #389586)

 * Significant improvement in the amount of manual pages included
   with Upstart and their content. (Bug: #60429)

 * A manual page refering people from /etc/inittab to /etc/init
   is also included. (Bug: #72058)

0 blueprints and 16 bugs targeted

Bug report Importance Assignee Status
389586 #389586 init: respawn detection relies on non-monotonic clock 3 High Scott James Remnant (Canonical)  10 Fix Released
389588 #389588 init: kill timer relies on non-monotonic clock 3 High Scott James Remnant (Canonical)  10 Fix Released
102565 #102565 shutdown: impossible to properly localize some strings 4 Medium Scott James Remnant (Canonical)  10 Fix Released
323022 #323022 init: allow to use D-Bus system bus that is started *after* init 4 Medium Scott James Remnant (Canonical)  10 Fix Released
328323 #328323 initctl: status should return a non-zero exit code if job not found 4 Medium Scott James Remnant (Canonical)  10 Fix Released
388738 #388738 reboot: should imply --force during shutdown 4 Medium Scott James Remnant (Canonical)  10 Fix Released
60429 #60429 doc: Upstart lacks documentation 5 Low Scott James Remnant (Canonical)  10 Fix Released
285753 #285753 doc: bad wording in initctl manpage 5 Low Scott James Remnant (Canonical)  10 Fix Released
324890 #324890 initctl: emit --no-wait should not wait 5 Low Scott James Remnant (Canonical)  10 Fix Released
388715 #388715 doc: telinit man page lacks initctl reference 5 Low Scott James Remnant (Canonical)  10 Fix Released
72058 #72058 doc: something about vanished /etc/inittab should be added 6 Wishlist Scott James Remnant (Canonical)  10 Fix Released
92685 #92685 reboot: noisy if /proc/ide doesn't exist 6 Wishlist Scott James Remnant (Canonical)  10 Fix Released
280529 #280529 initctl: log-priority without arguments should return current setting 6 Wishlist Scott James Remnant (Canonical)  10 Fix Released
331407 #331407 initctl: status should output per-instance data 6 Wishlist Scott James Remnant (Canonical)  10 Fix Released
392502 #392502 init: make some D-Bus methods and all D-Bus properties public 6 Wishlist Scott James Remnant (Canonical)  10 Fix Released
396222 #396222 vim syntax files for upstart jobs 6 Wishlist Scott James Remnant (Canonical)  10 Fix Released
This milestone contains Public information
Everyone can see this information.