chiark / gitweb /
missing: Fix compilation error due to wrong __NR_name_to_handle_at definition
[elogind.git] / NEWS
diff --git a/NEWS b/NEWS
index c82e637..4bb01de 100644 (file)
--- a/NEWS
+++ b/NEWS
 systemd System and Service Manager
 
-CHANGES WITH:
-        * systemd-logingctl and systemd-journalctl have been renamed
-          to logingctl and journalctl to match systemctl.
+CHANGES WITH 190:
+
+        * Whenever a unit changes state we'll now log this to the
+          journal and show along the unit's own log output in
+          "systemctl status".
+
+        * ConditionPathIsMountPoint= can now properly detect bind
+          mount points too. (Previously, a bind mount of one file
+          system to another place in the same file system could not be
+          detected as mount, since they shared struct stat's st_dev
+          field.)
+
+        * We will now mount the cgroup controllers cpu, cpuacct,
+          cpuset and the controllers net_cls, net_prio together by
+          default.
+
+        * nspawn containers will now have a virtualized boot
+          ID. (i.e. /proc/sys/kernel/random/boot_id is now mounted
+          over with a randomized ID at container initialization). This
+          has the effect of making "journalctl -b" do the right thing
+          in a container.
+
+        * The JSON output journal serialization has been updated not
+          to generate "endless" list objects anymore, but rather one
+          JSON object per line. This is more in line how most JSON
+          parsers expect JSON objects. The new output mode
+          "json-pretty" has been added to provide similar output, but
+          neatly aligned for readability by humans.
+
+        * We dropped all explicit sync() invocations in the shutdown
+          code. The kernel does this implicitly anyway in the kernel
+          reboot() syscall. halt(8)'s -n option is now a compatibility
+          no-op.
+
+        * We now support virtualized reboot() in containers, as
+          supported by newer kernels. We will fall back to exit() if
+          CAP_SYS_REBOOT is not available to the container. Also,
+          nspawn makes use of this now and will actually reboot the
+          container if the containerized OS asks for that.
+
+        * journalctl will only show local log output by default
+          now. Use --merge (-m) to show remote log output, too.
+
+        * libsystemd-journal gained the new sd_journal_get_usage()
+          call to determine the current disk usage of all journal
+          files. This is exposed in the new "journalctl --disk-usage"
+          command.
+
+        * journald gained a new configuration setting SplitMode= in
+          journald.conf which may be used to control how user journals
+          are split off. See journald.conf(5) for details.
+
+        * A new condition type ConditionFileNotEmpty= has been added.
+
+        * tmpfiles' "w" lines now support file globbing, to write
+          multiple files at once.
+
+        * We added Python bindings for the journal submission
+          APIs. More Python APIs for a number of selected APIs will
+          likely follow. Note that we intend to add native bindings
+          only for the Python language, as we consider it common
+          enough to deserve bindings shipped within systemd. There are
+          various projects outside of systemd that provide bindings
+          for languages such as PHP or Lua.
+
+        * Many conditions will now resolve specifiers such as %i. In
+          addition, PathChanged= and related directives of .path units
+          now support specifiers as well.
+
+        * There's now a new RPM macro definition for the system preset
+          dir: %_presetdir.
+
+        * journald will now warn if it can't foward a message to the
+          syslog daemon because it's socket is full.
+
+        * timedated will no longer write or process /etc/timezone,
+          except on Debian. As we do not support late mounted /usr
+          anymore /etc/localtime always being a symlink is now safe,
+          and hence the information in /etc/timezone is not necessary
+          anymore.
+
+        * logind will now always reserve one VT for a text getty (VT6
+          by default). Previously if more than 6 X sessions where
+          started they took up all the VTs with auto-spawned gettys,
+          so that no text gettys were available anymore.
+
+        * udev will now automatically inform the btrfs kernel logic
+          about btrfs RAID components showing up. This should make
+          simple hotplug based btrfs RAID assembly work.
+
+        * PID 1 will now increase its RLIMIT_NOFILE to 64K by default
+          (but not for its children which will stay at the kernel
+          default). This should allow setups with a lot more listening
+          sockets.
+
+        * systemd will now always pass the configured timezone to the
+          kernel at boot. timedated will do the same when the timezone
+          is changed.
+
+        * logind's inhibition logic has been updated. By default,
+          logind will now handle the lid switch, the power and sleep
+          keys all the time, even in graphical sessions. If DEs want
+          to handle these events on their own they should take the new
+          handle-power-key, handle-sleep-key and handle-lid-switch
+          inhibitors during their runtime. A simple way to achiveve
+          that is to invoke the DE wrapped in an invocation of:
+
+          systemd-inhibit --what=handle-power-key:handle-sleep-key:handle-lid-switch ...
+
+        * Access to unit operations is now checked via SELinux taking
+          the unit file label and client process label into account.
+
+        * systemd will now notify the administrator in the journal
+          when he over-mounts a non-empty directory.
+
+        * There are new specifiers that are resolved in unit files,
+          for the host name (%H), the machine ID (%m) and the boot ID
+          (%b).
+
+        Contributions from Allin Cottrell, Auke Kok, Brandon Philips,
+        Colin Guthrie, Colin Walters, Daniel J Walsh, Dave Reisner,
+        Eelco Dolstra, Jan Engelhardt, Kay Sievers, Lennart
+        Poettering, Lucas De Marchi, Lukas Nykryn, Mantas Mikulėnas,
+        Martin Pitt, Matthias Clasen, Michael Olbrich, Pierre Schmitz,
+        Shawn Landden, Thomas Hindoe Paaboel Andersen, Tom Gundersen,
+        Václav Pavlín, Yin Kangkai, Zbigniew Jędrzejewski-Szmek
+
+CHANGES WITH 189:
+
+        * Support for reading structured kernel messages from
+          /dev/kmsg has now been added and is enabled by default.
+
+        * Support for reading kernel messages from /proc/kmsg has now
+          been removed. If you want kernel messages in the journal
+          make sure to run a recent kernel (>= 3.5) that supports
+          reading structured messages from /dev/kmsg (see
+          above). /proc/kmsg is now exclusive property of classic
+          syslog daemons again.
+
+        * The libudev API gained the new
+          udev_device_new_from_device_id() call.
+
+        * The logic for file system namespace (ReadOnlyDirectory=,
+          ReadWriteDirectoy=, PrivateTmp=) has been reworked not to
+          require pivot_root() anymore. This means fewer temporary
+          directories are created below /tmp for this feature.
+
+        * nspawn containers will now see and receive all submounts
+          made on the host OS below the root file system of the
+          container.
+
+        * Forward Secure Sealing is now supported for Journal files,
+          which provide cryptographical sealing of journal files so
+          that attackers cannot alter log history anymore without this
+          being detectable. Lennart will soon post a blog story about
+          this explaining it in more detail.
+
+        * There are two new service settings RestartPreventExitStatus=
+          and SuccessExitStatus= which allow configuration of exit
+          status (exit code or signal) which will be excepted from the
+          restart logic, resp. consider successful.
+
+        * journalctl gained the new --verify switch that can be used
+          to check the integrity of the structure of journal files and
+          (if Forward Secure Sealing is enabled) the contents of
+          journal files.
+
+        * nspawn containers will now be run with /dev/stdin, /dev/fd/
+          and similar symlinks pre-created. This makes running shells
+          as container init process a lot more fun.
+
+        * The fstab support can now handle PARTUUID= and PARTLABEL=
+          entries.
+
+        * A new ConditionHost= condition has been added to match
+          against the hostname (with globs) and machine ID. This is
+          useful for clusters where a single OS image is used to
+          provision a large number of hosts which shall run slightly
+          different sets of services.
+
+        * Services which hit the restart limit will now be placed in a
+          failure state.
+
+        Contributions from Bertram Poettering, Dave Reisner, Huang
+        Hang, Kay Sievers, Lennart Poettering, Lukas Nykryn, Martin
+        Pitt, Simon Peeters, Zbigniew Jędrzejewski-Szmek
+
+CHANGES WITH 188:
+
+        * When running in --user mode systemd will now become a
+          subreaper (PR_SET_CHILD_SUBREAPER). This should make the ps
+          tree a lot more organized.
+
+        * A new PartOf= unit dependency type has been introduced that
+          may be used to group services in a natural way.
+
+        * "systemctl enable" may now be used to enable instances of
+          services.
+
+        * journalctl now prints error log levels in red, and
+          warning/notice log levels in bright white. It also supports
+          filtering by log level now.
+
+        * cgtop gained a new -n switch (similar to top), to configure
+          the maximum number of iterations to run for. It also gained
+          -b, to run in batch mode (accepting no input).
+
+        * The suffix ".service" may now be ommited on most systemctl
+          command lines involving service unit names.
+
+        * There's a new bus call in logind to lock all sessions, as
+          well as a loginctl verb for it "lock-sessions".
+
+        * libsystemd-logind.so gained a new call sd_journal_perror()
+          that works similar to libc perror() but logs to the journal
+          and encodes structured information about the error number.
+
+        * /etc/crypttab entries now understand the new keyfile-size=
+          option.
+
+        * shutdown(8) now can send a (configurable) wall message when
+          a shutdown is cancelled.
+
+        * The mount propagation mode for the root file system will now
+          default to "shared", which is useful to make containers work
+          nicely out-of-the-box so that they receive new mounts from
+          the host. This can be undone locally by running "mount
+          --make-rprivate /" if needed.
+
+        * The prefdm.service file has been removed. Distributions
+          should maintain this unit downstream if they intend to keep
+          it around. However, we recommend writing normal unit files
+          for display managers instead.
+
+        * Since systemd is a crucial part of the OS we will now
+          default to a number of compiler switches that improve
+          security (hardening) such as read-only relocations, stack
+          protection, and suchlike.
+
+        * The TimeoutSec= setting for services is now split into
+          TimeoutStartSec= and TimeoutStopSec= to allow configuration
+          of individual time outs for the start and the stop phase of
+          the service.
+
+        Contributions from: Artur Zaprzala, Arvydas Sidorenko, Auke
+        Kok, Bryan Kadzban, Dave Reisner, David Strauss, Harald Hoyer,
+        Jim Meyering, Kay Sievers, Lennart Poettering, Mantas
+        Mikulėnas, Martin Pitt, Michal Schmidt, Michal Sekletar, Peter
+        Alfredsen, Shawn Landden, Simon Peeters, Terence Honles, Tom
+        Gundersen, Zbigniew Jędrzejewski-Szmek
+
+CHANGES WITH 187:
+
+        * The journal and id128 C APIs are now fully documented as man
+          pages.
+
+        * Extra safety checks have been added when transitioning from
+          the initial RAM disk to the main system to avoid accidental
+          data loss.
+
+        * /etc/crypttab entries now understand the new keyfile-offset=
+          option.
+
+        * systemctl -t can now be used to filter by unit load state.
+
+        * The journal C API gained the new sd_journal_wait() call to
+          make writing synchronous journal clients easier.
+
+        * journalctl gained the new -D switch to show journals from a
+          specific directory.
+
+        * journalctl now displays a special marker between log
+          messages of two different boots.
+
+        * The journal is now explicitly flushed to /var via a service
+          systemd-journal-flush.service, rather than implicitly simply
+          by seeing /var/log/journal to be writable.
+
+        * journalctl (and the journal C APIs) can now match for much
+          more complex expressions, with alternatives and
+          disjunctions.
+
+        * When transitioning from the initial RAM disk to the main
+          system we will now kill all processes in a killing spree to
+          ensure no processes stay around by accident.
+
+        * Three new specifiers may be used in unit files: %u, %h, %s
+          resolve to the user name, user home directory resp. user
+          shell. This is useful for running systemd user instances.
+
+        * We now automatically rotate journal files if their data
+          object hash table gets a fill level > 75%. We also size the
+          hash table based on the configured maximum file size. This
+          together should lower hash collisions drastically and thus
+          speed things up a bit.
+
+        * journalctl gained the new "--header" switch to introspect
+          header data of journal files.
+
+        * A new setting SystemCallFilters= has been added to services
+          which may be used to apply blacklists or whitelists to
+          system calls. This is based on SECCOMP Mode 2 of Linux 3.5.
+
+        * nspawn gained a new --link-journal= switch (and quicker: -j)
+          to link the container journal with the host. This makes it
+          very easy to centralize log viewing on the host for all
+          guests while still keeping the journal files separated.
+
+        * Many bugfixes and optimizations
+
+        Contributions from: Auke Kok, Eelco Dolstra, Harald Hoyer, Kay
+        Sievers, Lennart Poettering, Malte Starostik, Paul Menzel, Rex
+        Tsai, Shawn Landden, Tom Gundersen, Ville Skyttä, Zbigniew
+        Jędrzejewski-Szmek
+
+CHANGES WITH 186:
+
+        * Several tools now understand kernel command line arguments,
+          which are only read when run in an initial RAM disk. They
+          usually follow closely their normal counterparts, but are
+          prefixed with rd.
+
+        * There's a new tool to analyze the readahead files that are
+          automatically generated at boot. Use:
+
+          /usr/lib/systemd/systemd-readahead analyze /.readahead
+
+        * We now provide an early debug shell on tty9 if this enabled. Use:
+
+          systemctl enable debug-shell.service
+
+        * All plymouth related units have been moved into the Plymouth
+          package. Please make sure to upgrade your Plymouth version
+          as well.
+
+        * systemd-tmpfiles now supports getting passed the basename of
+          a configuration file only, in which case it will look for it
+          in all appropriate directories automatically.
+
+        * udevadm info now takes a /dev or /sys path as argument, and
+          does the right thing. Example:
+
+          udevadm info /dev/sda
+          udevadm info /sys/class/block/sda
+
+        * systemctl now prints a warning if a unit is stopped but a
+          unit that might trigger it continues to run. Example: a
+          service is stopped but the socket that activates it is left
+          running.
+
+        * "systemctl status" will now mention if the log output was
+          shortened due to rotation since a service has been started.
+
+        * The journal API now exposes functions to determine the
+          "cutoff" times due to rotation.
+
+        * journald now understands SIGUSR1 and SIGUSR2 for triggering
+          immediately flushing of runtime logs to /var if possible,
+          resp. for triggering immediate rotation of the journal
+          files.
+
+        * It is now considered an error if a service is attempted to
+          be stopped that is not loaded.
+
+        * XDG_RUNTIME_DIR now uses numeric UIDs instead of usernames.
+
+        * systemd-analyze now supports Python 3
+
+        * tmpfiles now supports cleaning up directories via aging
+          where the first level dirs are always kept around but
+          directories beneath it automatically aged. This is enabled
+          by prefixing the age field with '~'.
+
+        * Seat objects now expose CanGraphical, CanTTY properties
+          which is required to deal with very fast bootups where the
+          display manager might be running before the graphics drivers
+          completed initialization.
+
+        * Seat objects now expose a State property.
+
+        * We now include RPM macros for service enabling/disabling
+          based on the preset logic. We recommend RPM based
+          distributions to make use of these macros if possible. This
+          makes it simpler to reuse RPM spec files across
+          distributions.
+
+        * We now make sure that the collected systemd unit name is
+          always valid when services log to the journal via
+          STDOUT/STDERR.
+
+        * There's a new man page kernel-command-line(7) detailing all
+          command line options we understand.
+
+        * The fstab generator may now be disabled at boot by passing
+          fstab=0 on the kernel command line.
+
+        * A new kernel command line option modules-load= is now understood
+          to load a specific kernel module statically, early at boot.
+
+        * Unit names specified on the systemctl command line are now
+          automatically escaped as needed. Also, if file system or
+          device paths are specified they are automatically turned
+          into the appropriate mount or device unit names. Example:
+
+          systemctl status /home
+          systemctl status /dev/sda
+
+        * The SysVConsole= configuration option has been removed from
+          system.conf parsing.
+
+        * The SysV search path is no longer exported on the D-Bus
+          Manager object.
+
+        * The Names= option is been removed from unit file parsing.
+
+        * There's a new man page bootup(7) detailing the boot process.
+
+        * Every unit and every generator we ship with systemd now
+          comes with full documentation. The self-explanatory boot is
+          complete.
+
+        * A couple of services gained "systemd-" prefixes in their
+          name if they wrap systemd code, rather than only external
+          code. Among them fsck@.service which is now
+          systemd-fsck@.service.
+
+        * The HaveWatchdog property has been removed from the D-Bus
+          Manager object.
+
+        * systemd.confirm_spawn= on the kernel command line should now
+          work sensibly.
+
+        * There's a new man page crypttab(5) which details all options
+          we actually understand.
+
+        * systemd-nspawn gained a new --capability= switch to pass
+          additional capabilities to the container.
+
+        * timedated will now read known NTP implementation unit names
+          from /usr/lib/systemd/ntp-units.d/*.list,
+          systemd-timedated-ntp.target has been removed.
+
+        * journalctl gained a new switch "-b" that lists log data of
+          the current boot only.
+
+        * The notify socket is in the abstract namespace again, in
+          order to support daemons which chroot() at start-up.
+
+        * There is a new Storage= configuration option for journald
+          which allows configuration of where log data should go. This
+          also provides a way to disable journal logging entirely, so
+          that data collected is only forwarded to the console, the
+          kernel log buffer or another syslog implementation.
+
+        * Many bugfixes and optimizations
+
+        Contributions from: Auke Kok, Colin Guthrie, Dave Reisner,
+        David Strauss, Eelco Dolstra, Kay Sievers, Lennart Poettering,
+        Lukas Nykryn, Michal Schmidt, Michal Sekletar, Paul Menzel,
+        Shawn Landden, Tom Gundersen
+
+CHANGES WITH 185:
+        * "systemctl help <unit>" now shows the man page if one is
+          available.
+
+        * Several new man pages have been added.
+
+        * MaxLevelStore=, MaxLevelSyslog=, MaxLevelKMsg=,
+          MaxLevelConsole= can now be specified in
+          journald.conf. These options allow reducing the amount of
+          data stored on disk or forwarded by the log level.
+
+        * TimerSlackNSec= can now be specified in system.conf for
+          PID1. This allows system-wide power savings.
+
+        Contributions from: Dave Reisner, Kay Sievers, Lauri Kasanen,
+        Lennart Poettering, Malte Starostik, Marc-Antoine Perennou,
+        Matthias Clasen
+
+CHANGES WITH 184:
+        * logind is now capable of (optionally) handling power and
+          sleep keys as well as the lid switch.
+
+        * journalctl now understands the syntax "journalctl
+          /usr/bin/avahi-daemon" to get all log output of a specific
+          daemon.
+
+        * CapabilityBoundingSet= in system.conf now also influences
+          the capability bound set of usermode helpers of the kernel.
+
+        Contributions from: Daniel Drake, Daniel J. Walsh, Gert
+        Michael Kulyk, Harald Hoyer, Jean Delvare, Kay Sievers,
+        Lennart Poettering, Matthew Garrett, Matthias Clasen, Paul
+        Menzel, Shawn Landden, Tero Roponen, Tom Gundersen
+
+CHANGES WITH 183:
+        * Note that we skipped 139 releases here in order to set the
+          new version to something that is greater than both udev's
+          and systemd's most recent version number.
+
+        * udev: all udev sources are merged into the systemd source tree now.
+          All future udev development will happen in the systemd tree. It
+          is still fully supported to use the udev daemon and tools without
+          systemd running, like in initramfs or other init systems. Building
+          udev though, will require the *build* of the systemd tree, but
+          udev can be properly *run* without systemd.
+
+        * udev: /lib/udev/devices/ are not read anymore; systemd-tmpfiles
+          should be used to create dead device nodes as workarounds for broken
+          subsystems.
+
+        * udev: RUN+="socket:..."  and udev_monitor_new_from_socket() is
+          no longer supported. udev_monitor_new_from_netlink() needs to be
+          used to subscribe to events.
+
+        * udev: when udevd is started by systemd, processes which are left
+          behind by forking them off of udev rules, are unconditionally cleaned
+          up and killed now after the event handling has finished. Services or
+          daemons must be started as systemd services. Services can be
+          pulled-in by udev to get started, but they can no longer be directly
+          forked by udev rules.
+
+        * udev: the daemon binary is called systemd-udevd now and installed
+          in /usr/lib/systemd/. Standalone builds or non-systemd systems need
+          to adapt to that, create symlink, or rename the binary after building
+          it.
+
+        * libudev no longer provides these symbols:
+            udev_monitor_from_socket()
+            udev_queue_get_failed_list_entry()
+            udev_get_{dev,sys,run}_path()
+          The versions number was bumped and symbol versioning introduced.
+
+        * systemd-loginctl and systemd-journalctl have been renamed
+          to loginctl and journalctl to match systemctl.
 
         * The config files: /etc/systemd/systemd-logind.conf and
           /etc/systemd/systemd-journald.conf have been renamed to
           logind.conf and journald.conf. Package updates should rename
           the files to the new names on upgrade.
 
+        * For almost all files the license is now LGPL2.1+, changed
+          from the previous GPL2.0+. Exceptions are some minor stuff
+          of udev (which will be changed to LGPL2.1 eventually, too),
+          and the MIT licensed sd-daemon.[ch] library that is suitable
+          to be used as drop-in files.
+
+        * systemd and logind now handle system sleep states, in
+          particular suspending and hibernating.
+
+        * logind now implements a sleep/shutdown/idle inhibiting logic
+          suitable for a variety of uses. Soonishly Lennart will blog
+          about this in more detail.
+
+        * var-run.mount and var-lock.mount are no longer provided
+          (which prevously bind mounted these directories to their new
+          places). Distributions which have not converted these
+          directories to symlinks should consider stealing these files
+          from git history and add them downstream.
+
+        * We introduced the Documentation= field for units and added
+          this to all our shipped units. This is useful to make it
+          easier to explore the boot and the purpose of the various
+          units.
+
+        * All smaller setup units (such as
+          systemd-vconsole-setup.service) now detect properly if they
+          are run in a container and are skipped when
+          appropriate. This guarantees an entirely noise-free boot in
+          Linux container environments such as systemd-nspawn.
+
+        * A framework for implementing offline system updates is now
+          integrated, for details see:
+          http://freedesktop.org/wiki/Software/systemd/SystemUpdates
+
+        * A new service type Type=idle is available now which helps us
+          avoiding ugly interleaving of getty output and boot status
+          messages.
+
+        * There's now a system-wide CapabilityBoundingSet= option to
+          globally reduce the set of capabilities for the
+          system. This is useful to drop CAP_SYS_MKNOD, CAP_SYS_RAWIO,
+          CAP_NET_RAW, CAP_SYS_MODULE, CAP_SYS_TIME, CAP_SYS_PTRACE or
+          even CAP_NET_ADMIN system-wide for secure systems.
+
+        * There are now system-wide DefaultLimitXXX= options to
+          globally change the defaults of the various resource limits
+          for all units started by PID 1.
+
+        * Harald Hoyer's systemd test suite has been integrated into
+          systemd which allows easy testing of systemd builds in qemu
+          and nspawn. (This is really awesome! Ask us for details!)
+
+        * The fstab parser is now implemented as generator, not inside
+          of PID 1 anymore.
+
+        * systemctl will now warn you if .mount units generated from
+          /etc/fstab are out of date due to changes in fstab that
+          haven't been read by systemd yet.
+
+        * systemd is now suitable for usage in initrds. Dracut has
+          already been updated to make use of this. With this in place
+          initrds get a slight bit faster but primarily are much
+          easier to introspect and debug since "systemctl status" in
+          the host system can be used to introspect initrd services,
+          and the journal from the initrd is kept around too.
+
+        * systemd-delta has been added, a tool to explore differences
+          between user/admin configuration and vendor defaults.
+
+        * PrivateTmp= now affects both /tmp and /var/tmp.
+
+        * Boot time status messages are now much prettier and feature
+          proper english language. Booting up systemd has never been
+          so sexy.
+
+        * Read-ahead pack files now include the inode number of all
+          files to pre-cache. When the inode changes the pre-caching
+          is not attempted. This should be nicer to deal with updated
+          packages which might result in changes of read-ahead
+          patterns.
+
+        * We now temporaritly lower the kernel's read_ahead_kb variable
+          when collecting read-ahead data to ensure the kernel's
+          built-in read-ahead does not add noise to our measurements
+          of necessary blocks to pre-cache.
+
+        * There's now RequiresMountsFor= to add automatic dependencies
+          for all mounts necessary for a specific file system path.
+
+        * MountAuto= and SwapAuto= have been removed from
+          system.conf. Mounting file systems at boot has to take place
+          in systemd now.
+
+        * nspawn now learned a new switch --uuid= to set the machine
+          ID on the command line.
+
+        * nspawn now learned the -b switch to automatically search
+          for an init system.
+
+        * vt102 is now the default TERM for serial TTYs, upgraded from
+          vt100.
+
+        * systemd-logind now works on VT-less systems.
+
+        * The build tree has been reorganized. The individual
+          components now have directories of their own.
+
+        * A new condition type ConditionPathIsReadWrite= is now available.
+
+        * nspawn learned the new -C switch to create cgroups for the
+          container in other hierarchies.
+
+        * We now have support for hardware watchdogs, configurable in
+          system.conf.
+
+        * The scheduled shutdown logic now has a public API.
+
+        * We now mount /tmp as tmpfs by default, but this can be
+          masked and /etc/fstab can override it.
+
+        * Since udisks doesn't make use of /media anymore we are not
+          mounting a tmpfs on it anymore.
+
+        * journalctl gained a new --local switch to only interleave
+          locally generated journal files.
+
+        * We can now load the IMA policy at boot automatically.
+
+        * The GTK tools have been split off into a systemd-ui.
+
+        Contributions from: Andreas Schwab, Auke Kok, Ayan George,
+        Colin Guthrie, Daniel Mack, Dave Reisner, David Ward, Elan
+        Ruusamäe, Frederic Crozat, Gergely Nagy, Guillermo Vidal,
+        Hannes Reinecke, Harald Hoyer, Javier Jardón, Kay Sievers,
+        Lennart Poettering, Lucas De Marchi, Léo Gillot-Lamure,
+        Marc-Antoine Perennou, Martin Pitt, Matthew Monaco, Maxim
+        A. Mikityanskiy, Michael Biebl, Michael Olbrich, Michal
+        Schmidt, Nis Martensen, Patrick McCarty, Roberto Sassu, Shawn
+        Landden, Sjoerd Simons, Sven Anders, Tollef Fog Heen, Tom
+        Gundersen
+
 CHANGES WITH 44:
         * This is mostly a bugfix release
 
@@ -272,7 +945,7 @@ CHANGES WITH 38:
         * New PropagateReloadTo=/PropagateReloadFrom= options to bind
           reloading of units together.
 
-        Contributions from: Bill Nottingham, Daniel Walsh, Dave
+        Contributions from: Bill Nottingham, Daniel J. Walsh, Dave
         Reisner, Dexter Morgan, Gregs Gregs, Jonathan Nieder, Kay
         Sievers, Lennart Poettering, Michael Biebl, Michal Schmidt,
         Michał Górny, Ran Benita, Thomas Jarosch, Tim Waugh, Tollef