gopkg.in/ubuntu-core/snappy.v0@v0.0.0-20210902073436-25a8614f10a6/packaging/fedora/snapd.spec (about)

     1  # With Fedora, nothing is bundled. For everything else, bundling is used.
     2  # To use bundled stuff, use "--with vendorized" on rpmbuild
     3  %if 0%{?fedora}
     4  %bcond_with vendorized
     5  %else
     6  %bcond_without vendorized
     7  %endif
     8  
     9  # With Amazon Linux 2+, we're going to provide the /snap symlink by default,
    10  # since classic snaps currently require it... :(
    11  %if 0%{?amzn} >= 2
    12  %bcond_without snap_symlink
    13  %else
    14  %bcond_with snap_symlink
    15  %endif
    16  
    17  # A switch to allow building the package with support for testkeys which
    18  # are used for the spread test suite of snapd.
    19  %bcond_with testkeys
    20  
    21  %global with_devel 1
    22  %global with_debug 1
    23  %global with_check 0
    24  %global with_unit_test 0
    25  %global with_test_keys 0
    26  %global with_selinux 1
    27  
    28  # For the moment, we don't support all golang arches...
    29  %global with_goarches 0
    30  
    31  # Set if multilib is enabled for supported arches
    32  %ifarch x86_64 aarch64 %{power64} s390x
    33  %global with_multilib 1
    34  %endif
    35  
    36  %if ! %{with vendorized}
    37  %global with_bundled 0
    38  %else
    39  %global with_bundled 1
    40  %endif
    41  
    42  %if ! %{with testkeys}
    43  %global with_test_keys 0
    44  %else
    45  %global with_test_keys 1
    46  %endif
    47  
    48  %if 0%{?with_debug}
    49  %global _dwz_low_mem_die_limit 0
    50  %else
    51  %global debug_package   %{nil}
    52  %endif
    53  
    54  %global provider        github
    55  %global provider_tld    com
    56  %global project         snapcore
    57  %global repo            snapd
    58  # https://github.com/snapcore/snapd
    59  %global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo}
    60  %global import_path     %{provider_prefix}
    61  
    62  %global snappy_svcs      snapd.service snapd.socket snapd.autoimport.service snapd.seeded.service
    63  %global snappy_user_svcs snapd.session-agent.service snapd.session-agent.socket
    64  
    65  # Until we have a way to add more extldflags to gobuild macro...
    66  # Always use external linking when building static binaries.
    67  %if 0%{?fedora} || 0%{?rhel} >= 8
    68  %define gobuild_static(o:) go build -buildmode pie -compiler gc -tags="rpm_crashtraceback ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n') -linkmode external -extldflags '%__global_ldflags -static'" -a -v -x %{?**};
    69  %endif
    70  %if 0%{?rhel} == 7
    71  # no pass PIE flags due to https://bugzilla.redhat.com/show_bug.cgi?id=1634486
    72  %define gobuild_static(o:) go build -compiler gc -tags="rpm_crashtraceback ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n') -linkmode external -extldflags '%__global_ldflags -static'" -a -v -x %{?**};
    73  %endif
    74  
    75  # These macros are missing BUILDTAGS in RHEL 8, see RHBZ#1825138
    76  %if 0%{?rhel} == 8
    77  %define gobuild(o:) go build -buildmode pie -compiler gc -tags="rpm_crashtraceback ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n') -linkmode external -extldflags '%__global_ldflags'" -a -v -x %{?**};
    78  %endif
    79  
    80  # These macros are not defined in RHEL 7
    81  %if 0%{?rhel} == 7
    82  %define gobuild(o:) go build -compiler gc -tags="rpm_crashtraceback ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n') -linkmode external -extldflags '%__global_ldflags'" -a -v -x %{?**};
    83  %define gotest() go test -compiler gc -ldflags "${LDFLAGS:-}" %{?**};
    84  %endif
    85  
    86  # Compat path macros
    87  %{!?_environmentdir: %global _environmentdir %{_prefix}/lib/environment.d}
    88  %{!?_systemdgeneratordir: %global _systemdgeneratordir %{_prefix}/lib/systemd/system-generators}
    89  %{!?_systemd_system_env_generator_dir: %global _systemd_system_env_generator_dir %{_prefix}/lib/systemd/system-environment-generators}
    90  
    91  # Fedora selinux-policy includes 'map' permission on a 'file' class. However,
    92  # Amazon Linux 2 does not have the updated policy containing the fix for
    93  # https://bugzilla.redhat.com/show_bug.cgi?id=1574383.
    94  # For now disable SELinux on Amazon Linux 2 until it's fixed.
    95  %if 0%{?amzn2} == 1
    96  %global with_selinux 0
    97  %endif
    98  
    99  Name:           snapd
   100  Version:        2.51.7
   101  Release:        0%{?dist}
   102  Summary:        A transactional software package manager
   103  License:        GPLv3
   104  URL:            https://%{provider_prefix}
   105  Source0:        https://%{provider_prefix}/releases/download/%{version}/%{name}_%{version}.no-vendor.tar.xz
   106  Source1:        https://%{provider_prefix}/releases/download/%{version}/%{name}_%{version}.only-vendor.tar.xz
   107  
   108  %if 0%{?with_goarches}
   109  # e.g. el6 has ppc64 arch without gcc-go, so EA tag is required
   110  ExclusiveArch:  %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
   111  %else
   112  # Verified arches from snapd upstream
   113  ExclusiveArch:  %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
   114  %endif
   115  
   116  # If go_compiler is not set to 1, there is no virtual provide. Use golang instead.
   117  BuildRequires: make
   118  BuildRequires:  %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang >= 1.9}
   119  BuildRequires:  systemd
   120  %{?systemd_requires}
   121  
   122  Requires:       snap-confine%{?_isa} = %{version}-%{release}
   123  Requires:       squashfs-tools
   124  
   125  %if 0%{?rhel} && 0%{?rhel} < 8
   126  # Rich dependencies not available, always pull in squashfuse
   127  # snapd will use squashfs.ko instead of squashfuse if it's on the system
   128  # NOTE: Amazon Linux 2 does not have squashfuse, squashfs.ko is part of the kernel package
   129  %if ! 0%{?amzn2}
   130  Requires:       squashfuse
   131  Requires:       fuse
   132  %endif
   133  %else
   134  # snapd will use squashfuse in the event that squashfs.ko isn't available (cloud instances, containers, etc.)
   135  Requires:       ((squashfuse and fuse) or kmod(squashfs.ko))
   136  %endif
   137  
   138  # bash-completion owns /usr/share/bash-completion/completions
   139  Requires:       bash-completion
   140  
   141  %if 0%{?with_selinux}
   142  # Force the SELinux module to be installed
   143  Requires:       %{name}-selinux = %{version}-%{release}
   144  %endif
   145  
   146  %if 0%{?fedora} && 0%{?fedora} < 30
   147  # snapd-login-service is no more
   148  # Note: Remove when F29 is EOL
   149  Obsoletes:      %{name}-login-service < 1.33
   150  Provides:       %{name}-login-service = 1.33
   151  Provides:       %{name}-login-service%{?_isa} = 1.33
   152  %endif
   153  
   154  %if ! 0%{?with_bundled}
   155  BuildRequires: golang(github.com/boltdb/bolt)
   156  BuildRequires: golang(github.com/coreos/go-systemd/activation)
   157  BuildRequires: golang(github.com/godbus/dbus)
   158  BuildRequires: golang(github.com/godbus/dbus/introspect)
   159  BuildRequires: golang(github.com/gorilla/mux)
   160  BuildRequires: golang(github.com/jessevdk/go-flags)
   161  BuildRequires: golang(github.com/juju/ratelimit)
   162  BuildRequires: golang(github.com/kr/pretty)
   163  BuildRequires: golang(github.com/kr/text)
   164  BuildRequires: golang(github.com/mvo5/goconfigparser)
   165  BuildRequires: golang(github.com/seccomp/libseccomp-golang)
   166  BuildRequires: golang(github.com/snapcore/go-gettext)
   167  BuildRequires: golang(golang.org/x/crypto/openpgp/armor)
   168  BuildRequires: golang(golang.org/x/crypto/openpgp/packet)
   169  BuildRequires: golang(golang.org/x/crypto/sha3)
   170  BuildRequires: golang(golang.org/x/crypto/ssh/terminal)
   171  BuildRequires: golang(golang.org/x/xerrors)
   172  BuildRequires: golang(golang.org/x/xerrors/internal)
   173  BuildRequires: golang(gopkg.in/check.v1)
   174  BuildRequires: golang(gopkg.in/macaroon.v1)
   175  BuildRequires: golang(gopkg.in/mgo.v2/bson)
   176  BuildRequires: golang(gopkg.in/retry.v1)
   177  BuildRequires: golang(gopkg.in/tomb.v2)
   178  BuildRequires: golang(gopkg.in/yaml.v2)
   179  %endif
   180  
   181  %description
   182  Snappy is a modern, cross-distribution, transactional package manager
   183  designed for working with self-contained, immutable packages.
   184  
   185  %package -n snap-confine
   186  Summary:        Confinement system for snap applications
   187  License:        GPLv3
   188  BuildRequires:  autoconf
   189  BuildRequires:  automake
   190  BuildRequires:  libtool
   191  BuildRequires:  gcc
   192  BuildRequires:  gettext
   193  BuildRequires:  gnupg
   194  BuildRequires:  pkgconfig(glib-2.0)
   195  BuildRequires:  pkgconfig(libcap)
   196  BuildRequires:  pkgconfig(libseccomp)
   197  %if 0%{?with_selinux}
   198  BuildRequires:  pkgconfig(libselinux)
   199  %endif
   200  BuildRequires:  pkgconfig(libudev)
   201  BuildRequires:  pkgconfig(systemd)
   202  BuildRequires:  pkgconfig(udev)
   203  BuildRequires:  xfsprogs-devel
   204  BuildRequires:  glibc-static
   205  %if ! 0%{?rhel}
   206  BuildRequires:  libseccomp-static
   207  %endif
   208  BuildRequires:  valgrind
   209  BuildRequires:  %{_bindir}/rst2man
   210  %if 0%{?fedora}
   211  # ShellCheck in EPEL is too old...
   212  BuildRequires:  %{_bindir}/shellcheck
   213  %endif
   214  
   215  # Ensures older version from split packaging is replaced
   216  Obsoletes:      snap-confine < 2.19
   217  
   218  %description -n snap-confine
   219  This package is used internally by snapd to apply confinement to
   220  the started snap applications.
   221  
   222  %if 0%{?with_selinux}
   223  %package selinux
   224  Summary:        SELinux module for snapd
   225  License:        GPLv2+
   226  BuildArch:      noarch
   227  BuildRequires:  selinux-policy, selinux-policy-devel
   228  Requires(post): selinux-policy-base >= %{_selinux_policy_version}
   229  Requires(post): policycoreutils
   230  %if 0%{?rhel} == 7
   231  Requires(post): policycoreutils-python
   232  %else
   233  Requires(post): policycoreutils-python-utils
   234  %endif
   235  Requires(pre):  libselinux-utils
   236  Requires(post): libselinux-utils
   237  
   238  %description selinux
   239  This package provides the SELinux policy module to ensure snapd
   240  runs properly under an environment with SELinux enabled.
   241  %endif
   242  
   243  %if 0%{?with_devel}
   244  %package devel
   245  Summary:       Development files for %{name}
   246  BuildArch:     noarch
   247  
   248  %if 0%{?with_check} && ! 0%{?with_bundled}
   249  %endif
   250  
   251  %if ! 0%{?with_bundled}
   252  Requires:      golang(github.com/boltdb/bolt)
   253  Requires:      golang(github.com/coreos/go-systemd/activation)
   254  Requires:      golang(github.com/godbus/dbus)
   255  Requires:      golang(github.com/godbus/dbus/introspect)
   256  Requires:      golang(github.com/gorilla/mux)
   257  Requires:      golang(github.com/jessevdk/go-flags)
   258  Requires:      golang(github.com/juju/ratelimit)
   259  Requires:      golang(github.com/kr/pretty)
   260  Requires:      golang(github.com/kr/text)
   261  Requires:      golang(github.com/mvo5/goconfigparser)
   262  Requires:      golang(github.com/seccomp/libseccomp-golang)
   263  Requires:      golang(github.com/snapcore/go-gettext)
   264  Requires:      golang(golang.org/x/crypto/openpgp/armor)
   265  Requires:      golang(golang.org/x/crypto/openpgp/packet)
   266  Requires:      golang(golang.org/x/crypto/sha3)
   267  Requires:      golang(golang.org/x/crypto/ssh/terminal)
   268  Requires:      golang(golang.org/x/xerrors)
   269  Requires:      golang(golang.org/x/xerrors/internal)
   270  Requires:      golang(gopkg.in/check.v1)
   271  Requires:      golang(gopkg.in/macaroon.v1)
   272  Requires:      golang(gopkg.in/mgo.v2/bson)
   273  Requires:      golang(gopkg.in/retry.v1)
   274  Requires:      golang(gopkg.in/tomb.v2)
   275  Requires:      golang(gopkg.in/yaml.v2)
   276  %else
   277  # These Provides are unversioned because the sources in
   278  # the bundled tarball are unversioned (they go by git commit)
   279  # *sigh*... I hate golang...
   280  Provides:      bundled(golang(github.com/snapcore/bolt))
   281  Provides:      bundled(golang(github.com/coreos/go-systemd/activation))
   282  Provides:      bundled(golang(github.com/godbus/dbus))
   283  Provides:      bundled(golang(github.com/godbus/dbus/introspect))
   284  Provides:      bundled(golang(github.com/gorilla/mux))
   285  Provides:      bundled(golang(github.com/jessevdk/go-flags))
   286  Provides:      bundled(golang(github.com/juju/ratelimit))
   287  Provides:      bundled(golang(github.com/kr/pretty))
   288  Provides:      bundled(golang(github.com/kr/text))
   289  Provides:      bundled(golang(github.com/mvo5/goconfigparser))
   290  Provides:      bundled(golang(github.com/mvo5/libseccomp-golang))
   291  Provides:      bundled(golang(github.com/snapcore/go-gettext))
   292  Provides:      bundled(golang(golang.org/x/crypto/openpgp/armor))
   293  Provides:      bundled(golang(golang.org/x/crypto/openpgp/packet))
   294  Provides:      bundled(golang(golang.org/x/crypto/sha3))
   295  Provides:      bundled(golang(golang.org/x/crypto/ssh/terminal))
   296  Provides:      bundled(golang(golang.org/x/xerrors))
   297  Provides:      bundled(golang(golang.org/x/xerrors/internal))
   298  Provides:      bundled(golang(gopkg.in/check.v1))
   299  Provides:      bundled(golang(gopkg.in/macaroon.v1))
   300  Provides:      bundled(golang(gopkg.in/mgo.v2/bson))
   301  Provides:      bundled(golang(gopkg.in/retry.v1))
   302  Provides:      bundled(golang(gopkg.in/tomb.v2))
   303  Provides:      bundled(golang(gopkg.in/yaml.v2))
   304  %endif
   305  
   306  # Generated by gofed
   307  Provides:      golang(%{import_path}/advisor) = %{version}-%{release}
   308  Provides:      golang(%{import_path}/arch) = %{version}-%{release}
   309  Provides:      golang(%{import_path}/asserts) = %{version}-%{release}
   310  Provides:      golang(%{import_path}/asserts/assertstest) = %{version}-%{release}
   311  Provides:      golang(%{import_path}/asserts/internal) = %{version}-%{release}
   312  Provides:      golang(%{import_path}/asserts/signtool) = %{version}-%{release}
   313  Provides:      golang(%{import_path}/asserts/snapasserts) = %{version}-%{release}
   314  Provides:      golang(%{import_path}/asserts/sysdb) = %{version}-%{release}
   315  Provides:      golang(%{import_path}/asserts/systestkeys) = %{version}-%{release}
   316  Provides:      golang(%{import_path}/boot) = %{version}-%{release}
   317  Provides:      golang(%{import_path}/boot/boottest) = %{version}-%{release}
   318  Provides:      golang(%{import_path}/bootloader) = %{version}-%{release}
   319  Provides:      golang(%{import_path}/bootloader/androidbootenv) = %{version}-%{release}
   320  Provides:      golang(%{import_path}/bootloader/assets) = %{version}-%{release}
   321  Provides:      golang(%{import_path}/bootloader/assets/genasset) = %{version}-%{release}
   322  Provides:      golang(%{import_path}/bootloader/bootloadertest) = %{version}-%{release}
   323  Provides:      golang(%{import_path}/bootloader/efi) = %{version}-%{release}
   324  Provides:      golang(%{import_path}/bootloader/grubenv) = %{version}-%{release}
   325  Provides:      golang(%{import_path}/bootloader/lkenv) = %{version}-%{release}
   326  Provides:      golang(%{import_path}/bootloader/ubootenv) = %{version}-%{release}
   327  Provides:      golang(%{import_path}/client) = %{version}-%{release}
   328  Provides:      golang(%{import_path}/client/clientutil) = %{version}-%{release}
   329  Provides:      golang(%{import_path}/cmd/snap) = %{version}-%{release}
   330  Provides:      golang(%{import_path}/cmd/snap-bootstrap) = %{version}-%{release}
   331  Provides:      golang(%{import_path}/cmd/snap-bootstrap/triggerwatch) = %{version}-%{release}
   332  Provides:      golang(%{import_path}/cmd/snap-exec) = %{version}-%{release}
   333  Provides:      golang(%{import_path}/cmd/snap-failure) = %{version}-%{release}
   334  Provides:      golang(%{import_path}/cmd/snap-preseed) = %{version}-%{release}
   335  Provides:      golang(%{import_path}/cmd/snap-recovery-chooser) = %{version}-%{release}
   336  Provides:      golang(%{import_path}/cmd/snap-repair) = %{version}-%{release}
   337  Provides:      golang(%{import_path}/cmd/snap-seccomp) = %{version}-%{release}
   338  Provides:      golang(%{import_path}/cmd/snap-seccomp/syscalls) = %{version}-%{release}
   339  Provides:      golang(%{import_path}/cmd/snap-update-ns) = %{version}-%{release}
   340  Provides:      golang(%{import_path}/cmd/snapctl) = %{version}-%{release}
   341  Provides:      golang(%{import_path}/cmd/snapd) = %{version}-%{release}
   342  Provides:      golang(%{import_path}/cmd/snaplock) = %{version}-%{release}
   343  Provides:      golang(%{import_path}/cmd/snaplock/runinhibit) = %{version}-%{release}
   344  Provides:      golang(%{import_path}/daemon) = %{version}-%{release}
   345  Provides:      golang(%{import_path}/dbusutil) = %{version}-%{release}
   346  Provides:      golang(%{import_path}/dbusutil/dbustest) = %{version}-%{release}
   347  Provides:      golang(%{import_path}/desktop/notification) = %{version}-%{release}
   348  Provides:      golang(%{import_path}/desktop/notification/notificationtest) = %{version}-%{release}
   349  Provides:      golang(%{import_path}/dirs) = %{version}-%{release}
   350  Provides:      golang(%{import_path}/docs) = %{version}-%{release}
   351  Provides:      golang(%{import_path}/errtracker) = %{version}-%{release}
   352  Provides:      golang(%{import_path}/features) = %{version}-%{release}
   353  Provides:      golang(%{import_path}/gadget) = %{version}-%{release}
   354  Provides:      golang(%{import_path}/gadget/edition) = %{version}-%{release}
   355  Provides:      golang(%{import_path}/gadget/install) = %{version}-%{release}
   356  Provides:      golang(%{import_path}/gadget/internal) = %{version}-%{release}
   357  Provides:      golang(%{import_path}/gadget/quantity) = %{version}-%{release}
   358  Provides:      golang(%{import_path}/httputil) = %{version}-%{release}
   359  Provides:      golang(%{import_path}/i18n) = %{version}-%{release}
   360  Provides:      golang(%{import_path}/i18n/xgettext-go) = %{version}-%{release}
   361  Provides:      golang(%{import_path}/image) = %{version}-%{release}
   362  Provides:      golang(%{import_path}/interfaces) = %{version}-%{release}
   363  Provides:      golang(%{import_path}/interfaces/apparmor) = %{version}-%{release}
   364  Provides:      golang(%{import_path}/interfaces/backends) = %{version}-%{release}
   365  Provides:      golang(%{import_path}/interfaces/builtin) = %{version}-%{release}
   366  Provides:      golang(%{import_path}/interfaces/dbus) = %{version}-%{release}
   367  Provides:      golang(%{import_path}/interfaces/hotplug) = %{version}-%{release}
   368  Provides:      golang(%{import_path}/interfaces/ifacetest) = %{version}-%{release}
   369  Provides:      golang(%{import_path}/interfaces/kmod) = %{version}-%{release}
   370  Provides:      golang(%{import_path}/interfaces/mount) = %{version}-%{release}
   371  Provides:      golang(%{import_path}/interfaces/policy) = %{version}-%{release}
   372  Provides:      golang(%{import_path}/interfaces/seccomp) = %{version}-%{release}
   373  Provides:      golang(%{import_path}/interfaces/systemd) = %{version}-%{release}
   374  Provides:      golang(%{import_path}/interfaces/udev) = %{version}-%{release}
   375  Provides:      golang(%{import_path}/interfaces/utils) = %{version}-%{release}
   376  Provides:      golang(%{import_path}/jsonutil) = %{version}-%{release}
   377  Provides:      golang(%{import_path}/jsonutil/safejson) = %{version}-%{release}
   378  Provides:      golang(%{import_path}/kernel) = %{version}-%{release}
   379  Provides:      golang(%{import_path}/logger) = %{version}-%{release}
   380  Provides:      golang(%{import_path}/metautil) = %{version}-%{release}
   381  Provides:      golang(%{import_path}/netutil) = %{version}-%{release}
   382  Provides:      golang(%{import_path}/osutil) = %{version}-%{release}
   383  Provides:      golang(%{import_path}/osutil/disks) = %{version}-%{release}
   384  Provides:      golang(%{import_path}/osutil/mount) = %{version}-%{release}
   385  Provides:      golang(%{import_path}/osutil/squashfs) = %{version}-%{release}
   386  Provides:      golang(%{import_path}/osutil/strace) = %{version}-%{release}
   387  Provides:      golang(%{import_path}/osutil/sys) = %{version}-%{release}
   388  Provides:      golang(%{import_path}/osutil/udev/crawler) = %{version}-%{release}
   389  Provides:      golang(%{import_path}/osutil/udev/netlink) = %{version}-%{release}
   390  Provides:      golang(%{import_path}/overlord) = %{version}-%{release}
   391  Provides:      golang(%{import_path}/overlord/assertstate) = %{version}-%{release}
   392  Provides:      golang(%{import_path}/overlord/assertstate/assertstatetest) = %{version}-%{release}
   393  Provides:      golang(%{import_path}/overlord/auth) = %{version}-%{release}
   394  Provides:      golang(%{import_path}/overlord/cmdstate) = %{version}-%{release}
   395  Provides:      golang(%{import_path}/overlord/configstate) = %{version}-%{release}
   396  Provides:      golang(%{import_path}/overlord/configstate/config) = %{version}-%{release}
   397  Provides:      golang(%{import_path}/overlord/configstate/configcore) = %{version}-%{release}
   398  Provides:      golang(%{import_path}/overlord/configstate/proxyconf) = %{version}-%{release}
   399  Provides:      golang(%{import_path}/overlord/configstate/settings) = %{version}-%{release}
   400  Provides:      golang(%{import_path}/overlord/devicestate) = %{version}-%{release}
   401  Provides:      golang(%{import_path}/overlord/devicestate/devicestatetest) = %{version}-%{release}
   402  Provides:      golang(%{import_path}/overlord/devicestate/fde) = %{version}-%{release}
   403  Provides:      golang(%{import_path}/overlord/devicestate/internal) = %{version}-%{release}
   404  Provides:      golang(%{import_path}/overlord/healthstate) = %{version}-%{release}
   405  Provides:      golang(%{import_path}/overlord/hookstate) = %{version}-%{release}
   406  Provides:      golang(%{import_path}/overlord/hookstate/ctlcmd) = %{version}-%{release}
   407  Provides:      golang(%{import_path}/overlord/hookstate/hooktest) = %{version}-%{release}
   408  Provides:      golang(%{import_path}/overlord/ifacestate) = %{version}-%{release}
   409  Provides:      golang(%{import_path}/overlord/ifacestate/ifacerepo) = %{version}-%{release}
   410  Provides:      golang(%{import_path}/overlord/ifacestate/udevmonitor) = %{version}-%{release}
   411  Provides:      golang(%{import_path}/overlord/patch) = %{version}-%{release}
   412  Provides:      golang(%{import_path}/overlord/servicestate) = %{version}-%{release}
   413  Provides:      golang(%{import_path}/overlord/snapshotstate) = %{version}-%{release}
   414  Provides:      golang(%{import_path}/overlord/snapshotstate/backend) = %{version}-%{release}
   415  Provides:      golang(%{import_path}/overlord/snapstate) = %{version}-%{release}
   416  Provides:      golang(%{import_path}/overlord/snapstate/backend) = %{version}-%{release}
   417  Provides:      golang(%{import_path}/overlord/snapstate/policy) = %{version}-%{release}
   418  Provides:      golang(%{import_path}/overlord/snapstate/snapstatetest) = %{version}-%{release}
   419  Provides:      golang(%{import_path}/overlord/standby) = %{version}-%{release}
   420  Provides:      golang(%{import_path}/overlord/state) = %{version}-%{release}
   421  Provides:      golang(%{import_path}/overlord/storecontext) = %{version}-%{release}
   422  Provides:      golang(%{import_path}/polkit) = %{version}-%{release}
   423  Provides:      golang(%{import_path}/progress) = %{version}-%{release}
   424  Provides:      golang(%{import_path}/progress/progresstest) = %{version}-%{release}
   425  Provides:      golang(%{import_path}/randutil) = %{version}-%{release}
   426  Provides:      golang(%{import_path}/release) = %{version}-%{release}
   427  Provides:      golang(%{import_path}/sandbox) = %{version}-%{release}
   428  Provides:      golang(%{import_path}/sandbox/apparmor) = %{version}-%{release}
   429  Provides:      golang(%{import_path}/sandbox/cgroup) = %{version}-%{release}
   430  Provides:      golang(%{import_path}/sandbox/seccomp) = %{version}-%{release}
   431  Provides:      golang(%{import_path}/sandbox/selinux) = %{version}-%{release}
   432  Provides:      golang(%{import_path}/sanity) = %{version}-%{release}
   433  Provides:      golang(%{import_path}/secboot) = %{version}-%{release}
   434  Provides:      golang(%{import_path}/seed) = %{version}-%{release}
   435  Provides:      golang(%{import_path}/seed/internal) = %{version}-%{release}
   436  Provides:      golang(%{import_path}/seed/seedtest) = %{version}-%{release}
   437  Provides:      golang(%{import_path}/seed/seedwriter) = %{version}-%{release}
   438  Provides:      golang(%{import_path}/snap) = %{version}-%{release}
   439  Provides:      golang(%{import_path}/snap/channel) = %{version}-%{release}
   440  Provides:      golang(%{import_path}/snap/internal) = %{version}-%{release}
   441  Provides:      golang(%{import_path}/snap/naming) = %{version}-%{release}
   442  Provides:      golang(%{import_path}/snap/pack) = %{version}-%{release}
   443  Provides:      golang(%{import_path}/snap/snapdir) = %{version}-%{release}
   444  Provides:      golang(%{import_path}/snap/snapenv) = %{version}-%{release}
   445  Provides:      golang(%{import_path}/snap/snapfile) = %{version}-%{release}
   446  Provides:      golang(%{import_path}/snap/snaptest) = %{version}-%{release}
   447  Provides:      golang(%{import_path}/snap/squashfs) = %{version}-%{release}
   448  Provides:      golang(%{import_path}/snapdenv) = %{version}-%{release}
   449  Provides:      golang(%{import_path}/snapdtool) = %{version}-%{release}
   450  Provides:      golang(%{import_path}/spdx) = %{version}-%{release}
   451  Provides:      golang(%{import_path}/store) = %{version}-%{release}
   452  Provides:      golang(%{import_path}/store/storetest) = %{version}-%{release}
   453  Provides:      golang(%{import_path}/strutil) = %{version}-%{release}
   454  Provides:      golang(%{import_path}/strutil/chrorder) = %{version}-%{release}
   455  Provides:      golang(%{import_path}/strutil/quantity) = %{version}-%{release}
   456  Provides:      golang(%{import_path}/strutil/shlex) = %{version}-%{release}
   457  Provides:      golang(%{import_path}/sysconfig) = %{version}-%{release}
   458  Provides:      golang(%{import_path}/systemd) = %{version}-%{release}
   459  Provides:      golang(%{import_path}/testutil) = %{version}-%{release}
   460  Provides:      golang(%{import_path}/timeout) = %{version}-%{release}
   461  Provides:      golang(%{import_path}/timeutil) = %{version}-%{release}
   462  Provides:      golang(%{import_path}/timings) = %{version}-%{release}
   463  Provides:      golang(%{import_path}/usersession/agent) = %{version}-%{release}
   464  Provides:      golang(%{import_path}/usersession/autostart) = %{version}-%{release}
   465  Provides:      golang(%{import_path}/usersession/client) = %{version}-%{release}
   466  Provides:      golang(%{import_path}/usersession/userd) = %{version}-%{release}
   467  Provides:      golang(%{import_path}/usersession/userd/ui) = %{version}-%{release}
   468  Provides:      golang(%{import_path}/usersession/xdgopenproxy) = %{version}-%{release}
   469  Provides:      golang(%{import_path}/wrappers) = %{version}-%{release}
   470  Provides:      golang(%{import_path}/x11) = %{version}-%{release}
   471  
   472  %description devel
   473  This package contains library source intended for
   474  building other packages which use import path with
   475  %{import_path} prefix.
   476  %endif
   477  
   478  %if 0%{?with_unit_test} && 0%{?with_devel}
   479  %package unit-test-devel
   480  Summary:         Unit tests for %{name} package
   481  
   482  %if 0%{?with_check}
   483  #Here comes all BuildRequires: PACKAGE the unit tests
   484  #in %%check section need for running
   485  %endif
   486  
   487  # test subpackage tests code from devel subpackage
   488  Requires:        %{name}-devel = %{version}-%{release}
   489  
   490  %description unit-test-devel
   491  This package contains unit tests for project
   492  providing packages with %{import_path} prefix.
   493  %endif
   494  
   495  %prep
   496  %if ! 0%{?with_bundled}
   497  %setup -q
   498  # Ensure there's no bundled stuff accidentally leaking in...
   499  rm -rf vendor/*
   500  %else
   501  # Extract each tarball properly
   502  %setup -q -D -b 1
   503  %endif
   504  # Apply patches
   505  %autopatch -p1
   506  
   507  
   508  %build
   509  # Generate version files
   510  ./mkversion.sh "%{version}-%{release}"
   511  
   512  # Build snapd
   513  mkdir -p src/github.com/snapcore
   514  ln -s ../../../ src/github.com/snapcore/snapd
   515  
   516  %if ! 0%{?with_bundled}
   517  export GOPATH=$(pwd):%{gopath}
   518  %else
   519  export GOPATH=$(pwd):$(pwd)/Godeps/_workspace:%{gopath}
   520  %endif
   521  export GO111MODULE=off
   522  
   523  # see https://github.com/gofed/go-macros/blob/master/rpm/macros.d/macros.go-compilers-golang
   524  BUILDTAGS=
   525  %if 0%{?with_test_keys}
   526  BUILDTAGS="withtestkeys nosecboot"
   527  %else
   528  BUILDTAGS="nosecboot"
   529  %endif
   530  
   531  %if ! 0%{?with_bundled}
   532  # We don't need mvo5 fork for seccomp, as we have seccomp 2.3.x
   533  sed -e "s:github.com/mvo5/libseccomp-golang:github.com/seccomp/libseccomp-golang:g" -i cmd/snap-seccomp/*.go
   534  # We don't need the snapcore fork for bolt - it is just a fix on ppc
   535  sed -e "s:github.com/snapcore/bolt:github.com/boltdb/bolt:g" -i advisor/*.go errtracker/*.go
   536  %endif
   537  
   538  # We have to build snapd first to prevent the build from
   539  # building various things from the tree without additional
   540  # set tags.
   541  %gobuild -o bin/snapd $GOFLAGS %{import_path}/cmd/snapd
   542  BUILDTAGS="${BUILDTAGS} nomanagers"
   543  %gobuild -o bin/snap $GOFLAGS %{import_path}/cmd/snap
   544  %gobuild -o bin/snap-failure $GOFLAGS %{import_path}/cmd/snap-failure
   545  
   546  # To ensure things work correctly with base snaps,
   547  # snap-exec, snap-update-ns, and snapctl need to be built statically
   548  (
   549  %if 0%{?rhel} >= 8
   550      # since 1.12.1, the go-toolset module is built with FIPS compliance that
   551      # defaults to using libcrypto.so which gets loaded at runtime via dlopen(),
   552      # disable that functionality for statically built binaries
   553      BUILDTAGS="${BUILDTAGS} no_openssl"
   554  %endif
   555      %gobuild_static -o bin/snap-exec $GOFLAGS %{import_path}/cmd/snap-exec
   556      %gobuild_static -o bin/snap-update-ns $GOFLAGS %{import_path}/cmd/snap-update-ns
   557      %gobuild_static -o bin/snapctl $GOFLAGS %{import_path}/cmd/snapctl
   558  )
   559  
   560  %if 0%{?rhel}
   561  # There's no static link library for libseccomp in RHEL/CentOS...
   562  sed -e "s/-Bstatic -lseccomp/-Bstatic/g" -i cmd/snap-seccomp/*.go
   563  %endif
   564  %gobuild -o bin/snap-seccomp $GOFLAGS %{import_path}/cmd/snap-seccomp
   565  
   566  %if 0%{?with_selinux}
   567  (
   568  %if 0%{?rhel} == 7
   569      M4PARAM='-D distro_rhel7'
   570  %endif
   571      # Build SELinux module
   572      cd ./data/selinux
   573      # pass M4PARAM in env instead of as an override, so that make can still
   574      # manipulate it freely, for more details see:
   575      # https://www.gnu.org/software/make/manual/html_node/Override-Directive.html
   576      M4PARAM="$M4PARAM" make SHARE="%{_datadir}" TARGETS="snappy"
   577  )
   578  %endif
   579  
   580  # Build snap-confine
   581  pushd ./cmd
   582  autoreconf --force --install --verbose
   583  # FIXME: add --enable-caps-over-setuid as soon as possible (setuid discouraged!)
   584  %configure \
   585      --disable-apparmor \
   586  %if 0%{?with_selinux}
   587      --enable-selinux \
   588  %endif
   589      --libexecdir=%{_libexecdir}/snapd/ \
   590      --enable-nvidia-biarch \
   591      %{?with_multilib:--with-32bit-libdir=%{_prefix}/lib} \
   592      --with-snap-mount-dir=%{_sharedstatedir}/snapd/snap \
   593      --enable-merged-usr
   594  
   595  %make_build
   596  popd
   597  
   598  # Build systemd units, dbus services, and env files
   599  pushd ./data
   600  make BINDIR="%{_bindir}" LIBEXECDIR="%{_libexecdir}" \
   601       SYSTEMDSYSTEMUNITDIR="%{_unitdir}" \
   602       SNAP_MOUNT_DIR="%{_sharedstatedir}/snapd/snap" \
   603       SNAPD_ENVIRONMENT_FILE="%{_sysconfdir}/sysconfig/snapd"
   604  popd
   605  
   606  %install
   607  install -d -p %{buildroot}%{_bindir}
   608  install -d -p %{buildroot}%{_libexecdir}/snapd
   609  install -d -p %{buildroot}%{_mandir}/man8
   610  install -d -p %{buildroot}%{_environmentdir}
   611  install -d -p %{buildroot}%{_systemdgeneratordir}
   612  install -d -p %{buildroot}%{_systemd_system_env_generator_dir}
   613  install -d -p %{buildroot}%{_unitdir}
   614  install -d -p %{buildroot}%{_userunitdir}
   615  install -d -p %{buildroot}%{_sysconfdir}/profile.d
   616  install -d -p %{buildroot}%{_sysconfdir}/sysconfig
   617  install -d -p %{buildroot}%{_sharedstatedir}/snapd/assertions
   618  install -d -p %{buildroot}%{_sharedstatedir}/snapd/cookie
   619  install -d -p %{buildroot}%{_sharedstatedir}/snapd/dbus-1/services
   620  install -d -p %{buildroot}%{_sharedstatedir}/snapd/dbus-1/system-services
   621  install -d -p %{buildroot}%{_sharedstatedir}/snapd/desktop/applications
   622  install -d -p %{buildroot}%{_sharedstatedir}/snapd/device
   623  install -d -p %{buildroot}%{_sharedstatedir}/snapd/hostfs
   624  install -d -p %{buildroot}%{_sharedstatedir}/snapd/inhibit
   625  install -d -p %{buildroot}%{_sharedstatedir}/snapd/lib/gl
   626  install -d -p %{buildroot}%{_sharedstatedir}/snapd/lib/gl32
   627  install -d -p %{buildroot}%{_sharedstatedir}/snapd/lib/glvnd
   628  install -d -p %{buildroot}%{_sharedstatedir}/snapd/lib/vulkan
   629  install -d -p %{buildroot}%{_sharedstatedir}/snapd/mount
   630  install -d -p %{buildroot}%{_sharedstatedir}/snapd/seccomp/bpf
   631  install -d -p %{buildroot}%{_sharedstatedir}/snapd/snaps
   632  install -d -p %{buildroot}%{_sharedstatedir}/snapd/snap/bin
   633  install -d -p %{buildroot}%{_localstatedir}/snap
   634  install -d -p %{buildroot}%{_localstatedir}/cache/snapd
   635  install -d -p %{buildroot}%{_datadir}/polkit-1/actions
   636  %if 0%{?with_selinux}
   637  install -d -p %{buildroot}%{_datadir}/selinux/devel/include/contrib
   638  install -d -p %{buildroot}%{_datadir}/selinux/packages
   639  %endif
   640  
   641  # Install snap and snapd
   642  install -p -m 0755 bin/snap %{buildroot}%{_bindir}
   643  install -p -m 0755 bin/snap-exec %{buildroot}%{_libexecdir}/snapd
   644  install -p -m 0755 bin/snap-failure %{buildroot}%{_libexecdir}/snapd
   645  install -p -m 0755 bin/snapd %{buildroot}%{_libexecdir}/snapd
   646  install -p -m 0755 bin/snap-update-ns %{buildroot}%{_libexecdir}/snapd
   647  install -p -m 0755 bin/snap-seccomp %{buildroot}%{_libexecdir}/snapd
   648  # Ensure /usr/bin/snapctl is a symlink to /usr/libexec/snapd/snapctl
   649  install -p -m 0755 bin/snapctl %{buildroot}%{_libexecdir}/snapd/snapctl
   650  ln -sf %{_libexecdir}/snapd/snapctl %{buildroot}%{_bindir}/snapctl
   651  
   652  %if 0%{?with_selinux}
   653  # Install SELinux module
   654  install -p -m 0644 data/selinux/snappy.if %{buildroot}%{_datadir}/selinux/devel/include/contrib
   655  install -p -m 0644 data/selinux/snappy.pp.bz2 %{buildroot}%{_datadir}/selinux/packages
   656  %endif
   657  
   658  # Install snap(8) man page
   659  bin/snap help --man > %{buildroot}%{_mandir}/man8/snap.8
   660  
   661  # Install the "info" data file with snapd version
   662  install -m 644 -D data/info %{buildroot}%{_libexecdir}/snapd/info
   663  
   664  # Install bash completion for "snap"
   665  install -m 644 -D data/completion/bash/snap %{buildroot}%{_datadir}/bash-completion/completions/snap
   666  install -m 644 -D data/completion/bash/complete.sh %{buildroot}%{_libexecdir}/snapd
   667  install -m 644 -D data/completion/bash/etelpmoc.sh %{buildroot}%{_libexecdir}/snapd
   668  # Install zsh completion for "snap"
   669  install -d -p %{buildroot}%{_datadir}/zsh/site-functions
   670  install -m 644 -D data/completion/zsh/_snap %{buildroot}%{_datadir}/zsh/site-functions/_snap
   671  
   672  # Install snap-confine
   673  pushd ./cmd
   674  %make_install
   675  # Undo the 0111 permissions, they are restored in the files section
   676  chmod 0755 %{buildroot}%{_sharedstatedir}/snapd/void
   677  # We don't use AppArmor
   678  rm -rfv %{buildroot}%{_sysconfdir}/apparmor.d
   679  # ubuntu-core-launcher is dead
   680  rm -fv %{buildroot}%{_bindir}/ubuntu-core-launcher
   681  popd
   682  
   683  # Install all systemd and dbus units, and env files
   684  pushd ./data
   685  %make_install BINDIR="%{_bindir}" LIBEXECDIR="%{_libexecdir}" \
   686                SYSTEMDSYSTEMUNITDIR="%{_unitdir}" SYSTEMDUSERUNITDIR="%{_userunitdir}" \
   687                SNAP_MOUNT_DIR="%{_sharedstatedir}/snapd/snap" \
   688                SNAPD_ENVIRONMENT_FILE="%{_sysconfdir}/sysconfig/snapd"
   689  popd
   690  
   691  %if 0%{?rhel} == 7
   692  # Install kernel tweaks
   693  # See: https://access.redhat.com/articles/3128691
   694  install -m 644 -D data/sysctl/rhel7-snap.conf %{buildroot}%{_sysctldir}/99-snap.conf
   695  %endif
   696  
   697  # Remove snappy core specific units
   698  rm -fv %{buildroot}%{_unitdir}/snapd.system-shutdown.service
   699  rm -fv %{buildroot}%{_unitdir}/snapd.snap-repair.*
   700  rm -fv %{buildroot}%{_unitdir}/snapd.core-fixup.*
   701  rm -fv %{buildroot}%{_unitdir}/snapd.recovery-chooser-trigger.service
   702  
   703  # Remove snappy core specific scripts and binaries
   704  rm %{buildroot}%{_libexecdir}/snapd/snapd.core-fixup.sh
   705  rm %{buildroot}%{_libexecdir}/snapd/system-shutdown
   706  
   707  # Remove snapd apparmor service
   708  rm -f %{buildroot}%{_unitdir}/snapd.apparmor.service
   709  rm -f %{buildroot}%{_libexecdir}/snapd/snapd-apparmor
   710  
   711  # Install Polkit configuration
   712  install -m 644 -D data/polkit/io.snapcraft.snapd.policy %{buildroot}%{_datadir}/polkit-1/actions
   713  
   714  # Disable re-exec by default
   715  echo 'SNAP_REEXEC=0' > %{buildroot}%{_sysconfdir}/sysconfig/snapd
   716  
   717  # Create state.json and the README file to be ghosted
   718  touch %{buildroot}%{_sharedstatedir}/snapd/state.json
   719  touch %{buildroot}%{_sharedstatedir}/snapd/snap/README
   720  
   721  # When enabled, create a symlink for /snap to point to /var/lib/snapd/snap
   722  %if %{with snap_symlink}
   723  ln -sr %{buildroot}%{_sharedstatedir}/snapd/snap %{buildroot}/snap
   724  %endif
   725  
   726  # source codes for building projects
   727  %if 0%{?with_devel}
   728  install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
   729  echo "%%dir %%{gopath}/src/%%{import_path}/." >> devel.file-list
   730  # find all *.go but no *_test.go files and generate devel.file-list
   731  for file in $(find . -iname "*.go" -o -iname "*.s" \! -iname "*_test.go") ; do
   732      echo "%%dir %%{gopath}/src/%%{import_path}/$(dirname $file)" >> devel.file-list
   733      install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$(dirname $file)
   734      cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
   735      echo "%%{gopath}/src/%%{import_path}/$file" >> devel.file-list
   736  done
   737  %endif
   738  
   739  # testing files for this project
   740  %if 0%{?with_unit_test} && 0%{?with_devel}
   741  install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
   742  # find all *_test.go files and generate unit-test.file-list
   743  for file in $(find . -iname "*_test.go"); do
   744      echo "%%dir %%{gopath}/src/%%{import_path}/$(dirname $file)" >> devel.file-list
   745      install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$(dirname $file)
   746      cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
   747      echo "%%{gopath}/src/%%{import_path}/$file" >> unit-test-devel.file-list
   748  done
   749  
   750  # Install additional testdata
   751  install -d %{buildroot}/%{gopath}/src/%{import_path}/cmd/snap/test-data/
   752  cp -pav cmd/snap/test-data/* %{buildroot}/%{gopath}/src/%{import_path}/cmd/snap/test-data/
   753  echo "%%{gopath}/src/%%{import_path}/cmd/snap/test-data" >> unit-test-devel.file-list
   754  %endif
   755  
   756  %if 0%{?with_devel}
   757  sort -u -o devel.file-list devel.file-list
   758  %endif
   759  
   760  %check
   761  for binary in snap-exec snap-update-ns snapctl; do
   762      ldd bin/$binary 2>&1 | grep 'not a dynamic executable'
   763  done
   764  
   765  # snapd tests
   766  %if 0%{?with_check} && 0%{?with_unit_test} && 0%{?with_devel}
   767  %if ! 0%{?with_bundled}
   768  export GOPATH=%{buildroot}/%{gopath}:%{gopath}
   769  %else
   770  export GOPATH=%{buildroot}/%{gopath}:$(pwd)/Godeps/_workspace:%{gopath}
   771  %endif
   772  export GO111MODULE=off
   773  %gotest %{import_path}/...
   774  %endif
   775  
   776  # snap-confine tests (these always run!)
   777  pushd ./cmd
   778  make check
   779  popd
   780  
   781  %files
   782  #define license tag if not already defined
   783  %{!?_licensedir:%global license %doc}
   784  %license COPYING
   785  %doc README.md docs/*
   786  %{_bindir}/snap
   787  %{_bindir}/snapctl
   788  %{_environmentdir}/990-snapd.conf
   789  %if 0%{?rhel} == 7
   790  %{_sysctldir}/99-snap.conf
   791  %endif
   792  %dir %{_libexecdir}/snapd
   793  %{_libexecdir}/snapd/snapctl
   794  %{_libexecdir}/snapd/snapd
   795  %{_libexecdir}/snapd/snap-exec
   796  %{_libexecdir}/snapd/snap-failure
   797  %{_libexecdir}/snapd/info
   798  %{_libexecdir}/snapd/snap-mgmt
   799  %if 0%{?with_selinux}
   800  %{_libexecdir}/snapd/snap-mgmt-selinux
   801  %endif
   802  %{_mandir}/man8/snap.8*
   803  %{_datadir}/applications/snap-handle-link.desktop
   804  %{_datadir}/bash-completion/completions/snap
   805  %{_libexecdir}/snapd/complete.sh
   806  %{_libexecdir}/snapd/etelpmoc.sh
   807  %{_datadir}/zsh/site-functions/_snap
   808  %{_libexecdir}/snapd/snapd.run-from-snap
   809  %{_sysconfdir}/profile.d/snapd.sh
   810  %{_mandir}/man8/snapd-env-generator.8*
   811  %{_systemd_system_env_generator_dir}/snapd-env-generator
   812  %{_unitdir}/snapd.socket
   813  %{_unitdir}/snapd.service
   814  %{_unitdir}/snapd.autoimport.service
   815  %{_unitdir}/snapd.failure.service
   816  %{_unitdir}/snapd.seeded.service
   817  %{_userunitdir}/snapd.session-agent.service
   818  %{_userunitdir}/snapd.session-agent.socket
   819  %{_datadir}/dbus-1/services/io.snapcraft.Launcher.service
   820  %{_datadir}/dbus-1/services/io.snapcraft.SessionAgent.service
   821  %{_datadir}/dbus-1/services/io.snapcraft.Settings.service
   822  %{_datadir}/dbus-1/session.d/snapd.session-services.conf
   823  %{_datadir}/dbus-1/system.d/snapd.system-services.conf
   824  %{_datadir}/polkit-1/actions/io.snapcraft.snapd.policy
   825  %{_datadir}/applications/io.snapcraft.SessionAgent.desktop
   826  %{_sysconfdir}/xdg/autostart/snap-userd-autostart.desktop
   827  %config(noreplace) %{_sysconfdir}/sysconfig/snapd
   828  %dir %{_sharedstatedir}/snapd
   829  %dir %{_sharedstatedir}/snapd/assertions
   830  %dir %{_sharedstatedir}/snapd/cookie
   831  %dir %{_sharedstatedir}/snapd/dbus-1
   832  %dir %{_sharedstatedir}/snapd/dbus-1/services
   833  %dir %{_sharedstatedir}/snapd/dbus-1/system-services
   834  %dir %{_sharedstatedir}/snapd/desktop
   835  %dir %{_sharedstatedir}/snapd/desktop/applications
   836  %dir %{_sharedstatedir}/snapd/device
   837  %dir %{_sharedstatedir}/snapd/hostfs
   838  %dir %{_sharedstatedir}/snapd/inhibit
   839  %dir %{_sharedstatedir}/snapd/lib
   840  %dir %{_sharedstatedir}/snapd/lib/gl
   841  %dir %{_sharedstatedir}/snapd/lib/gl32
   842  %dir %{_sharedstatedir}/snapd/lib/glvnd
   843  %dir %{_sharedstatedir}/snapd/lib/vulkan
   844  %dir %{_sharedstatedir}/snapd/mount
   845  %dir %{_sharedstatedir}/snapd/seccomp
   846  %dir %{_sharedstatedir}/snapd/seccomp/bpf
   847  %dir %{_sharedstatedir}/snapd/snaps
   848  %dir %{_sharedstatedir}/snapd/snap
   849  %ghost %dir %{_sharedstatedir}/snapd/snap/bin
   850  %dir %{_localstatedir}/cache/snapd
   851  %dir %{_localstatedir}/snap
   852  %ghost %{_sharedstatedir}/snapd/state.json
   853  %ghost %{_sharedstatedir}/snapd/snap/README
   854  %if %{with snap_symlink}
   855  /snap
   856  %endif
   857  # this is typically owned by zsh, but we do not want to explicitly require zsh
   858  %dir %{_datadir}/zsh
   859  %dir %{_datadir}/zsh/site-functions
   860  
   861  %files -n snap-confine
   862  %doc cmd/snap-confine/PORTING
   863  %license COPYING
   864  %dir %{_libexecdir}/snapd
   865  # For now, we can't use caps
   866  # FIXME: Switch to "%%attr(0755,root,root) %%caps(cap_sys_admin=pe)" asap!
   867  %attr(4755,root,root) %{_libexecdir}/snapd/snap-confine
   868  %{_libexecdir}/snapd/snap-device-helper
   869  %{_libexecdir}/snapd/snap-discard-ns
   870  %{_libexecdir}/snapd/snap-gdb-shim
   871  %{_libexecdir}/snapd/snap-gdbserver-shim
   872  %{_libexecdir}/snapd/snap-seccomp
   873  %{_libexecdir}/snapd/snap-update-ns
   874  %{_mandir}/man8/snap-confine.8*
   875  %{_mandir}/man8/snap-discard-ns.8*
   876  %{_systemdgeneratordir}/snapd-generator
   877  %attr(0111,root,root) %{_sharedstatedir}/snapd/void
   878  
   879  %if 0%{?with_selinux}
   880  %files selinux
   881  %license data/selinux/COPYING
   882  %doc data/selinux/README.md
   883  %{_datadir}/selinux/packages/snappy.pp.bz2
   884  %{_datadir}/selinux/devel/include/contrib/snappy.if
   885  %endif
   886  
   887  %if 0%{?with_devel}
   888  %files devel -f devel.file-list
   889  %license COPYING
   890  %doc README.md
   891  %dir %{gopath}/src/%{provider}.%{provider_tld}/%{project}
   892  %endif
   893  
   894  %if 0%{?with_unit_test} && 0%{?with_devel}
   895  %files unit-test-devel -f unit-test-devel.file-list
   896  %license COPYING
   897  %doc README.md
   898  %endif
   899  
   900  %post
   901  %if 0%{?rhel} == 7
   902  %sysctl_apply 99-snap.conf
   903  %endif
   904  %systemd_post %{snappy_svcs}
   905  %systemd_user_post %{snappy_user_svcs}
   906  # If install, test if snapd socket and timer are enabled.
   907  # If enabled, then attempt to start them. This will silently fail
   908  # in chroots or other environments where services aren't expected
   909  # to be started.
   910  if [ $1 -eq 1 ] ; then
   911     if systemctl -q is-enabled snapd.socket > /dev/null 2>&1 ; then
   912        systemctl start snapd.socket > /dev/null 2>&1 || :
   913     fi
   914  fi
   915  
   916  %preun
   917  %systemd_preun %{snappy_svcs}
   918  %systemd_user_preun %{snappy_user_svcs}
   919  
   920  # Remove all Snappy content if snapd is being fully uninstalled
   921  if [ $1 -eq 0 ]; then
   922     %{_libexecdir}/snapd/snap-mgmt --purge || :
   923  fi
   924  
   925  %postun
   926  %systemd_postun_with_restart %{snappy_svcs}
   927  %systemd_user_postun_with_restart %{snappy_user_svcs}
   928  
   929  %if 0%{?with_selinux}
   930  %triggerun -- snapd < 2.39
   931  # TODO: the trigger relies on a very specific snapd version that introduced SELinux
   932  # mount context, figure out how to update the trigger condition to run when needed
   933  
   934  # Trigger on uninstall, with one version of the package being pre 2.38 see
   935  # https://rpm-packaging-guide.github.io/#triggers-and-scriptlets for details
   936  # when triggers are run
   937  if [ "$1" -eq 2 -a "$2" -eq 1 ]; then
   938     # Upgrade from pre 2.38 version
   939     %{_libexecdir}/snapd/snap-mgmt-selinux --patch-selinux-mount-context=system_u:object_r:snappy_snap_t:s0 || :
   940  
   941     # snapd might have created fontconfig cache directory earlier, but with
   942     # incorrect context due to bugs in the policy, make sure it gets the right one
   943     # on upgrade when the new policy was introduced
   944     if [ -d "%{_localstatedir}/cache/fontconfig" ]; then
   945        restorecon -R %{_localstatedir}/cache/fontconfig || :
   946     fi
   947  elif [ "$1" -eq 1 -a "$2" -eq 2 ]; then
   948     # Downgrade to a pre 2.38 version
   949     %{_libexecdir}/snapd/snap-mgmt-selinux --remove-selinux-mount-context=system_u:object_r:snappy_snap_t:s0 || :
   950  fi
   951  
   952  %pre selinux
   953  %selinux_relabel_pre
   954  
   955  %post selinux
   956  %selinux_modules_install %{_datadir}/selinux/packages/snappy.pp.bz2
   957  %selinux_relabel_post
   958  
   959  %posttrans selinux
   960  %selinux_relabel_post
   961  
   962  %postun selinux
   963  %selinux_modules_uninstall snappy
   964  if [ $1 -eq 0 ]; then
   965      %selinux_relabel_post
   966  fi
   967  %endif
   968  
   969  
   970  %changelog
   971  * Fri Aug 27 2021 Ian Johnson <ian.johnson@canonical.com>
   972  - New upstream release 2.51.7
   973   - cmd/snap-seccomp/syscalls: update syscalls list to libseccomp
   974     v2.2.0-428-g5c22d4b1
   975   - tests: cherry-pick shellcheck fix `bd730fd4`
   976   - interfaces/dsp: add /dev/ambad into dsp interface
   977   - many: shellcheck fixes
   978   - snapstate: abort kernel refresh if no gadget update can be found
   979   - overlord: add manager test for "assumes" checking
   980   - store: deal correctly with "assumes" from the store raw yaml
   981  
   982  * Thu Aug 19 2021 Ian Johnson <ian.johnson@canonical.com>
   983  - New upstream release 2.51.6
   984   - secboot: use half the mem for KDF in AddRecoveryKey
   985   - secboot: switch main key KDF memory cost to 32KB
   986  
   987  * Mon Aug 16 2021 Ian Johnson <ian.johnson@canonical.com>
   988  - New upstream release 2.51.5
   989   - snap/squashfs: handle squashfs-tools 4.5+
   990   - tests/core20-install-device-file-install-via-hook-hack: adjust
   991     test for 2.51
   992   - o/devicestate/handlers_install.go: add workaround to create dirs
   993     for install
   994   - tests: fix linter warning
   995   - tests: update other spread tests for new behaviour
   996   - tests: ack assertions by default, add --noack option
   997   - release-tools/changelog.py: also fix opensuse changelog date
   998     format
   999   - release-tools/changelog.py: fix typo in function name
  1000   - release-tools/changelog.py: fix fedora date format
  1001   - release-tools/changelog.py: handle case where we don't have a TZ
  1002   - release-tools/changelog.py: fix line length check
  1003   - release-tools/changelog.py: specify the LP bug for the release as
  1004     an arg too
  1005   - interface/modem-manager: add support for MBIM/QMI proxy
  1006     clients
  1007   - .github/workflows/test.yaml: use snapcraft 4.x to build the snapd
  1008     snap
  1009  
  1010  * Mon Aug 09 2021 Ian Johnson <ian.johnson@canonical.com>
  1011  - New upstream release 2.51.4
  1012   - {device,snap}state: skip kernel extraction in seeding
  1013   - vendor: move to snapshot-4c814e1 branch and set fixed KDF options
  1014   - tests/interfaces/tee: fix HasLen check for udev snippets
  1015   - interfaces/tee: add support for Qualcomm qseecom device node
  1016   - gadget: check for system-save with multi volumes if encrypting
  1017     correctly
  1018   - gadget: drive-by: drop unnecessary/supported passthrough in test
  1019     gadget.yaml
  1020  
  1021  * Wed Jul 14 2021 Ian Johnson <ian.johnson@canonical.com>
  1022  - New upstream release 2.51.3
  1023   - interfaces/builtin: add sd-control interface
  1024   - store: set ResponseHeaderTimeout on the default transport
  1025  
  1026  * Wed Jul 07 2021 Michael Vogt <michael.vogt@ubuntu.com>
  1027  - New upstream release 2.51.2
  1028   - snapstate: remove temporary snap file for local revisions early
  1029   - interface: allows reading sd cards internal info from block-
  1030     devices interface
  1031   - o/ifacestate: do not visit same halt tasks in waitChainSearch to
  1032     avoid slow convergence (or unlikely cycles)
  1033   - corecfg: allow using `# snapd-edit: no` header to disable pi-
  1034     config
  1035   - configcore: ignore system.pi-config.* setting on measured kernels
  1036   - many: pass device/model info to configcore via sysconfig.Device
  1037     interface
  1038   - o/configstate/configcore: support snap set system swap.size=...
  1039   - store: make the log with download size a debug one
  1040   - interfaces/opengl: add support for Imagination PowerVR
  1041  
  1042  * Tue Jun 15 2021 Michael Vogt <michael.vogt@ubuntu.com>
  1043  - New upstream release 2.51.1
  1044   - interfaces: add netlink-driver interface
  1045   - interfaces: builtin: add dm-crypt interface to support external
  1046     storage encryption
  1047   - interfaces/dsp: fix typo in udev rule
  1048   - overlord/snapstate: lock the mutex before returning from stop
  1049     snap services undo
  1050   - interfaces: opengl: change path for Xilinx zocl driver
  1051   - interfaces/dsp: add /dev/cavalry into dsp interface
  1052   - packaging/fedora/snapd.spec: correct date format in changelog
  1053  
  1054  * Thu May 27 2021 Ian Johnson <ian.johnson@canonical.com>
  1055  - New upstream release 2.51
  1056   - cmd/snap: stacktraces debug endpoint
  1057   - secboot: deactivate volume again when model checker fails
  1058   - store: extra log message, a few minor cleanups
  1059   - packaging/debian-sid: update systemd patch
  1060   - snapstate: adjust update-gadget-assets user visible message
  1061   - tests/nested/core/core20-create-recovery: verify that recovery
  1062     system can be created at runtime
  1063   - gadget: support creating vfat partitions during bootstrap
  1064   - daemon/api_quotas.go: support updating quotas with ensure action
  1065   - daemon: tighten access to a couple of POST endpoints that should
  1066     be really be root-only
  1067   - seed/seedtest, overlord/devicestate: move seed validation helper
  1068     to seedtest
  1069   - overlord/hookstate/ctlcmd: remove unneeded parameter
  1070   - snap/quota: add CurrentMemoryUsage for current memory usage of a
  1071     quota group
  1072   - systemd: add CurrentMemoryUsage to get current memory usage for a
  1073     unit
  1074   - o/snapstate: introduce minimalInstallInfo interface
  1075   - o/hookstate: print pending info (ready, inhibited or none)
  1076   - osutil: a helper to find out the total amount of memory in the
  1077     system
  1078   - overlord, overlord/devicestate: allow for reloading modeenv in
  1079     devicemgr when testing
  1080   - daemon: refine access testing
  1081   - spread: disable unattended-upgrades on debian
  1082   - tests/lib/reset: make nc exit after a while when connection is
  1083     idle
  1084   - daemon: replace access control flags on commands with access
  1085     checkers
  1086   - release-tools/changelog.py: refactor regexp + file reading/writing
  1087   - packaging/debian-sid: update locale patch for the latest master
  1088   - overlord/devicestate: tasks for creating recovery systems at
  1089     runtime
  1090   - release-tools/changelog.py: implement script to update all the
  1091     changelog files
  1092   - tests: change machine type used for nested testsPrices:
  1093   - cmd/snap: include locale when linting description being lower case
  1094   - o/servicestate: add RemoveSnapFromQuota
  1095   - interfaces/serial-port: add Qualcomm serial port devices to
  1096     allowed list
  1097   - packaging: merge 2.50.1 changelog back
  1098   - interfaces/builtin: introduce raw-input interface
  1099   - tests: remove tests.cleanup prepare from nested test
  1100   - cmd/snap-update-ns: fix linter errors
  1101   - asserts: fix errors reported by linter
  1102   - o/hookstate/ctlcmd: allow system-mode for non-root
  1103   - overlord/devicestate: comment why explicit system mode check is
  1104     needed in ensuring tried recovery systems (#10275)
  1105   - overlord/devicesate: observe snap writes when creating recovery
  1106     systems
  1107   - packaging/ubuntu-16.04/changelog: add placeholder for 2.50.1
  1108   - tests: moving to tests directories snaps built locally - part 1
  1109   - seed/seedwriter: fail early when system seed directory exists
  1110   - o/snapstate: autorefresh phase1 for refresh-control
  1111   - c/snap: more precise message for ErrorKindSystemRestart op !=
  1112     reboot
  1113   - tests: simplify the tests.cleanup tool
  1114   - boot: helpers for manipulating current and good recovery systems
  1115     list
  1116   - o/hookstate, o/snapstate: print revision, version, channel with
  1117     snapctl --pending
  1118   - overlord:  unit test tweaks, use well known snap IDs, setup snap
  1119     declarations for most common snaps
  1120   - tests/nested/manual: add test for install-device + snapctl reboot
  1121   - o/servicestate: restart slices + services on modifications
  1122   - tests: update mount-ns test to support changes in the distro
  1123   - interfaces: fix linter issues
  1124   - overlord: mock logger in managers unit tests
  1125   - tests: adding support for fedora-34
  1126   - tests: adding support for debian 10 on gce
  1127   - boot: reseal given keys when the respective boot chain has changed
  1128   - secboot: switch encryption key size to 32 byte (thanks to Chris)
  1129   - interfaces/dbus: allow claiming 'well-known' D-Bus names with a
  1130     wildcard suffix
  1131   - spread: bump delta reference version
  1132   - interfaces: builtin: update permitted paths to be compatible with
  1133     UC20
  1134   - overlord: fix errors reported by linter
  1135   - tests: remove old fedora systems from tests
  1136   - tests: update spread url
  1137   - interfaces/camera: allow devices in /sys/devices/platform/**/usb*
  1138   - interfaces/udisks2: Allow access to the login manager via dbus
  1139   - cmd/snap: exit normally if "snap changes" has no changes
  1140     (LP #1823974)
  1141   - tests: more fixes for spread suite on openSUSE
  1142   - tests: fix tests expecting cgroup v1/hybrid on openSUSE Tumbleweed
  1143   - daemon: fix linter errors
  1144   - spread: add Fedora 34, leave a TODO about dropping Fedora 32
  1145   - interfaces: fix linter errors
  1146   - tests: use op.paths tools instead of dirs.sh helper - part 2
  1147   - client: Fix linter errors
  1148   - cmd/snap: Fix errors reported by linter
  1149   - cmd/snap-repair: fix linter issues
  1150   - cmd/snap-bootstrap: Fix linter errors
  1151   - tests: update permission denied message for test-snapd-event on
  1152     ubuntu 2104
  1153   - cmd/snap: small tweaks based on previous reviews
  1154   - snap/snaptest: helper that mocks both the squashfs file and a snap
  1155     directory
  1156   - overlord/devicestate: tweak comment about creating recovery
  1157     systems, formatting tweaks
  1158   - overlord/devicestate: move devicemgr base suite helpers closer to
  1159     test suite struct
  1160   - overlord/devicestate: keep track of tried recovery system
  1161   - seed/seedwriter: clarify in the diagram when SetInfo is called
  1162   - overlord/devicestate: add helper for creating recovery systems at
  1163     runtime
  1164   - snap-seccomp: update syscalls.go list
  1165   - boot,image: support image.Customizations.BootFlags
  1166   - overlord: support snapctl --halt|--poweroff in gadget install-
  1167     device
  1168   - features,servicestate: add experimental.quota-groups flag
  1169   - o/servicestate: address comments from previous PR
  1170   - tests: basic spread test for snap quota commands
  1171   - tests: moving the snaps which are not locally built to the store
  1172     directory
  1173   - image,c/snap: implement prepare-image --customize
  1174   - daemon: implement REST API for quota groups (create / list / get)
  1175   - cmd/snap, client: snap quotas command
  1176   - o/devicestate,o/hookstate/ctlcmd: introduce SystemModeInfo methods
  1177     and snapctl system-mode
  1178   - o/servicestate/quota_control.go: introduce (very) basic group
  1179     manipulation methods
  1180   - cmd/snap, client: snap remove-quota command
  1181   - wrappers, quota: implement quota groups slice generation
  1182   - snap/quotas: followups from previous PR
  1183   - cmd/snap: introduce 'snap quota' command
  1184   - o/configstate/configcore/picfg.go: use ubuntu-seed config.txt in
  1185     uc20 run mode
  1186   - o/servicestate: test has internal ordering issues, consider both
  1187     cases
  1188   - o/servicestate/quotas: add functions for getting and setting
  1189     quotas in state
  1190   - tests: new buckets for snapd-spread project on gce
  1191   - spread.yaml: update the gce project to start using snapd-spread
  1192   - quota: new package for managing resource groups
  1193   - many: bind and check keys against models when using FDE hooks v2
  1194   - many: move responsibilities down seboot -> kernel/fde and boot ->
  1195     secboot
  1196   - packaging: add placeholder changelog
  1197   - o/configstate/configcore/vitality: fix RequireMountedSnapdSnap
  1198     bug
  1199   - overlord: properly mock usr-lib-snapd tests to mimic an Ubuntu
  1200     Core system
  1201   - many: hide EncryptionKey size and refactors for fde hook v2 next
  1202     steps
  1203   - tests: adding debug info for create user tests
  1204   - o/hookstate: add "refresh" command to snapctl (hidden, not
  1205     complete yet)
  1206   - systemd: wait for zfs mounts (LP #1922293)
  1207   - testutil: support referencing files in FileEquals checker
  1208   - many: refactor to kernel/fde and allow `fde-setup initial-setup`
  1209     to return json
  1210   - o/snapstate: store refresh-candidates in the state
  1211   - o/snapstate: helper for creating gate-auto-refresh hooks
  1212   - bootloader/bootloadertest: provide interface implementation as
  1213     mixins, provide a mock for recovery-aware-trusted-asses bootloader
  1214   - tests/lib/nested: do not compress images, return early when
  1215     restored from pristine image
  1216   - boot: split out a helper for making recovery system bootable
  1217   - tests: update os.query check to match new bullseye codename used
  1218     on sid images
  1219   - o/snapstate: helper for getting snaps affected by refresh, define
  1220     new hook
  1221   - wrappers: support in EnsureSnapServices a callback to observe
  1222     changes (#10176)
  1223   - gadget: multi line support in gadget's cmdline file
  1224   - daemon: test that requesting restart from (early) Ensure works
  1225   - tests: use op.paths tools instead of dirs.sh helper - part 1
  1226   - tests: add new command to snaps-state to get current core, kernel
  1227     and gadget
  1228   - boot, gadget: move opening the snap container into the gadget
  1229     helper
  1230   - tests, overlord: extend unit tests, extend spread tests to cover
  1231     full command line support
  1232   - interfaces/builtin: introduce dsp interface
  1233   - boot, bootloader, bootloader/assets: support for full command line
  1234     override from gadget
  1235   - overlord/devicestate, overlord/snapstate: add task for updating
  1236     kernel command lines from gadget
  1237   - o/snapstate: remove unused DeviceCtx argument of
  1238     ensureInstallPreconditions
  1239   - tests/lib/nested: proper status return for tpm/secure boot checks
  1240   - cmd/snap, boot: add snapd_full_cmdline_args to dumped boot vars
  1241   - wrappers/services.go: refactor helper lambda function to separate
  1242     function
  1243   - boot/flags.go: add HostUbuntuDataForMode
  1244   - boot: handle updating of components that contribute to kernel
  1245     command line
  1246   - tests: add 20.04 to systems for nested/core
  1247   - daemon: add new accessChecker implementations
  1248   - boot, overlord/devicestate: consider gadget command lines when
  1249     updating boot config
  1250   - tests: fix prepare-image-grub-core18 for arm devices
  1251   - tests: fix gadget-kernel-refs-update-pc test on arm and when
  1252     $TRUST_TEST_KEY is false
  1253   - tests: enable help test for all the systems
  1254   - boot: set extra command line arguments when preparing run mode
  1255   - boot: load bits of kernel command line from gadget snaps
  1256   - tests: update layout for tests - part 2
  1257   - tests: update layout for tests - part 1
  1258   - tests: remove the snap profiler from the test suite
  1259   - boot: drop gadget snap yaml which is already defined elsewhere in
  1260     the tests
  1261   - boot: set extra kernel command line arguments when making a
  1262     recovery system bootable
  1263   - boot: pass gadget path to command line helpers, load gadget from
  1264     seed
  1265   - tests: new os.paths tool
  1266   - daemon: make ucrednetGet() return a *ucrednet structure
  1267   - boot: derive boot variables for kernel command lines
  1268   - cmd/snap-bootstrap/initramfs-mounts: fix boot-flags location from
  1269     initramfs
  1270  
  1271  * Wed May 19 2021 Ian Johnson <ian.johnson@canonical.com>
  1272  - New upstream release 2.50.1
  1273   - interfaces: update permitted /lib/.. paths to be compatible with 
  1274     UC20
  1275   - interfaces: builtin: update permitted paths to be compatible with
  1276     UC20
  1277   - interfaces/greengrass-support: delete white spaces at the end of
  1278     lines
  1279   - snap-seccomp: update syscalls.go list
  1280   - many: backport kernel command line for 2.50
  1281   - interfaces/dbus: allow claiming 'well-known' D-Bus names with a
  1282     wildcard suffix
  1283   - interfaces/camera: allow devices in /sys/devices/platform/**/usb*
  1284   - interfaces/builtin: introduce dsp interface
  1285  
  1286  * Sat Apr 24 2021 Michael Vogt <mvo@ubuntu.com>
  1287  - New upstream release 2.50
  1288   - overlord: properly mock usr-lib-snapd tests to mimic an Ubuntu
  1289     Core system
  1290   - o/configstate/configcore/vitality: fix RequireMountedSnapdSnap bug
  1291   - o/servicestate/servicemgr.go: add ensure loop for snap service
  1292     units
  1293   - wrappers/services.go: introduce EnsureSnapServices()
  1294   - snapstate: add "kernel-assets" to featureSet
  1295   - systemd: wait for zfs mounts
  1296   - overlord: make servicestate responsible to compute
  1297     SnapServiceOptions
  1298   - boot,tests: move where we write boot-flags one level up
  1299   - o/configstate: don't pass --root=/ when
  1300     masking/unmasking/enabling/disabling services
  1301   - cmd/snap-bootstrap/initramfs-mounts: write active boot-flags to
  1302     /run
  1303   - gadget: be more flexible with kernel content resolving
  1304   - boot, cmd/snap: include extra cmdline args in debug boot-vars
  1305     output
  1306   - boot: support read/writing boot-flags from userspace/initramfs
  1307   - interfaces/pwm: add PWM interface
  1308   - tests/lib/prepare-restore.sh: clean out snapd changes and snaps
  1309     before purging
  1310   - systemd: enrich UnitStatus returned by systemd.Status() with
  1311     Installed flag
  1312   - tests: updated restore phase of spread tests - part 1
  1313   - gadget: add support for kernel command line provided by the gadget
  1314   - tests: Using GO111MODULE: "off" in spread.yaml
  1315   - features: add gate-auto-refresh-hook feature flag
  1316   - spread: ignore linux kernel upgrade in early stages for arch
  1317     preparation
  1318   - tests: use snaps-state commands and remove them from the snaps
  1319     helper
  1320   - o/configstate: fix panic with a sequence of config unset ops over
  1321     same path
  1322   - api: provide meaningful error message on connect/disconnect for
  1323     non-installed snap
  1324   - interfaces/u2f-devices: add HyperFIDO Pro
  1325   - tests: add simple sanity check for systemctl show
  1326     --property=UnitFileState for unknown service
  1327   - tests: use tests.session tool on interfaces-desktop-document-
  1328     portal test
  1329   - wrappers: install D-Bus service activation files for snapd session
  1330     tools on core
  1331   - many: add x-gvfs-hide option to mount units
  1332   - interfaces/builtin/gpio_test.go: actually test the generated gpio
  1333     apparmor
  1334   - spread: tentative workaround for arch failure caused by libc
  1335     upgrade and cgroups v2
  1336   - tests: add spread test for snap validate against store assertions
  1337   - tests: remove snaps which are not used in any test
  1338   - ci: set the accept-existing-contributors parameter for the cla-
  1339     check action
  1340   - daemon: introduce apiBaseSuite.(json|sync|async|error)Req (and
  1341     some apiBaseSuite cosmetics)
  1342   - o/devicestate/devicemgr: register install-device hook, run if
  1343     present in install
  1344   - o/configstate/configcore: simple refactors in preparation for new
  1345     function
  1346   - tests: unifying the core20 nested suite with the core nested suite
  1347   - tests: uboot-unpacked-assets updated to reflect the real path used
  1348     to find the kernel
  1349   - daemon: switch api_test.go to daemon_test and various other
  1350     cleanups
  1351   - o/configstate/configcore/picfg.go: add hdmi_cvt support
  1352   - interfaces/apparmor: followup cleanups, comments and tweaks
  1353   - boot: cmd/snap-bootstrap: handle a candidate recovery system v2
  1354   - overlord/snapstate: skip catalog refresh when snappy testing is
  1355     enabled
  1356   - overlord/snapstate, overlord/ifacestate: move late security
  1357     profile removal to ifacestate
  1358   - snap-seccomp: fix seccomp test on ppc64el
  1359   - interfaces, interfaces/apparmor, overlord/snapstate: late removal
  1360     of snap-confine apparmor profiles
  1361   - cmd/snap-bootstrap/initramfs-mounts: move time forward using
  1362     assertion times
  1363   - tests: reset the system while preparing the test suite
  1364   - tests: fix snap-advise-command check for 429
  1365   - gadget: policy for gadget/kernel refreshes
  1366   - o/configstate: deal with no longer valid refresh.timer=managed
  1367   - interfaces/udisks2: allow locking /run/mount/utab for udisks 2.8.4
  1368   - cla-check: Use has-signed-canonical-cla GitHub Action
  1369   - tests: validation sets spread test
  1370   - tests: simplify the reset.sh logic by removing not needed command
  1371   - overlord/snapstate: make sure that snapd current symlink is not
  1372     removed during refresh
  1373   - tests/core/fsck-on-boot: unmount /run/mnt/snapd directly on uc20
  1374   - tests/lib/fde-setup-hook: also verify that fde-reveal-key key data
  1375     is base64
  1376   - o/devicestate: split off ensuring next boot goes to run mode into
  1377     new task
  1378   - tests: fix cgroup-tracking test
  1379   - boot: export helper for clearing tried system state, add tests
  1380   - cmd/snap: use less aggressive client timeouts in unit tests
  1381   - daemon: fix signing key validity timestamp in unit tests
  1382   - o/{device,hook}state: encode fde-setup-request key as base64
  1383     string
  1384   - packaging: drop dh-systemd from build-depends on ubuntu-16.04+
  1385   - cmd/snap/pack: unhide the compression option
  1386   - boot: extend set try recovery system unit tests
  1387   - cmd/snap-bootstrap: refactor handling of ubuntu-save, do not use
  1388     secboot's implicit fallback
  1389   - o/configstate/configcore: add hdmi_timings to pi-config
  1390   - snapstate: reduce reRefreshRetryTimeout to 1/2 second
  1391   - interfaces/tee: add TEE/OPTEE interface
  1392   - o/snapstate: update validation sets assertions with auto-refresh
  1393   - vendor: update go-tpm2/secboot to latest version
  1394   - seed: ReadSystemEssentialAndBetterEarliestTime
  1395   - tests: replace while commands with the retry tool
  1396   - interfaces/builtin: update unit tests to use proper distro's
  1397     libexecdir
  1398   - tests: run the reset.sh helper and check test invariants while the
  1399     test is restored
  1400   - daemon: switch preexisting daemon_test tests to apiBaseSuite and
  1401     .req
  1402   - boot, o/devicestate: split makeBootable20 into two parts
  1403   - interfaces/docker-support: add autobind unix rules to docker-
  1404     support
  1405   - interfaces/apparmor: allow reading
  1406     /proc/sys/kernel/random/entropy_avail
  1407   - tests: use retry tool instead a loops
  1408   - tests/main/uc20-create-partitions: fix tests cleanup
  1409   - asserts: mode where Database only assumes cur time >= earliest
  1410     time
  1411   - daemon: validation sets/api tests cleanup
  1412   - tests: improve tests self documentation for nested test suite
  1413   - api: local assertion fallback when it's not in the store
  1414   - api: validation sets monitor mode
  1415   - tests: use fs-state tool in interfaces tests
  1416   - daemon:  move out /v2/login|logout and errToResponse tests from
  1417     api_test.go
  1418   - boot: helper for inspecting the outcome of a recovery system try
  1419   - o/configstate, o/snapshotstate: fix handling of nil snap config on
  1420     snapshot restore
  1421   - tests: update documentation and checks for interfaces tests
  1422   - snap-seccomp: add new `close_range` syscall
  1423   - boot: revert #10009
  1424   - gadget: remove `device-tree{,-origin}` from gadget tests
  1425   - boot: simplify systems test setup
  1426   - image: write resolved-content from snap prepare-image
  1427   - boot: reseal the run key for all recovery systems, but recovery
  1428     keys only for the good ones
  1429   - interfaces/builtin/network-setup-{control,observe}: allow using
  1430     netplan directly
  1431   - tests: improve sections prepare and restore - part 1
  1432   - tests: update details on task.yaml files
  1433   - tests: revert os.query usage in spread.yaml
  1434   - boot: export bootAssetsMap as AssetsMap
  1435   - tests/lib/prepare: fix repacking of the UC20 kernel snap for with
  1436     ubuntu-core-initramfs 40
  1437   - client: protect against reading too much data from stdin
  1438   - tests: improve tests documentation - part 2
  1439   - boot: helper for setting up a try recover system
  1440   - tests: improve tests documentation - part 1
  1441   - tests/unit/go: use tests.session wrapper for running tests as a
  1442     user
  1443   - tests: improvements for snap-seccomp-syscalls
  1444   - gadget: simplify filterUpdate (thanks to Maciej)
  1445   - tests/lib/prepare.sh: use /etc/group and friends from the core20
  1446     snap
  1447   - tests: fix tumbleweed spread tests part 2
  1448   - tests: use new commands of os.query tool on tests
  1449   - o/snapshotstate: create snapshots directory on import
  1450   - tests/main/lxd/prep-snapd-in-lxd.sh: dump contents of sources.list
  1451   - packaging: drop 99-snapd.conf via dpkg-maintscript-helper
  1452   - osutil: add SetTime() w/ 32-bit and 64-bit implementations
  1453   - interfaces/wayland: rm Xwayland Xauth file access from wayland
  1454     slot
  1455   - packaging/ubuntu-16.04/rules: turn modules off explicitly
  1456   - gadget,devicestate: perform kernel asset update for $kernel: style
  1457     refs
  1458   - cmd/recovery: small fix for `snap recovery` tab output
  1459   - bootloader/lkenv: add recovery systems related variables
  1460   - tests: fix new tumbleweed image
  1461   - boot: fix typo, should be systems
  1462   - o/devicestate: test that users.create.automatic is configured
  1463     early
  1464   - asserts: use Fetcher in AddSequenceToUpdate
  1465   - daemon,o/c/configcore: introduce users.create.automatic
  1466   - client, o/servicestate: expose enabled state of user daemons
  1467   - boot: helper for checking and marking tried recovery system status
  1468     from initramfs
  1469   - asserts: pool changes for validation-sets (#9930)
  1470   - daemon: move the last api_foo_test.go to daemon_test
  1471   - asserts: include the assertion timestamp in error message when
  1472     outside of signing key validity range
  1473   - ovelord/snapshotstate: keep a few of the last line tar prints
  1474     before failing
  1475   - gadget/many: rm, delay sector size + structure size checks to
  1476     runtime
  1477   - cmd/snap-bootstrap/triggerwatch: fix returning wrong errors
  1478   - interfaces: add allegro-vcu and media-control interfaces
  1479   - interfaces: opengl: add Xilinx zocl bits
  1480   - mkversion: check that version from changelog is set before
  1481     overriding the output version
  1482   - many: fix new ineffassign warnings
  1483   - .github/workflows/labeler.yaml: try work-around to not sync
  1484     labels
  1485   - cmd/snap, boot: add debug set-boot-vars
  1486   - interfaces: allow reading the Xauthority file KDE Plasma writes
  1487     for Wayland sessions
  1488   - tests/main/snap-repair: test running repair assertion w/ fakestore
  1489   - tests: disable lxd tests for 21.04 until the lxd images are
  1490     published for the system
  1491   - tests/regression/lp-1910456: cleanup the /snap symlink when done
  1492   - daemon: move single snap querying and ops to api_snaps.go
  1493   - tests: fix for preseed and dbus tests on 21.04
  1494   - overlord/snapshotstate: include the last message printed by tar in
  1495     the error
  1496   - interfaces/system-observe: Allow reading /proc/zoneinfo
  1497   - interfaces: remove apparmor downgrade feature
  1498   - snap: fix unit tests on Go 1.16
  1499   - spread: disable Go modules support in environment
  1500   - tests: use new path to find kernel.img in uc20 for arm devices
  1501   - tests: find files before using cat command when checking broadcom-
  1502     asic-control interface
  1503   - boot: introduce good recovery systems, provide compatibility
  1504     handling
  1505   - overlord: add manager gadget refresh test
  1506   - tests/lib/fakestore: support repair assertions too
  1507   - github: temporarily disable action labeler due to issues with
  1508     labels being removed
  1509   - o/devicestate,many: introduce DeviceManager.preloadGadget for
  1510     EarlyConfig
  1511   - tests: enable ubuntu 21.04 for spread tests
  1512   - snap: provide a useful error message if gdbserver is not installed
  1513   - data/selinux: allow system dbus to watch /var/lib/snapd/dbus-1
  1514   - tests/lib/prepare.sh: split reflash.sh into two parts
  1515   - packaging/opensuse: sync with openSUSE packaging
  1516   - packaging: disable Go modules in snapd.mk
  1517   - snap: add deprecation noticed to "snap run --gdb"
  1518   - daemon: add API for checking and installing available theme snaps
  1519   - tests: using labeler action to add automatically a label to run
  1520     nested tests
  1521   - gadget: improve error handling around resolving content sources
  1522   - asserts: repeat the authority cross-check in CheckSignature as
  1523     well
  1524   - interfaces/seccomp/template.go: allow copy_file_range
  1525   - o/snapstate/check_snap.go: add support for many subversions in
  1526     assumes snapdX..
  1527   - daemon: move postSnap and inst.dispatch tests to api_snaps_test.go
  1528   - wrappers: use proper paths for mocked mount units in tests
  1529   - snap: rename gdbserver option to `snap run --gdbserver`
  1530   - store: support validation sets with fetch-assertions action
  1531   - snap-confine.apparmor.in: support tmp and log dirs on Yocto/Poky
  1532   - packaging/fedora: sync with downstream packaging in Fedora
  1533   - many: add Delegate=true to generated systemd units for special
  1534     interfaces (master)
  1535   - boot: use a common helper for mocking boot assets in cache
  1536   - api: validate snaps against validation set assert from the store
  1537   - wrappers: don't generate an [Install] section for timer or dbus
  1538     activated services
  1539   - tests/nested/core20/boot-config-update: skip when snapd was not
  1540     built with test features
  1541   - o/configstate,o/devicestate: introduce devicestate.EarlyConfig
  1542     implemented by configstate.EarlyConfig
  1543   - cmd/snap-bootstrap/initramfs-mounts: fix typo in func name
  1544   - interfaces/builtin: mock distribution in fontconfig cache unit
  1545     tests
  1546   - tests/lib/prepare.sh: add another console= to the reflash magic
  1547     grub entry
  1548   - overlord/servicestate: expose dbus activators of a service
  1549   - desktop/notification: test against a real session bus and
  1550     notification server implementation
  1551   - cmd/snap-bootstrap/initramfs-mounts: write realistic modeenv for
  1552     recover+install
  1553   - HACKING.md: explain how to run UC20 spread tests with QEMU
  1554   - asserts: introduce AtSequence
  1555   - overlord/devicestate: task for updating boot configs, spread test
  1556   - gadget: fix documentation/typos
  1557   - gadget: cleanup MountedFilesystem{Writer,Updater}
  1558   - gadget: use ResolvedSource in MountedFilesystemWriter
  1559   - snap/info.go: add doc-comment for SortServices
  1560   - interfaces: add an optional mount-host-font-cache plug attribute
  1561     to the desktop interface
  1562   - osutil: skip TestReadBuildGo inside sbuild
  1563   - o/hookstate/ctlcmd: add optional --pid and --apparmor-label
  1564     arguments to "snapctl is-connected"
  1565   - data/env/snapd: use quoting in case PATH contains spaces
  1566   - boot: do not observe successful boot assets if not in run mode
  1567   - tests: fix umount for snapd snap on fsck-on-boot testumount:
  1568     /run/mnt/ubuntu-seed/systems/*/snaps/snapd_*.snap: no mount
  1569   - misc: little tweaks
  1570   - snap/info.go: ignore unknown daemons in SortSnapServices
  1571   - devicestate: keep log from install-mode on installed system
  1572   - seed: add LoadEssentialMeta to seed16 and allow all of its
  1573     implementations to be called multiple times
  1574   - cmd/snap-preseed: initialize snap.SanitizePlugsSlots for gadget in
  1575     seeds
  1576   - tests/core/uc20-recovery: move recover mode helpers to generic
  1577     testslib script
  1578   - interfaces/fwupd: allow any distros to access fw files via fwupd
  1579   - store: method for fetching validation set assertion
  1580   - store: switch to v2/assertions api
  1581   - gadget: add new ResolvedContent and populate from LayoutVolume()
  1582   - spread: use full format when listing processes
  1583   - osutil/many: make all test pkgs osutil_test instead of "osutil"
  1584   - tests/unit/go: drop unused environment variables, skip coverage
  1585   - OpenGL interface: Support more Tegra libs
  1586   - gadget,overlord: pass kernelRoot to install.Run()
  1587   - tests: run unit tests in Focal instead of Xenial
  1588   - interfaces/browser-support: allow sched_setaffinity with browser-
  1589     sandbox: true
  1590   - daemon: move query /snaps/<name> tests to api_snaps_test.go
  1591   - cmd/snap-repair/runner.go: add SNAP_SYSTEM_MODE to env of repair
  1592     runner
  1593   - systemd/systemd.go: support journald JSON messages with arrays for
  1594     values
  1595   - cmd: make string/error code more robust against errno leaking
  1596   - github, run-checks: do not collect coverage data on subsequent
  1597     test runs
  1598   - boot: boot config update & reseal
  1599   - o/snapshotstate: handle conflicts between snapshot forget, export
  1600     and import
  1601   - osutil/stat.go: add RegularFileExists
  1602   - cmd/snapd-generator: don't create mount overrides for snap-try
  1603     snaps inside lxc
  1604   - gadget/gadget.go: rename ubuntu-* to system-* in doc-comment
  1605   - tests: use 6 spread workers for centos8
  1606   - bootloader/assets: support injecting bootloader assets in testing
  1607     builds of snapd
  1608   - gadget: enable multi-volume uc20 gadgets in
  1609     LaidOutSystemVolumeFromGadget; rename too
  1610   - overlord/devicestate, sysconfig: do nothing when cloud-init is not
  1611     present
  1612   - cmd/snap-repair: filter repair assertions based on bases + modes
  1613   - snap-confine: make host /etc/ssl available for snaps on classic
  1614  
  1615  * Fri Mar 26 2021 Michael Vogt <mvo@ubuntu.com>
  1616  - New upstream release 2.49.2
  1617   - interfaces/tee: add TEE/OPTEE interface
  1618   - o/configstate/configcore: add hdmi_timings to pi-config
  1619   - interfaces/udisks2: allow locking /run/mount/utab for udisks 2.8.4
  1620   - snap-seccomp: fix seccomp test on ppc64el
  1621   - interfaces{,/apparmor}, overlord/snapstate:
  1622     late removal of snap-confine apparmor profiles
  1623   - overlord/snapstate, wrappers: add dependency on usr-lib-
  1624     snapd.mount for services on core with snapd snap
  1625   - o/configstate: deal with no longer valid refresh.timer=managed
  1626   - overlord/snapstate: make sure that snapd current symlink is not
  1627     removed during refresh
  1628   - packaging: drop dh-systemd from build-depends on ubuntu-16.04+
  1629   - o/{device,hook}state: encode fde-setup-request key as base64
  1630   - snapstate: reduce reRefreshRetryTimeout to 1/2 second
  1631   - tests/main/uc20-create-partitions: fix tests cleanup
  1632   - o/configstate, o/snapshotstate: fix handling of nil snap config on
  1633     snapshot restore
  1634   - snap-seccomp: add new `close_range` syscall
  1635  
  1636  * Mon Mar 08 2021 Michael Vogt <mvo@ubuntu.com>
  1637  - New upstream release 2.49.1
  1638   - tests: turn modules off explicitly in spread go unti test
  1639   - o/snapshotstate: create snapshots directory on import
  1640   - cmd/snap-bootstrap/triggerwatch: fix returning wrong errors
  1641   - interfaces: add allegro-vcu and media-control interfaces
  1642   - interfaces: opengl: add Xilinx zocl bits
  1643   - many: fix new ineffassign warnings
  1644   - interfaces/seccomp/template.go: allow copy_file_range
  1645   - interfaces: allow reading the Xauthority file KDE Plasma writes
  1646     for Wayland sessions
  1647   - data/selinux: allow system dbus to watch
  1648     /var/lib/snapd/dbus-1
  1649   - Remove apparmor downgrade feature
  1650   - Support tmp and log dirs on Yocto/Poky
  1651  
  1652  * Wed Feb 10 2021 Michael Vogt <mvo@ubuntu.com>
  1653  - New upstream release 2.49
  1654   - many: add Delegate=true to generated systemd units for special
  1655     interfaces
  1656   - cmd/snap-bootstrap: rename ModeenvFromModel to
  1657     EphemeralModeenvForModel
  1658   - cmd/snap-bootstrap/initramfs-mounts: write realistic modeenv for
  1659     recover+install
  1660   - osutil: skip TestReadBuildGo inside sbuild
  1661   - tests: fix umount for snapd snap on fsck-on-boot test
  1662   - snap/info_test.go: add unit test cases for bug
  1663   - tests/main/services-after-before: add regression spread test
  1664   - snap/info.go: ignore unknown daemons in SortSnapServices
  1665   - cmd/snap-preseed: initialize snap.SanitizePlugsSlots for gadget in
  1666     seeds
  1667   - OpenGL interface: Support more Tegra libs
  1668   - interfaces/browser-support: allow sched_setaffinity with browser-
  1669     sandbox: true
  1670   - cmd: make string/error code more robust against errno leaking
  1671   - o/snapshotstate: handle conflicts between snapshot forget, export
  1672     and import
  1673   - cmd/snapd-generator: don't create mount overrides for snap-try
  1674     snaps inside lxc
  1675   - tests: update test pkg for fedora and centos
  1676   - gadget: pass sector size in to mkfs family of functions, use to
  1677     select block sz
  1678   - o/snapshotstate: fix returning of snap names when duplicated
  1679     snapshot is detected
  1680   - tests/main/snap-network-errors: skip flushing dns cache on
  1681     centos-7
  1682   - interfaces/builtin: Allow DBus property access on
  1683     org.freedesktop.Notifications
  1684   - cgroup-support.c: fix link to CGROUP DELEGATION
  1685   - osutil: update go-udev package
  1686   - packaging: fix arch-indep build on debian-sid
  1687   - {,sec}boot: pass "key-name" to the FDE hooks
  1688   - asserts: sort by revision with Sort interface
  1689   - gadget: add gadget.ResolveContentPaths()
  1690   - cmd/snap-repair: save base snap and mode in device info; other
  1691     misc cleanups
  1692   - tests: cleanup the run-checks script
  1693   - asserts: snapasserts method to validate installed snaps against
  1694     validation sets
  1695   - tests: normalize test tools - part 1
  1696   - snapshotstate: detect duplicated snapshot imports
  1697   - interfaces/builtin: fix unit test expecting snap-device-helper at
  1698     /usr/lib/snapd
  1699   - tests: apply workaround done for snap-advise-command to apt-hooks
  1700     test
  1701   - tests: skip main part of snap-advise test if 429 error is
  1702     encountered
  1703   - many: clarify gadget role-usage consistency checks for UC16/18 vs
  1704     UC20
  1705   - sandbox/cgroup, tess/main: fix unit tests on v2 system, disable
  1706     broken tests on sid
  1707   - interfaces/builtin: more drive by fixes, import ordering, removing
  1708     dead code
  1709   - tests: skip interfaces-openvswitch spread test on debian sid
  1710   - interfaces/apparmor: drive by comment fix
  1711   - cmd/libsnap-confine-private/cleanup-funcs-test.c: rm g_autofree
  1712     usage
  1713   - cmd/libsnap-confine-private: make unit tests execute happily in a
  1714     container
  1715   - interfaces, wrappers: misc comment fixes, etc.
  1716   - asserts/repair.go: add "bases" and "modes" support to the repair
  1717     assertion
  1718   - interfaces/opengl: allow RPi MMAL video decoding
  1719   - snap: skip help output tests for go-flags v1.4.0
  1720   - gadget: add validation for "$kernel:ref" style content
  1721   - packaging/deb, tests/main/lxd-postrm-purge: fix purge inside
  1722     containers
  1723   - spdx: update to SPDX license list version: 3.11 2020-11-25
  1724   - tests: improve hotplug test setup on classic
  1725   - tests: update check to verify is the current system is arm
  1726   - tests: use os-query tool to check debian, trusty and tumbleweed
  1727   - daemon: start moving implementation to api_snaps.go
  1728   - tests/main/snap-validate-basic: disable test on Fedora due to go-
  1729     flags panics
  1730   - tests: fix library path used for tests.pkgs
  1731   - tests/main/cohorts: replace yq with a Python snippet
  1732   - run-checks: update to match new argument syntax of ineffassign
  1733   - tests: use apiBaseSuite for snapshots tests, fix import endpoint
  1734     path
  1735   - many: separate consistency/content validation into
  1736     gadget.Validate|Content
  1737   - o/{device,snap}state: enable devmode snaps with dangerous model
  1738     assertions
  1739     secboot: add test for when systemd-run does not honor
  1740     RuntimeMaxSec
  1741   - secboot: add workaround for snapcore/core-initrd issue #13
  1742   - devicestate: log checkEncryption errors via logger.Noticef
  1743   - o/daemon: validation sets api and basic spread test
  1744   - gadget: move BuildPartitionList to install and make it unexported
  1745   - tests: add nested spread end-to-end test for fde-hooks
  1746   - devicestate: implement checkFDEFeatures()
  1747   - boot: tweak resealing with fde-setup hooks
  1748   - tests: add os query commands for subsystems and architectures
  1749   - o/snapshotstate: don't set auto flag in the snapshot file
  1750   - tests: use os.query tool instead of comparing the system var
  1751   - testutil: use the original environment when calling shellcheck
  1752   - sysconfig/cloudinit.go: add "manual_cache_clean: true" to cloud-
  1753     init restrict file
  1754   - gadget,o/devicestate,tests: drop EffectiveFilesystemLabel and
  1755     instead set the implicit labels when loading the yaml
  1756   - secboot: add new LockSealedKeys() that uses either TPM/fde-reveal-
  1757     key
  1758   - gadget/quantity: introduce Offset, start using it for offset
  1759     related fields in the gadget
  1760   - gadget: use "sealed-keys" to determine what method to use for
  1761     reseal
  1762   - tests/main/fake-netplan-apply: disable test on xenial for now
  1763   - daemon: start splitting snaps op tests out of api_test.go
  1764   - testutil: make DBusTest use a custom bus configuration file
  1765   - tests: replace pkgdb.sh (library) with tests.pkgs (program)
  1766   - gadget: prepare gadget kernel refs (0/N)
  1767   - interfaces/builtin/docker-support: allow /run/containerd/s/...
  1768   - cmd/snap-preseed: reset run inhibit locks on --reset.
  1769   - boot: add sealKeyToModeenvUsingFdeSetupHook()
  1770   - daemon: reorg snap.go and split out sections and icons support
  1771     from api.go
  1772   - sandbox/seccomp: use snap-seccomp's stdout for getting version
  1773     info
  1774   - daemon: split find support to its own api_*.go files and move some
  1775     helpers
  1776   - tests: move snapstate config defaults tests to a separate file.
  1777   - bootloader/{lk,lkenv}: followups from #9695
  1778   - daemon: actually move APIBaseSuite to daemon_test.apiBaseSuite
  1779   - gadget,o/devicestate: set implicit values for schema and role
  1780     directly instead of relying on Effective* accessors
  1781   - daemon: split aliases support to its own api_*.go files
  1782   - gadget: start separating rule/convention validation from basic
  1783     soundness
  1784   - cmd/snap-update-ns: add better unit test for overname sorting
  1785   - secboot: use `fde-reveal-key` if available to unseal key
  1786   - tests: fix lp-1899664 test when snapd_x1 is not installed in the
  1787     system
  1788   - tests: fix the scenario when the "$SRC".orig file does not exist
  1789   - cmd/snap-update-ns: fix sorting of overname mount entries wrt
  1790     other entries
  1791   - devicestate: add runFDESetupHook() helper
  1792   - bootloader/lk: add support for UC20 lk bootloader with V2 lkenv
  1793     structs
  1794   - daemon: split unsupported buy implementation to its own api_*.go
  1795     files
  1796   - tests: download timeout spread test
  1797   - gadget,o/devicestate: hybrid 18->20 ready volume setups should be
  1798     valid
  1799   - o/devicestate: save model with serial in the device save db
  1800   - bootloader: add check for prepare-image time and more tests
  1801     validating options
  1802   - interfaces/builtin/log_observe.go: allow controlling apparmor
  1803     audit levels
  1804   - hookstate: refactor around EphemeralRunHook
  1805   - cmd/snap: implement 'snap validate' command
  1806   - secboot,devicestate: add scaffoling for "fde-reveal-key" support
  1807   - boot: observe successful command line update, provide a default
  1808   - tests: New queries for the os tools
  1809   - bootloader/lkenv: specify backup file as arg to NewEnv(), use ""
  1810     as path+"bak"
  1811   - osutil/disks: add FindMatchingPartitionUUIDWithPartLabel to Disk
  1812     iface
  1813   - daemon: split out snapctl support and snap configuration support
  1814     to their own api_*.go files
  1815   - snapshotstate: improve handling of multiple errors
  1816   - tests: sign new nested-18|20* models to allow for generic serials
  1817   - bootloader: remove installableBootloader interface and methods
  1818   - seed: cleanup/drop some no longer valid TODOS, clarify some other
  1819     points
  1820   - boot: set kernel command line in modeenv during install
  1821   - many: rename disks.FindMatching... to FindMatching...WithFsLabel
  1822     and err type
  1823   - cmd/snap: suppress a case of spurious stdout logging from tests
  1824   - hookstate: add new HookManager.EphemeralRunHook()
  1825   - daemon: move some more api tests from daemon to daemon_test
  1826   - daemon: split apps and logs endpoints to api_apps.go and tests
  1827   - interfaces/utf: Add Ledger to U2F devices
  1828   - seed/seedwriter: consider modes when checking for deps
  1829     availability
  1830   - o/devicestate,daemon: fix reboot system action to not require a
  1831     system label
  1832   - cmd/snap-repair,store: increase initial retry time intervals,
  1833     stalling TODOs
  1834   - daemon: split interfacesCmd to api_interfaces.go
  1835   - github: run nested suite when commit is pushed to release branch
  1836   - client: reduce again the /v2/system-info timeout
  1837   - tests: reset fakestore unit status
  1838   - update-pot: fix typo in plural keyword spec
  1839   - tests: remove workarounds that add "ubuntu-save" if missing
  1840   - tests: add unit test for auto-refresh with validate-snap failure
  1841   - osutil: add helper for getting the kernel command line
  1842   - tests/main/uc20-create-partitions: verify ubuntu-save encryption
  1843     keys, tweak not MATCH
  1844   - boot: add kernel command lines to the modeenv file
  1845   - spread: bump delta ref, tweak repacking to make smaller delta
  1846     archives
  1847   - bootloader/lkenv: add v2 struct + support using it
  1848   - snapshotstate: add cleanup of abandonded snapshot imports
  1849   - tests: fix uc20-create-parition-* tests for updated gadget
  1850   - daemon: split out /v2/interfaces tests to api_interfaces_test.go
  1851   - hookstate: implement snapctl fde-setup-{request,result}
  1852   - wrappers, o/devicestate: remove EnableSnapServices
  1853   - tests: enable nested on 20.10
  1854   - daemon: simplify test helpers Get|PostReq into Req
  1855   - daemon: move general api to api_general*.go
  1856   - devicestate: make checkEncryption fde-setup hook aware
  1857   - client/snapctl, store: fix typos
  1858   - tests/main/lxd/prep-snapd-in-lxd.sh: wait for valid apt files
  1859     before doing apt ops
  1860   - cmd/snap-bootstrap: update model cross-check considerations
  1861   - client,snapctl: add naive support for "stdin"
  1862   - many: add new "install-mode: disable" option
  1863   - osutil/disks: allow building on mac os
  1864   - data/selinux: update the policy to allow operations on non-tmpfs
  1865     /tmp
  1866   - boot: add helper for generating candidate kernel lines for
  1867     recovery system
  1868   - wrappers: generate D-Bus service activation files
  1869   - bootloader/many: rm ConfigFile, add Present for indicating
  1870     presence of bloader
  1871   - osutil/disks: allow mocking DiskFromDeviceName
  1872   - daemon: start cleaning up api tests
  1873   - packaging/arch: sync with AUR packaging
  1874   - bootloader: indicate when boot config was updated
  1875   - tests: Fix snap-debug-bootvars test to make it work on arm devices
  1876     and core18
  1877   - tests/nested/manual/core20-save: verify handling of ubuntu-save
  1878     with different system variants
  1879   - snap: use the boot-base for kernel hooks
  1880   - devicestate: support "storage-safety" defaults during install
  1881   - bootloader/lkenv: mv v1 to separate file,
  1882     include/lk/snappy_boot_v1.h: little fixups
  1883   - interfaces/fpga: add fpga interface
  1884   - store: download timeout
  1885   - vendor: update secboot repo to avoid including secboot.test binary
  1886   - osutil: add KernelCommandLineKeyValue
  1887   - gadget/gadget.go: allow system-recovery-{image,select} as roles in
  1888     gadget.yaml
  1889   - devicestate: implement boot.HasFDESetupHook
  1890   - osutil/disks: add DiskFromName to get a disk using a udev name
  1891   - usersession/agent: have session agent connect to the D-Bus session
  1892     bus
  1893   - o/servicestate: preserve order of services on snap restart
  1894   - o/servicestate: unlock state before calling wrappers in
  1895     doServiceControl
  1896   - spread: disable unattended-upgrades on ubuntu
  1897   - tests: testing new fedora 33 image
  1898   - tests: fix fsck on boot on arm devices
  1899   - tests: skip boot state test on arm devices
  1900   - tests: updated the systems to run prepare-image-grub test
  1901   - interfaces/raw_usb: allow read access to /proc/tty/drivers
  1902   - tests: unmount /boot/efi in fsck-on-boot test
  1903   - strutil/shlex,osutil/udev/netlink: minimally import go-check
  1904   - tests: fix basic20 test on arm devices
  1905   - seed: make a shared seed system label validation helper
  1906   - tests/many: enable some uc20 tests, delete old unneeded tests or
  1907     TODOs
  1908   - boot/makebootable.go: set snapd_recovery_mode=install at image-
  1909     build time
  1910   - tests: migrate test from boot.sh helper to boot-state tool
  1911   - asserts: implement "storage-safety" in uc20 model assertion
  1912   - bootloader: use ForGadget when installing boot config
  1913   - spread: UC20 no longer needs 2GB of mem
  1914   - cmd/snap-confine: implement snap-device-helper internally
  1915   - bootloader/grub: replace old reference to Managed...Blr... with
  1916     Trusted...Blr...
  1917   - cmd/snap-bootstrap: add readme for snap-bootstrap + real state
  1918     diagram
  1919   - interfaces: fix greengrass attr namingThe flavor attribute names
  1920     are now as follows:
  1921   - tests/lib/nested: poke the API to get the snap revisions
  1922   - tests: compare options of mount units created by snapd and snapd-
  1923     generator
  1924   - o/snapstate,servicestate: use service-control task for service
  1925     actions
  1926   - sandbox: track applications unconditionally
  1927   - interfaces/greengrass-support: add additional "process" flavor for
  1928     1.11 update
  1929   - cmd/snap-bootstrap, secboot, tests: misc cleanups, add spread test
  1930  
  1931  * Thu Dec 15 2020 Michael Vogt <mvo@ubuntu.com>
  1932  - New upstream release 2.48.2
  1933   - tests: sign new nested-18|20* models to allow for generic serials
  1934   - secboot: add extra paranoia when waiting for that fde-reveal-key
  1935   - tests: backport netplan workarounds from #9785
  1936   - secboot: add workaround for snapcore/core-initrd issue #13
  1937   - devicestate: log checkEncryption errors via logger.Noticef
  1938   - tests: add nested spread end-to-end test for fde-hooks
  1939   - devicestate: implement checkFDEFeatures()
  1940   - boot: tweak resealing with fde-setup hooks
  1941   - sysconfig/cloudinit.go: add "manual_cache_clean: true" to cloud-
  1942     init restrict file
  1943   - secboot: add new LockSealedKeys() that uses either TPM or
  1944     fde-reveal-key
  1945   - gadget: use "sealed-keys" to determine what method to use for
  1946     reseal
  1947   - boot: add sealKeyToModeenvUsingFdeSetupHook()
  1948   - secboot: use `fde-reveal-key` if available to unseal key
  1949   - cmd/snap-update-ns: fix sorting of overname mount entries wrt
  1950     other entries
  1951   - o/devicestate: save model with serial in the device save db
  1952   - devicestate: add runFDESetupHook() helper
  1953   - secboot,devicestate: add scaffoling for "fde-reveal-key" support
  1954   - hookstate: add new HookManager.EphemeralRunHook()
  1955   - update-pot: fix typo in plural keyword spec
  1956   - store,cmd/snap-repair: increase initial expontential time
  1957     intervals
  1958   - o/devicestate,daemon: fix reboot system action to not require a
  1959     system label
  1960   - github: run nested suite when commit is pushed to release branch
  1961   - tests: reset fakestore unit status
  1962   - tests: fix uc20-create-parition-* tests for updated gadget
  1963   - hookstate: implement snapctl fde-setup-{request,result}
  1964   - devicestate: make checkEncryption fde-setup hook aware
  1965   - client,snapctl: add naive support for "stdin"
  1966   - devicestate: support "storage-safety" defaults during install
  1967   - snap: use the boot-base for kernel hooks
  1968   - vendor: update secboot repo to avoid including secboot.test binary
  1969  
  1970  * Thu Dec 03 2020 Michael Vogt <mvo@ubuntu.com>
  1971  - New upstream release 2.48.1
  1972   - gadget: disable ubuntu-boot role validation check
  1973  
  1974  * Thu Nov 19 2020 Michael Vogt <mvo@ubuntu.com>
  1975  - New upstream release 2.48
  1976   - osutil: add KernelCommandLineKeyValue
  1977   - devicestate: implement boot.HasFDESetupHook
  1978   - boot/makebootable.go: set snapd_recovery_mode=install at image-
  1979     build time
  1980   - bootloader: use ForGadget when installing boot config
  1981   - interfaces/raw_usb: allow read access to /proc/tty/drivers
  1982   - boot: add scaffolding for "fde-setup" hook support for sealing
  1983   - tests: fix basic20 test on arm devices
  1984   - seed: make a shared seed system label validation helper
  1985   - snap: add new "fde-setup" hooktype
  1986   - cmd/snap-bootstrap, secboot, tests: misc cleanups, add spread test
  1987   - secboot,cmd/snap-bootstrap: fix degraded mode cases with better
  1988     device handling
  1989   - boot,dirs,c/snap-bootstrap: avoid InstallHost* at the cost of some
  1990     messiness
  1991   - tests/nested/manual/refresh-revert-fundamentals: temporarily
  1992     disable secure boot
  1993   - snap-bootstrap,secboot: call BlockPCRProtectionPolicies in all
  1994     boot modes
  1995   - many: address degraded recover mode feedback, cleanups
  1996   - tests: Use systemd-run on tests part2
  1997   - tests: set the opensuse tumbleweed system as manual in spread.yaml
  1998   - secboot: call BlockPCRProtectionPolicies even if the TPM is
  1999     disabled
  2000   - vendor: update to current secboot
  2001   - cmd/snap-bootstrap,o/devicestate: use a secret to pair data and
  2002     save
  2003   - spread.yaml: increase number of workers on 20.10
  2004   - snap: add new `snap recovery --show-keys` option
  2005   - tests: minor test tweaks suggested in the review of 9607
  2006   - snapd-generator: set standard snapfuse options when generating
  2007     units for containers
  2008   - tests: enable lxd test on ubuntu-core-20 and 16.04-32
  2009   - interfaces: share /tmp/.X11-unix/ from host or provider
  2010   - tests: enable main lxd test on 20.10
  2011   - cmd/s-b/initramfs-mounts: refactor recover mode to implement
  2012     degraded mode
  2013   - gadget/install: add progress logging
  2014   - packaging: keep secboot/encrypt_dummy.go in debian
  2015   - interfaces/udev: use distro specific path to snap-device-helper
  2016   - o/devistate: fix chaining of tasks related to regular snaps when
  2017     preseeding
  2018   - gadget, overlord/devicestate: validate that system supports
  2019     encrypted data before install
  2020   - interfaces/fwupd: enforce the confined fwupd to align Ubuntu Core
  2021     ESP layout
  2022   - many: add /v2/system-recovery-keys API and client
  2023   - secboot, many: return UnlockMethod from Unlock* methods for future
  2024     usage
  2025   - many: mv keys to ubuntu-boot, move model file, rename keyring
  2026     prefix for secboot
  2027   - tests: using systemd-run instead of manually create a systemd unit
  2028     - part 1
  2029   - secboot, cmd/snap-bootstrap: enable or disable activation with
  2030     recovery key
  2031   - secboot: refactor Unlock...IfEncrypted to take keyfile + check
  2032     disks first
  2033   - secboot: add LockTPMSealedKeys() to lock access to keys
  2034     independently
  2035   - gadget: correct sfdisk arguments
  2036   - bootloader/assets/grub: adjust fwsetup menuentry label
  2037   - tests: new boot state tool
  2038   - spread: use the official image for Ubuntu 20.10, no longer an
  2039     unstable system
  2040   - tests/lib/nested: enable snapd logging to console for core18
  2041   - osutil/disks: re-implement partition searching for disk w/ non-
  2042     adjacent parts
  2043   - tests: using the nested-state tool in nested tests
  2044   - many: seal a fallback object to the recovery boot chain
  2045   - gadget, gadget/install: move helpers to install package, refactor
  2046     unit tests
  2047   - dirs: add "gentoo" to altDirDistros
  2048   - update-pot: include file locations in translation template, and
  2049     extract strings from desktop files
  2050   - gadget/many: drop usage of gpt attr 59 for indicating creation of
  2051     partitions
  2052   - gadget/quantity: tweak test name
  2053   - snap: fix failing unittest for quantity.FormatDuration()
  2054   - gadget/quantity: introduce a new package that captures quantities
  2055   - o/devicestate,a/sysdb: make a backup of the device serial to save
  2056   - tests: fix rare interaction of tests.session and specific tests
  2057   - features: enable classic-preserves-xdg-runtime-dir
  2058   - tests/nested/core20/save: check the bind mount and size bump
  2059   - o/devicetate,dirs: keep device keys in ubuntu-save/save for UC20
  2060   - tests: rename hasHooks to hasInterfaceHooks in the ifacestate
  2061     tests
  2062   - o/devicestate: unit test tweaks
  2063   - boot: store the TPM{PolicyAuthKey,LockoutAuth}File in ubuntu-save
  2064   - testutil, cmd/snap/version: fix misc little errors
  2065   - overlord/devicestate: bind mount ubuntu-save under
  2066     /var/lib/snapd/save on startup
  2067   - gadget/internal: tune ext4 setting for smaller filesystems
  2068   - tests/nested/core20/save: a test that verifies ubuntu-save is
  2069     present and set up
  2070   - tests: update google sru backend to support groovy
  2071   - o/ifacestate: handle interface hooks when preseeding
  2072   - tests: re-enable the apt hooks test
  2073   - interfaces,snap: use correct type: {os,snapd} for test data
  2074   - secboot: set metadata and keyslots sizes when formatting LUKS2
  2075     volumes
  2076   - tests: improve uc20-create-partitions-reinstall test
  2077   - client, daemon, cmd/snap: cleanups from #9489 + more unit tests
  2078   - cmd/snap-bootstrap: mount ubuntu-save during boot if present
  2079   - secboot: fix doc comment on helper for unlocking volume with key
  2080   - tests: add spread test for refreshing from an old snapd and core18
  2081   - o/snapstate: generate snapd snap wrappers again after restart on
  2082     refresh
  2083   - secboot: version bump, unlock volume with key
  2084   - tests/snap-advise-command: re-enable test
  2085   - cmd/snap, snapmgr, tests: cleanups after #9418
  2086   - interfaces: deny connected x11 plugs access to ICE
  2087   - daemon,client: write and read a maintenance.json file for when
  2088     snapd is shut down
  2089   - many: update to secboot v1 (part 1)
  2090   - osutil/disks/mockdisk: panic if same mountpoint shows up again
  2091     with diff opts
  2092   - tests/nested/core20/gadget,kernel-reseal: add sanity checks to the
  2093     reseal tests
  2094   - many: implement snap routine console-conf-start for synchronizing
  2095     auto-refreshes
  2096   - dirs, boot: add ubuntu-save directories and related locations
  2097   - usersession: fix typo in test name
  2098   - overlord/snapstate: refactor ihibitRefresh
  2099   - overlord/snapstate: stop warning about inhibited refreshes
  2100   - cmd/snap: do not hardcode snapshot age value
  2101   - overlord,usersession: initial notifications of pending refreshes
  2102   - tests: add a unit test for UpdateMany where a single snap fails
  2103   - o/snapstate/catalogrefresh.go: don't refresh catalog in install
  2104     mode uc20
  2105   - tests: also check snapst.Current in undo-unlink tests
  2106   - tests: new nested tool
  2107   - o/snapstate: implement undo handler for unlink-snap
  2108   - tests: clean systems.sh helper and migrate last set of tests
  2109   - tests: moving the lib section from systems.sh helper to os.query
  2110     tool
  2111   - tests/uc20-create-partitions: don't check for grub.cfg
  2112   - packaging: make sure that static binaries are indeed static, fix
  2113     openSUSE
  2114   - many: have install return encryption keys for data and save,
  2115     improve tests
  2116   - overlord: add link participant for linkage transitions
  2117   - tests: lxd smoke test
  2118   - tests: add tests for fsck; cmd/s-b/initramfs-mounts: fsck ubuntu-
  2119     seed too
  2120   - tests: moving main suite from systems.sh to os.query tool
  2121   - tests: moving the core test suite from systems.sh to os.query tool
  2122   - cmd/snap-confine: mask host's apparmor config
  2123   - o/snapstate: move setting updated SnapState after error paths
  2124   - tests: add value to INSTANCE_KEY/regular
  2125   - spread, tests: tweaks for openSUSE
  2126   - cmd/snap-confine: update path to snap-device-helper in AppArmor
  2127     profile
  2128   - tests: new os.query tool
  2129   - overlord/snapshotstate/backend: specify tar format for snapshots
  2130   - tests/nested/manual/minimal-smoke: use 384MB of RAM for nested
  2131     UC20
  2132   - client,daemon,snap: auto-import does not error on managed devices
  2133   - interfaces: PTP hardware clock interface
  2134   - tests: use tests.backup tool
  2135   - many: verify that unit tests work with nosecboot tag and without
  2136     secboot package
  2137   - wrappers: do not error out on read-only /etc/dbus-1/session.d
  2138     filesystem on core18
  2139   - snapshots: import of a snapshot set
  2140   - tests: more output for sbuild test
  2141   - o/snapstate: re-order remove tasks for individual snap revisions
  2142     to remove current last
  2143   - boot: skip some unit tests when running as root
  2144   - o/assertstate: introduce
  2145     ValidationTrackingKey/ValidationSetTracking and basic methods
  2146   - many: allow ignoring running apps for specific request
  2147   - tests: allow the searching test to fail under load
  2148   - overlord/snapstate: inhibit startup while unlinked
  2149   - seed/seedwriter/writer.go: check DevModeConfinement for dangerous
  2150     features
  2151   - tests/main/sudo-env: snap bin is available on Fedora
  2152   - boot, overlord/devicestate: list trusted and managed assets
  2153     upfront
  2154   - gadget, gadget/install: support for ubuntu-save, create one during
  2155     install if needed
  2156   - spread-shellcheck: temporary workaround for deadlock, drop
  2157     unnecessary test
  2158   - snap: support different exit-code in the snap command
  2159   - logger: use strutil.KernelCommandLineSplit in
  2160     debugEnabledOnKernelCmdline
  2161   - logger: fix snapd.debug=1 parsing
  2162   - overlord: increase refresh postpone limit to 14 days
  2163   - spread-shellcheck: use single thread pool executor
  2164   - gadget/install,secboot: add debug messages
  2165   - spread-shellcheck: speed up spread-shellcheck even more
  2166   - spread-shellcheck: process paths from arguments in parallel
  2167   - tests: tweak error from tests.cleanup
  2168   - spread: remove workaround for openSUSE go issue
  2169   - o/configstate: create /etc/sysctl.d when applying early config
  2170     defaults
  2171   - tests: new tests.backup tool
  2172   - tests: add tests.cleanup pop sub-command
  2173   - tests: migration of the main suite to snaps-state tool part 6
  2174   - tests: fix journal-state test
  2175   - cmd/snap-bootstrap/initramfs-mounts: split off new helper for misc
  2176     recover files
  2177   - cmd/snap-bootstrap/initramfs-mounts: also copy /etc/machine-id for
  2178     same IP addr
  2179   - packaging/{ubuntu,debian}: add liblzo2-dev as a dependency for
  2180     building snapd
  2181   - boot, gadget, bootloader: observer preserves managed bootloader
  2182     configs
  2183   - tests/nested/manual: add uc20 grade signed cloud-init test
  2184   - o/snapstate/autorefresh.go: eliminate race when launching
  2185     autorefresh
  2186   - daemon,snapshotstate: do not return "size" from Import()
  2187   - daemon: limit reading from snapshot import to Content-Length
  2188   - many: set/expect Content-Length header when importing snapshots
  2189   - github: switch from ::set-env command to environment file
  2190   - tests: migration of the main suite to snaps-state tool part 5
  2191   - client: cleanup the Client.raw* and Client.do* method families
  2192   - tests: moving main suite to snaps-state tool part 4
  2193   - client,daemon,snap: use constant for snapshot content-type
  2194   - many: fix typos and repeated "the"
  2195   - secboot: fix tpm connection leak when it's not enabled
  2196   - many: scaffolding for snapshots import API
  2197   - run-checks: run spread-shellcheck too
  2198   - interfaces: update network-manager interface to allow
  2199     ObjectManager access from unconfined clients
  2200   - tests: move core and regression suites to snaps-state tool
  2201   - tests: moving interfaces tests to snaps-state tool
  2202   - gadget: preserve files when indicated by content change observer
  2203   - tests: moving smoke test suite and some tests from main suite to
  2204     snaps-state tool
  2205   - o/snapshotstate: pass set id to backend.Open, update tests
  2206   - asserts/snapasserts: introduce ValidationSets
  2207   - o/snapshotstate: improve allocation of new set IDs
  2208   - boot: look at the gadget for run mode bootloader when making the
  2209     system bootable
  2210   - cmd/snap: allow snap help vs --all to diverge purposefully
  2211   - usersession/userd: separate bus name ownership from defining
  2212     interfaces
  2213   - o/snapshotstate: set snapshot set id from its filename
  2214   - o/snapstate: move remove-related tests to snapstate_remove_test.go
  2215   - desktop/notification: switch ExpireTimeout to time.Duration
  2216   - desktop/notification: add unit tests
  2217   - snap: snap help output refresh
  2218   - tests/nested/manual/preseed: include a system-usernames snap when
  2219     preseeding
  2220   - tests: fix sudo-env test
  2221   - tests: fix nested core20 shellcheck bug
  2222   - tests/lib: move to new directory when restoring PWD, cleanup
  2223     unpacked unpacked snap directories
  2224   - desktop/notification: add bindings for FDO notifications
  2225   - dbustest: fix stale comment references
  2226   - many: move ManagedAssetsBootloader into TrustedAssetsBootloader,
  2227     drop former
  2228   - snap-repair: add uc20 support
  2229   - tests: print all the serial logs for the nested test
  2230   - o/snapstate/check_snap_test.go: mock osutil.Find{U,G}id to avoid
  2231     bug in test
  2232   - cmd/snap/auto-import: stop importing system user assertions from
  2233     initramfs mnts
  2234   - osutil/group.go: treat all non-nil errs from user.Lookup{Group,}
  2235     as Unknown*
  2236   - asserts: deserialize grouping only once in Pool.AddBatch if needed
  2237   - gadget: allow content observer to have opinions about a change
  2238   - tests: new snaps-state command - part1
  2239   - o/assertstate: support refreshing any number of snap-declarations
  2240   - boot: use test helpers
  2241   - tests/core/snap-debug-bootvars: also check snap_mode
  2242   - many/apparmor: adjust rules for reading profile/ execing new
  2243     profiles for new kernel
  2244   - tests/core/snap-debug-bootvars: spread test for snap debug boot-
  2245     vars
  2246   - tests/lib/nested.sh: more little tweaks
  2247   - tests/nested/manual/grade-signed-above-testkeys-boot: enable kvm
  2248   - cmd/s-b/initramfs-mounts: use ConfigureTargetSystem for install,
  2249     recover modes
  2250   - overlord: explicitly set refresh-app-awareness in tests
  2251   - kernel: remove "edition" from kernel.yaml and add "update"
  2252   - spread: drop vendor from the packed project archive
  2253   - boot: fix debug bootloader variables dump on UC20 systems
  2254   - wrappers, systemd: allow empty root dir and conditionally do not
  2255     pass --root to systemctl
  2256   - tests/nested/manual: add test for grades above signed booting with
  2257     testkeys
  2258   - tests/nested: misc robustness fixes
  2259   - o/assertstate,asserts: use bulk refresh to refresh snap-
  2260     declarations
  2261   - tests/lib/prepare.sh: stop patching the uc20 initrd since it has
  2262     been updated now
  2263   - tests/nested/manual/refresh-revert-fundamentals: re-enable test
  2264   - update-pot: ignore .go files inside .git when running xgettext-go
  2265   - tests: disable part of the lxd test completely on 16.04.
  2266   - o/snapshotstate: tweak comment regarding snapshot filename
  2267   - o/snapstate: improve snapshot iteration
  2268   - bootloader: lk cleanups
  2269   - tests: update to support nested kvm without reboots on UC20
  2270   - tests/nested/manual/preseed: disable system-key check for 20.04
  2271     image
  2272   - spread.yaml: add ubuntu-20.10-64 to qemu
  2273   - store: handle v2 error when fetching assertions
  2274   - gadget: resolve device mapper devices for fallback device lookup
  2275   - tests/nested/cloud-init-many: simplify tests and unify
  2276     helpers/seed inputs
  2277   - tests: copy /usr/lib/snapd/info to correct directory
  2278   - check-pr-title.py * : allow "*" in the first part of the title
  2279   - many: typos and small test tweak
  2280   - tests/main/lxd: disable cgroup combination for 16.04 that is
  2281     failing a lot
  2282   - tests: make nested signing helpers less confusing
  2283   - tests: misc nested changes
  2284   - tests/nested/manual/refresh-revert-fundamentals: disable
  2285     temporarily
  2286   - tests/lib/cla_check: default to Python 3, tweaks, formatting
  2287   - tests/lib/cl_check.py: use python3 compatible code
  2288  
  2289  * Thu Oct 08 2020 Michael Vogt <mvo@ubuntu.com>
  2290  - New upstream release 2.47.1
  2291   - o/configstate: create /etc/sysctl.d when applying early config
  2292     defaults
  2293   - cmd/snap-bootstrap/initramfs-mounts: also copy /etc/machine-id for
  2294     same IP addr
  2295   - packaging/{ubuntu,debian}: add liblzo2-dev as a dependency for
  2296     building snapd
  2297   - cmd/snap: allow snap help vs --all to diverge purposefully
  2298   - snap: snap help output refresh
  2299  
  2300  * Tue Sep 29 2020 Michael Vogt <mvo@ubuntu.com>
  2301  - New upstream release 2.47
  2302   - tests: fix nested core20 shellcheck bug
  2303   - many/apparmor: adjust rule for reading apparmor profile for new
  2304     kernel
  2305   - snap-repair: add uc20 support
  2306   - cmd/snap/auto-import: stop importing system user assertions from
  2307     initramfs mnts
  2308   - cmd/s-b/initramfs-mounts: use ConfigureTargetSystem for install,
  2309     recover modes
  2310   - gadget: resolve device mapper devices for fallback device lookup
  2311   - secboot: add boot manager profile to pcr protection profile
  2312   - sysconfig,o/devicestate: mv DisableNoCloud to
  2313     DisableAfterLocalDatasourcesRun
  2314   - tests: make gadget-reseal more robust
  2315   - tests: skip nested images pre-configuration by default
  2316   - tests: fix for basic20 test running on external backend and rpi
  2317   - tests: improve kernel reseal test
  2318   - boot: adjust comments, naming, log success around reseal
  2319   - tests/nested, fakestore: changes necessary to run nested uc20
  2320     signed/secured tests
  2321   - tests: add nested core20 gadget reseal test
  2322   - boot/modeenv: track unknown keys in Read and put back into modeenv
  2323     during Write
  2324   - interfaces/process-control: add sched_setattr to seccomp
  2325   - boot: with unasserted kernels reseal if there's a hint modeenv
  2326     changed
  2327   - client: bump the default request timeout to 120s
  2328   - configcore: do not error in console-conf.disable for install mode
  2329   - boot: streamline bootstate20.go reseal and tests changes
  2330   - boot: reseal when changing kernel
  2331   - cmd/snap/model: specify grade in the model command output
  2332   - tests: simplify
  2333     repack_snapd_snap_with_deb_content_and_run_mode_first_boot_tweaks
  2334   - test: improve logging in nested tests
  2335   - nested: add support to telnet to serial port in nested VM
  2336   - secboot: use the snapcore/secboot native recovery key type
  2337   - tests/lib/nested.sh: use more focused cloud-init config for uc20
  2338   - tests/lib/nested.sh: wait for the tpm socket to exist
  2339   - spread.yaml, tests/nested: misc changes
  2340   - tests: add more checks to disk space awareness spread test
  2341   - tests: disk space awareness spread test
  2342   - boot: make MockUC20Device use a model and MockDevice more
  2343     realistic
  2344   - boot,many: reseal only when meaningful and necessary
  2345   - tests/nested/core20/kernel-failover: add test for failed refresh
  2346     of uc20 kernel
  2347   - tests: fix nested to work with qemu and kvm
  2348   - boot: reseal when updating boot assets
  2349   - tests: fix snap-routime-portal-info test
  2350   - boot: verify boot chain file in seal and reseal tests
  2351   - tests: use full path to test-snapd-refresh.version binary
  2352   - boot: store boot chains during install, helper for checking
  2353     whether reseal is needed
  2354   - boot: add call to reseal an existing key
  2355   - boot: consider boot chains with unrevisioned kernels incomparable
  2356   - overlord: assorted typos and miscellaneous changes
  2357   - boot: group SealKeyModelParams by model, improve testing
  2358   - secboot: adjust parameters to buildPCRProtectionProfile
  2359   - strutil: add SortedListsUniqueMergefrom the doc comment:
  2360   - snap/naming: upgrade TODO to TODO:UC20
  2361   - secboot: add call to reseal an existing key
  2362   - boot: in seal.go adjust error message and function names
  2363   - o/snapstate: check available disk space in RemoveMany
  2364   - boot: build bootchains data for sealing
  2365   - tests: remove "set -e" from function only shell libs
  2366   - o/snapstate: disk space check on UpdateMany
  2367   - o/snapstate: disk space check with snap update
  2368   - snap: implement new `snap reboot` command
  2369   - boot: do not reorder boot assets when generating predictable boot
  2370     chains and other small tweaks
  2371   - tests: some fixes and improvements for nested execution
  2372   - tests/core/uc20-recovery: fix check for at least specific calls to
  2373     mock-shutdown
  2374   - boot: be consistent using bootloader.Role* consts instead of
  2375     strings
  2376   - boot: helper for generating secboot load chains from a given boot
  2377     asset sequence
  2378   - boot: tweak boot chains to support a list of kernel command lines,
  2379     keep track of model and kernel boot file
  2380   - boot,secboot: switch to expose and use snapcore/secboot load event
  2381     trees
  2382   - tests: use `nested_exec` in core{20,}-early-config test
  2383   - devicestate: enable cloud-init on uc20 for grade signed and
  2384     secured
  2385   - boot: add "rootdir" to baseBootenvSuite and use in tests
  2386   - tests/lib/cla_check.py: don't allow users.noreply.github.com
  2387     commits to pass CLA
  2388   - boot: represent boot chains, helpers for marshalling and
  2389     equivalence checks
  2390   - boot: mark successful with boot assets
  2391   - client, api: handle insufficient space error
  2392   - o/snapstate: disk space check with single snap install
  2393   - configcore: "service.console-conf.disable" is gadget defaults only
  2394   - packaging/opensuse: fix for /usr/libexec on TW, do not hardcode
  2395     AppArmor profile path
  2396   - tests: skip udp protocol in nfs-support test on ubuntu-20.10
  2397   - packaging/debian-sid: tweak code preparing _build tree
  2398   - many: move seal code from gadget/install to boot
  2399   - tests: remove workaround for cups on ubuntu-20.10
  2400   - client: implement RebootToSystem
  2401   - many: seed.Model panics now if called before LoadAssertions
  2402   - daemon: add /v2/systems "reboot" action API
  2403   - github: run tests also on push to release branches
  2404   - interfaces/bluez: let slot access audio streams
  2405   - seed,c/snap-bootstrap: simplify snap-bootstrap seed reading with
  2406     new seed.ReadSystemEssential
  2407   - interfaces: allow snap-update-ns to read /proc/cmdline
  2408   - tests: new organization for nested tests
  2409   - o/snapstate, features: add feature flags for disk space awareness
  2410   - tests: workaround for cups issue on 20.10 where default printer is
  2411     not configured.
  2412   - interfaces: update cups-control and add cups for providing snaps
  2413   - boot: keep track of the original asset when observing updates
  2414   - tests: simplify and fix tests for disk space checks on snap remove
  2415   - sysconfig/cloudinit.go: add AllowCloudInit and use GadgetDir for
  2416     cloud.conf
  2417   - tests/main: mv core specific tests to core suite
  2418   - tests/lib/nested.sh: reset the TPM when we create the uc20 vm
  2419   - devicestate: rename "mockLogger" to "logbuf"
  2420   - many: introduce ContentChange for tracking gadget content in
  2421     observers
  2422   - many: fix partion vs partition typo
  2423   - bootloader: retrieve boot chains from bootloader
  2424   - devicestate: add tests around logging in RequestSystemAction
  2425   - boot: handle canceled update
  2426   - bootloader: tweak doc comments (thanks Samuele)
  2427   - seed/seedwriter: test local asserted snaps with UC20 grade signed
  2428   - sysconfig/cloudinit.go: add DisableNoCloud to
  2429     CloudInitRestrictOptions
  2430   - many: use BootFile type in load sequences
  2431   - boot,bootloader: clarifications after the changes to introduce
  2432     bootloader.Options.Role
  2433   - boot,bootloader,gadget: apply new bootloader.Options.Role
  2434   - o/snapstate, features: add feature flag for disk space check on
  2435     remove
  2436   - testutil: add checkers for symbolic link target
  2437   - many: refactor tpm seal parameter setting
  2438   - boot/bootstate20: reboot to rollback to previous kernel
  2439   - boot: add unit test helpers
  2440   - boot: observe update & rollback of trusted assets
  2441   - interfaces/utf: Add MIRKey to u2f devices
  2442   - o/devicestate/devicestate_cloudinit_test.go: test cleanup for uc20
  2443     cloud-init tests
  2444   - many: check that users of BaseTest don't forget to consume
  2445     cleanups
  2446   - tests/nested/core20/tpm: verify trusted boot assets tracking
  2447   - github: run macOS job with Go 1.14
  2448   - many: misc doc-comment changes and typo fixes
  2449   - o/snapstate: disk space check with InstallMany
  2450   - many: cloud-init cleanups from previous PR's
  2451   - tests: running tests on opensuse leap 15.2
  2452   - run-checks: check for dirty build tree too
  2453   - vendor: run ./get-deps.sh to update the secboot hash
  2454   - tests: update listing test for "-dirty" versions
  2455   - overlord/devicestate: do not release the state lock when updating
  2456     gadget assets
  2457   - secboot: read kernel efi image from snap file
  2458   - snap: add size to the random access file return interface
  2459   - daemon: correctly parse Content-Type HTTP header.
  2460   - tests: account for apt-get on core18
  2461   - cmd/snap-bootstrap/initramfs-mounts: compute string outside of
  2462     loop
  2463   - mkversion.sh: simple hack to include dirty in version if the tree
  2464     is dirty
  2465   - cgroup,snap: track hooks on system bus only
  2466   - interfaces/systemd: compare dereferenced Service
  2467   - run-checks: only check files in git for misspelling
  2468   - osutil: add a package doc comment (via doc.go)
  2469   - boot: complain about reused asset name during initial install
  2470   - snapstate: installSize helper that calculates total size of snaps
  2471     and their prerequisites
  2472   - snapshots: export of snapshots
  2473   - boot/initramfs_test.go: reset boot vars on the bootloader for each
  2474     iteration
  2475  
  2476  * Fri Sep 04 2020 Michael Vogt <mvo@ubuntu.com>
  2477  - New upstream release 2.46.1
  2478   - interfaces: allow snap-update-ns to read
  2479     /proc/cmdline
  2480   - github: run macOS job with Go 1.14
  2481   - o/snapstate, features: add feature flag for disk space check on
  2482     remove
  2483   - tests: account for apt-get on core18
  2484   - mkversion.sh: include dirty in version if the tree
  2485     is dirty
  2486   - interfaces/systemd: compare dereferenced Service
  2487   - vendor.json: update mysterious secboot SHA again
  2488  
  2489  * Tue Aug 25 2020 Michael Vogt <mvo@ubuntu.com>
  2490  - New upstream release 2.46
  2491   - logger: add support for setting snapd.debug=1 on kernel cmdline
  2492   - o/snapstate: check disk space before creating automatic snapshot
  2493     on remove
  2494   - boot, o/devicestate: observe existing recovery bootloader trusted
  2495     boot assets
  2496   - many: use transient scope for tracking apps and hooks
  2497   - features: add HiddenSnapFolder feature flag
  2498   - tests/lib/nested.sh: fix partition typo, unmount the image on uc20
  2499     too
  2500   - runinhibit: open the lock file in read-only mode in IsLocked
  2501   - cmd/s-b/initramfs-mounts: make recover -> run mode transition
  2502     automatic
  2503   - tests: update spread test for unknown plug/slot with snapctl is-
  2504     connected
  2505   - osutil: add OpenExistingLockForReading
  2506   - kernel: add kernel.Validate()
  2507   - interfaces: add vcio interface
  2508   - interfaces/{docker,kubernetes}-support: load overlay and support
  2509     systemd cgroup driver
  2510   - tests/lib/nested.sh: use more robust code for finding what loop
  2511     dev we mounted
  2512   - cmd/snap-update-ns: detach all bind-mounted file
  2513   - snap/snapenv: set SNAP_REAL_HOME
  2514   - packaging: umount /snap on purge in containers
  2515   - interfaces: misc policy updates xlvi
  2516   - secboot,cmd/snap-bootstrap: cross-check partitions before
  2517     unlocking, mounting
  2518   - boot: copy boot assets cache to new root
  2519   - gadget,kernel: add new kernel.{Info,Asset} struct and helpers
  2520   - o/hookstate/ctlcmd: make is-connected check whether the plug or
  2521     slot exists
  2522   - tests: find -ignore_readdir_race when scanning cgroups
  2523   - interfaces/many: deny arbitrary desktop files and misc from
  2524     /usr/share
  2525   - tests: use "set -ex" in prep-snapd-in-lxd.sh
  2526   - tests: re-enable udisks test on debian-sid
  2527   - cmd/snapd-generator: use PATH fallback if PATH is not set
  2528   - tests: disable udisks2 test on arch linux
  2529   - github: use latest/stable go, not latest/edge
  2530   - tests: remove support for ubuntu 19.10 from spread tests
  2531   - tests: fix lxd test wrongly tracking 'latest'
  2532   - secboot: document exported functions
  2533   - cmd: compile snap gdbserver shim correctly
  2534   - many: correctly calculate the desktop file prefix everywhere
  2535   - interfaces: add kernel-crypto-api interface
  2536   - corecfg: add "system.timezone" setting to the system settings
  2537   - cmd/snapd-generator: generate drop-in to use fuse in container
  2538   - cmd/snap-bootstrap/initramfs-mounts: tweak names, add comments
  2539     from previous PR
  2540   - interfaces/many: miscellaneous updates for strict microk8s
  2541   - secboot,cmd/snap-bootstrap: don't import boot package from secboot
  2542   - cmd/snap-bootstrap/initramfs-mounts: call systemd-mount instead of
  2543     the-tool
  2544   - tests: work around broken update of systemd-networkd
  2545   - tests/main/install-fontconfig-cache-gen: enhance test by
  2546     verifying, add fonts to test
  2547   - o/devicestate: wrap asset update observer error
  2548   - boot: refactor such that bootStateUpdate20 mainly carries Modeenv
  2549   - mkversion.sh: disallow changelog versions that have git in it, if
  2550     we also have git version
  2551   - interfaces/many: miscellaneous updates for strict microk8s
  2552   - snap: fix repeated "cannot list recovery system" and add test
  2553   - boot: track trusted assets during initial install, assets cache
  2554   - vendor: update secboot to fix key data validation
  2555   - tests: unmount FUSE file-systems from XDG runtime dir
  2556   - overlord/devicestate: workaround non-nil interface with nil struct
  2557   - sandbox/cgroup: remove temporary workaround for multiple cgroup
  2558     writers
  2559   - sandbox/cgroup: detect dangling v2 cgroup
  2560   - bootloader: add helper for creating a bootloader based on gadget
  2561   - tests: support different images on nested execution
  2562   - many: reorg cmd/snapinfo.go into snap and new client/clientutil
  2563   - packaging/arch: use external linker when building statically
  2564   - tests: cope with ghost cgroupv2
  2565   - tests: fix issues related to restarting systemd-logind.service
  2566   - boot, o/devicestate: TrustedAssetUpdateObserver stubs, hook up to
  2567     gadget updates
  2568   - vendor: update github.com/kr/pretty to fix diffs of values with
  2569     pointer cycles
  2570   - boot: move bootloaderKernelState20 impls to separate file
  2571   - .github/workflows: move snap building to test.yaml as separate
  2572     cached job
  2573   - tests/nested/manual/minimal-smoke: run core smoke tests in a VM
  2574     meeting minimal requirements
  2575   - osutil: add CommitAs to atomic file
  2576   - gadget: introduce content update observer
  2577   - bootloader: introduce TrustedAssetsBootloader, implement for grub
  2578   - o/snapshotstate: helpers for calculating disk space needed for an
  2579     automatic snapshot
  2580   - gadget/install: retrieve command lines from bootloader
  2581   - boot/bootstate20: unify commit method impls, rm
  2582     bootState20MarkSuccessful
  2583   - tests: add system information and image information when debug
  2584     info is displayed
  2585   - tests/main/cgroup-tracking: try to collect some information about
  2586     cgroups
  2587   - boot: introduce current_boot_assets and
  2588     current_recovery_boot_assets to modeenv
  2589   - tests: fix for timing issues on journal-state test
  2590   - many: remove usage and creation of hijacked pid cgroup
  2591   - tests: port regression-home-snap-root-owned to tests.session
  2592   - tests: run as hightest via tests.session
  2593   - github: run CLA checks on self-hosted workers
  2594   - github: remove Ubuntu 19.10 from actions workflow
  2595   - tests: remove End-Of-Life opensuse/fedora releases
  2596   - tests: remove End-Of-Life releases from spread.yaml
  2597   - tests: fix debug section of appstream-id test
  2598   - interfaces: check !b.preseed earlier
  2599   - tests: work around bug in systemd/debian
  2600   - boot: add deepEqual, Copy helpers for Modeenv to simplify
  2601     bootstate20 refactor
  2602   - cmd: add new "snap recovery" command
  2603   - interfaces/systemd: use emulation mode when preseeding
  2604   - interfaces/kmod: don't load kernel modules in kmod backend when
  2605     preseeding
  2606   - interfaces/udev: do not reload udevadm rules when preseeding
  2607   - cmd/snap-preseed: use snapd from the deb if newer than from seeds
  2608   - boot: fancy marshaller for modeenv values
  2609   - gadget, osutil: use atomic file copy, adjust tests
  2610   - overlord: use new tracking cgroup for refresh app awareness
  2611   - github: do not skip gofmt with Go 1.9/1.10
  2612   - many: introduce content write observer, install mode glue, initial
  2613     seal stubs
  2614   - daemon,many: switch to use client.ErrorKind and drop the local
  2615     errorKind...
  2616   - tests: new parameters for nested execution
  2617   - client: move all error kinds into errors.go and add doc strings
  2618   - cmd/snap: display the error in snap debug seeding if seeding is in
  2619     error
  2620   - cmd/snap/debug/seeding: use unicode for proper yaml
  2621   - tests/cmd/snap-bootstrap/initramfs-mounts: add test case for empty
  2622     recovery_mode
  2623   - osutil/disks: add mock disk and tests for happy path of mock disks
  2624   - tests: refresh/revert snapd in uc20
  2625   - osutil/disks: use a dedicated error to indicate a fs label wasn't
  2626     found
  2627   - interfaces/system-key: in WriteSystemKey during tests, don't call
  2628     ParserFeatures
  2629   - boot: add current recovery systems to modeenv
  2630   - bootloader: extend managed assets bootloader interface to compose
  2631     a candidate command line
  2632   - interfaces: make the unmarshal test match more the comment
  2633   - daemon/api: use pointers to time.Time for debug seeding aspect
  2634   - o/ifacestate: update security profiles in connect undo handler
  2635   - interfaces: add uinput interface
  2636   - cmd/snap-bootstrap/initramfs-mounts: add doSystemdMount + unit
  2637     tests
  2638   - o/devicestate: save seeding/preseeding times for use with debug
  2639     seeding api
  2640   - cmd/snap/debug: add "snap debug seeding" command for preseeding
  2641     debugging
  2642   - tests/main/selinux-clean: workaround SELinux denials triggered by
  2643     linger setup on Centos8
  2644   - bootloader: compose command line with mode and extra arguments
  2645   - cmd/snap, daemon: detect and bail purge on multi-snap
  2646   - o/ifacestate: fix bug in snapsWithSecurityProfiles
  2647   - interfaces/builtin/multipass: replace U+00A0 no-break space with
  2648     simple space
  2649   - bootloader/assets: generate bootloader assets from files
  2650   - many/tests/preseed: reset the preseeded images before preseeding
  2651     them
  2652   - tests: drop accidental accents from e
  2653   - secboot: improve key sealing tests
  2654   - tests: replace _wait_for_file_change with retry
  2655   - tests: new fs-state which replaces the files.sh helper
  2656   - sysconfig/cloudinit_test.go: add test for initramfs case, rm "/"
  2657     from path
  2658   - cmd/snap: track started apps and hooks
  2659   - tests/main/interfaces-pulseaudio: disable start limit checking for
  2660     pulseaudio service
  2661   - api: seeding debug api
  2662   - .github/workflows/snap-build.yaml: build the snapd snap via GH
  2663     Actions too
  2664   - tests: moving journalctl.sh to a new journal-state tool
  2665   - tests/nested/manual: add spread tests for cloud-init vuln
  2666   - bootloader/assets: helpers for registering per-edition snippets,
  2667     register snippets for grub
  2668   - data,packaging,wrappers: extend D-Bus service activation search
  2669     path
  2670   - spread: add opensuse 15.2 and tumbleweed for qemu
  2671   - overlord,o/devicestate: restrict cloud-init on Ubuntu Core
  2672   - sysconfig/cloudinit: add RestrictCloudInit
  2673   - cmd/snap-preseed: check that target path exists and is a directory
  2674     on --reset
  2675   - tests: check for pids correctly
  2676   - gadget,gadget/install: refactor partition table update
  2677   - sysconfig/cloudinit: add CloudInitStatus func + CloudInitState
  2678     type
  2679   - interface/fwupd: add more policies for making fwupd upstream
  2680     strict
  2681   - tests: new to-one-line tool which replaces the strings.sh helper
  2682   - interfaces: new helpers to get and compare system key, for use
  2683     with seeding debug api
  2684   - osutil, many: add helper for checking whether the process is a go
  2685     test binary
  2686   - cmd/snap-seccomp/syscalls: add faccessat2
  2687   - tests: adjust xdg-open after launcher changes
  2688   - tests: new core config helper
  2689   - usersession/userd: do not modify XDG_DATA_DIRS when calling xdg-
  2690     open
  2691   - cmd/snap-preseed: handle relative chroot path
  2692   - snapshotstate: move sizer to osutil.Sizer()
  2693   - tests/cmd/snap-bootstrap/initramfs-mounts: rm duplicated env ref
  2694     kernel tests
  2695   - gadget/install,secboot: use snapcore/secboot luks2 api
  2696   - boot/initramfs_test.go: add Commentf to more Assert()'s
  2697   - tests/lib: account for changes in arch package file name extension
  2698   - bootloader/bootloadertest: fix comment typo
  2699   - bootloader: add helper for getting recovery system environment
  2700     variables
  2701   - tests: preinstall shellcheck and run tests on focal
  2702   - strutil: add a helper for parsing kernel command line
  2703   - osutil: add CheckFreeSpace helper
  2704   - secboot: update tpm connection error handling
  2705   - packaging, cmd/snap-mgmt, tests: remove modules files on purge
  2706   - tests: add tests.cleanup helper
  2707   - packaging: add "ca-certificates" to build-depends
  2708   - tests: more checks in core20 early config spread test
  2709   - tests: fix some snapstate tests to use pointers for
  2710     snapmgrTestSuite
  2711   - boot: better naming of helpers for obtaining kernel command line
  2712   - many: use more specific check for unit test mocking
  2713   - systemd/escape: fix issues with "" and "\t" handling
  2714   - asserts: small improvements and corrections for sequence-forming
  2715     assertions' support
  2716   - boot, bootloader: query kernel command line of run mod and
  2717     recovery mode systems
  2718   - snap/validate.go: disallow snap layouts with new top-level
  2719     directories
  2720   - tests: allow to add a new label to run nested tests as part of PR
  2721     validation
  2722   - tests/core/gadget-update-pc: port to UC20
  2723   - tests: improve nested tests flexibility
  2724   - asserts: integer headers: disallow prefix zeros and make parsing
  2725     more uniform
  2726   - asserts: implement Database.FindSequence
  2727   - asserts: introduce SequenceMemberAfter in the asserts backstores
  2728   - spread.yaml: remove tests/lib/tools from PATH
  2729   - overlord: refuse to install snaps whose activatable D-Bus services
  2730     conflict with installed snaps
  2731   - tests: shorten lxd-state undo-mount-changes
  2732   - snap-confine: don't die if a device from sysfs path cannot be
  2733     found by udev
  2734   - tests: fix argument handling of apt-state
  2735   - tests: rename lxd-tool to lxd-state
  2736   - tests: rename user-tool to user-state, fix --help
  2737   - interfaces: add gconf interface
  2738   - sandbox/cgroup: avoid parsing security tags twice
  2739   - tests: rename version-tool to version-compare
  2740   - cmd/snap-update-ns: handle anomalies better
  2741   - tests: fix call to apt.Package.mark_install(auto_inst=True)
  2742   - tests: rename mountinfo-tool to mountinfo.query
  2743   - tests: rename memory-tool to memory-observe-do
  2744   - tests: rename invariant-tool to tests.invariant
  2745   - tests: rename apt-tool to apt-state
  2746   - many: managed boot config during run mode setup
  2747   - asserts: introduce the concept of sequence-forming assertion types
  2748   - tests: tweak comments/output in uc20-recovery test
  2749   - tests/lib/pkgdb: do not use quiet when purging debs
  2750   - interfaces/apparmor: allow snap-specific /run/lock
  2751   - interfaces: add system-source-code for access to /usr/src
  2752   - sandbox/cgroup: extend SnapNameFromPid with tracking cgroup data
  2753   - gadget/install: move udev trigger to gadget/install
  2754   - many: make nested spread tests more reliable
  2755   - tests/core/uc20-recovery: apply hack to get gopath in recover mode
  2756     w/ external backend
  2757   - tests: enable tests on uc20 which now work with the real model
  2758     assertion
  2759   - tests: enable system-snap-refresh test on uc20
  2760   - gadget, bootloader: preserve managed boot assets during gadget
  2761     updates
  2762   - tests: fix leaked dbus-daemon in selinux-clean
  2763   - tests: add servicestate.Control tests
  2764   - tests: fix "restart.service"
  2765   - wrappers: helper for enabling services - extract and move enabling
  2766     of services into a helper
  2767   - tests: new test to validate refresh and revert of kernel and
  2768     gadget on uc20
  2769   - tests/lib/prepare-restore: collect debug info when prepare purge
  2770     fails
  2771   - bootloader: allow managed bootloader to update its boot config
  2772   - tests: Remove unity test from nightly test suite
  2773   - o/devicestate: set mark-seeded to done in the task itself
  2774   - tests: add spread test for disconnect undo caused by failing
  2775     disconnect hook
  2776   - sandbox/cgroup: allow discovering PIDs of given snap
  2777   - osutil/disks: support IsDecryptedDevice for mountpoints which are
  2778     dm devices
  2779   - osutil: detect autofs mounted in /home
  2780   - spread.yaml: allow amazon-linux-2-64 qemu with
  2781     ec2-user/ec2-user
  2782   - usersession: support additional zoom URL schemes
  2783   - overlord: mock timings.DurationThreshold in TestNewWithGoodState
  2784   - sandbox/cgroup: add tracking helpers
  2785   - tests: detect stray dbus-daemon
  2786   - overlord: refuse to install snaps providing user daemons on Ubuntu
  2787     14.04
  2788   - many: move encryption and installer from snap-boostrap to gadget
  2789   - o/ifacestate: fix connect undo handler
  2790   - interfaces: optimize rules of multiple connected iio/i2c/spi plugs
  2791   - bootloader: introduce managed bootloader, implement for grub
  2792   - tests: fix incorrect check in smoke/remove test
  2793   - asserts,seed: split handling of essential/not essential model
  2794     snaps
  2795   - gadget: fix typo in mounted filesystem updater
  2796   - gadget: do only one mount point lookup in mounted fs updater
  2797   - tests/core/snap-auto-mount: try to make the test more robust
  2798   - tests: adding ubuntu-20.04 to google-sru backend
  2799   - o/servicestate: add updateSnapstateServices helper
  2800   - bootloader: pull recovery grub config from internal assets
  2801   - tests/lib/tools: apply linger workaround when needed
  2802   - overlord/snapstate: graceful handling of denied "managed" refresh
  2803     schedule
  2804   - snapstate: fix autorefresh from classic->strict
  2805   - overlord/configstate: add system.kernel.printk.console-loglevel
  2806     option
  2807   - tests: fix assertion disk handling for nested UC systems
  2808   - snapstate: use testutil.HostScaledTimeout() in snapstate tests
  2809   - tests: extra worker for google-nested backend to avoid timeout
  2810     error on uc20
  2811   - snapdtool: helper to check whether the current binary is reexeced
  2812     from a snap
  2813   - tests: mock servicestate in api tests to avoid systemctl checks
  2814   - many: rename back snap.Info.GetType to Type
  2815   - tests/lib/cla_check: expect explicit commit range
  2816   - osutil/disks: refactor diskFromMountPointImpl a bit
  2817   - o/snapstate: service-control task handler
  2818   - osutil: add disks pkg for associating mountpoints with
  2819     disks/partitions
  2820   - gadget,cmd/snap-bootstrap: move partitioning to gadget
  2821   - seed: fix LoadEssentialMeta when gadget is not loaded
  2822   - cmd/snap: Debian does not allow $SNAP_MOUNT_DIR/bin in sudo
  2823     secure_path
  2824   - asserts: introduce new assertion validation-set
  2825   - asserts,daemon: add support for "serials" field in system-user
  2826     assertion
  2827   - data/sudo: drop a failed sudo secure_path workaround
  2828   - gadget: mv encodeLabel to osutil/disks.EncodeHexBlkIDFormat
  2829   - boot, snap-bootstrap: move initramfs-mounts logic to boot pkg
  2830   - spread.yaml: update secure boot attribute name
  2831   - interfaces/block_devices: add NVMe subsystem devices, support
  2832     multipath paths
  2833   - tests: use the "jq" snap from the edge channel
  2834   - tests: simplify the tpm test by removing the test-snapd-mokutil
  2835     snap
  2836   - boot/bootstate16.go: clean snap_try_* vars when not in Trying
  2837     status too
  2838   - tests/main/sudo-env: check snap path under sudo
  2839   - tests/main/lxd: add test for snaps inside nested lxd containers
  2840     not working
  2841   - asserts/internal: expand errors about invalid serialized grouping
  2842     labels
  2843   - usersession/userd: add msteams url support
  2844   - tests/lib/prepare.sh: adjust comment about sgdisk
  2845   - tests: fix how gadget pc is detected when the snap does not exist
  2846     and ls fails
  2847   - tests: move a few more tests to snapstate_update_test.go
  2848   - tests/main: add spread test for running svc from install hook
  2849   - tests/lib/prepare: increase the size of the uc16/uc18 partitions
  2850   - tests/special-home-can-run-classic-snaps: re-enable
  2851   - workflow: test PR title as part of the static checks again
  2852   - tests/main/xdg-open-compat: backup and restore original xdg-open
  2853   - tests: move update-related tests to snapstate_update_test.go
  2854   - cmd,many: move Version and bits related to snapd tools to
  2855     snapdtool, merge cmdutil
  2856   - tests/prepare-restore.sh: reset-failed systemd-journald before
  2857     restarting
  2858   - interfaces: misc small interface updates
  2859   - spread: use find rather than recursive ls, skip mounted snaps
  2860   - tests/lib/prepare-restore.sh: if we failed to purge snapd deb, ls
  2861     /var/lib/snapd
  2862   - tests: enable snap-auto-mount test on core20
  2863   - cmd/snap: do not show $PATH warning when executing under sudo on a
  2864     known distro
  2865   - asserts/internal: add some iteration benchmarks
  2866   - sandbox/cgroup: improve pid parsing code
  2867   - snap: add new `snap run --experimental-gdbserver` option
  2868   - asserts/internal: limit Grouping size switching to a bitset
  2869     representationWe don't always use the bit-set representation
  2870     because:
  2871   - snap: add an activates-on property to apps for D-Bus activation
  2872   - dirs: delete unused Cloud var, fix typo
  2873   - sysconfig/cloudinit: make callers of DisableCloudInit use
  2874     WritableDefaultsDir
  2875   - tests: fix classic ubuntu core transition auth
  2876   - tests: fail in setup_reflash_magic() if there is snapd state left
  2877   - tests: port interfaces-many-core-provided to tests.session
  2878   - tests: wait after creating partitions with sfdisk
  2879   - bootloader: introduce bootloarder assets, import grub.cfg with an
  2880     edition marker
  2881   - riscv64: bump timeouts
  2882   - gadget: drop dead code, hide exports that are not used externally
  2883   - tests: port 2 uc20 part1
  2884   - tests: fix bug waiting for snap command to be ready
  2885   - tests: move try-related tests to snapstate_try_test.go
  2886   - tests: add debug for 20.04 prepare failure
  2887   - travis.yml: removed, all our checks run in GH actions now
  2888   - tests: clean up up the use of configcoreSuite in the configcore
  2889     tests
  2890   - sandbox/cgroup: remove redundant pathOfProcPidCgroup
  2891   - sandbox/cgroup: add tests for ParsePids
  2892   - tests: fix the basic20 test for uc20 on external backend
  2893   - tests: use configcoreSuite in journalSuite and remove some
  2894     duplicated code
  2895   - tests: move a few more tests to snapstate_install_test
  2896   - tests: assorted small patches
  2897   - dbusutil/dbustest: separate license from package
  2898   - interfaces/builtin/time-control: allow POSIX clock API
  2899   - usersession/userd: add "slack" to the white list of URL schemes
  2900     handled by xdg-open
  2901   - tests: check that host settings like hostname are settable on core
  2902   - tests: port xdg-settings test to tests.session
  2903   - tests: port snap-handle-link test to tests.session
  2904   - arch: add riscv64
  2905   - tests: core20 early defaults spread test
  2906   - tests: move install tests from snapstate_test.go to
  2907     snapstate_install_test.go
  2908   - github: port macOS sanity checks from travis
  2909   - data/selinux: allow checking /var/cache/app-info
  2910   - o/devicestate: core20 early config from gadget defaults
  2911   - tests: autoremove after removing lxd in preseed-lxd test
  2912   - secboot,cmd/snap-bootstrap: add tpm sealing support to secboot
  2913   - sandbox/cgroup: move FreezerCgroupDir from dirs.go
  2914   - tests: update the file used to detect the boot path on uc20
  2915   - spread.yaml: show /var/lib/snapd in debug
  2916   - cmd/snap-bootstrap/initramfs-mounts: also copy systemd clock +
  2917     netplan files
  2918   - snap/naming: add helpers to parse app and hook security tags
  2919   - tests: modernize retry tool
  2920   - tests: fix and trim debug section in xdg-open-portal
  2921   - tests: modernize and use snapd.tool
  2922   - vendor: update to latest github.com/snapcore/bolt for riscv64
  2923   - cmd/snap-confine: add support for libc6-lse
  2924   - interfaces: miscellaneous policy updates xlv
  2925   - interfaces/system-packages-doc: fix typo in variable names
  2926   - tests: port interfaces-calendar-service to tests.session
  2927   - tests: install/run the lzo test snap too
  2928   - snap: (small) refactor of `snap download` code for
  2929     testing/extending
  2930   - data: fix shellcheck warnings in snapd.sh.in
  2931   - packaging: disable buildmode=pie for riscv64
  2932   - tests: install test-snapd-rsync snap from edge channel
  2933   - tests: modernize tests.session and port everything using it
  2934   - tests: add ubuntu 20.10 to spread tests
  2935   - cmd/snap/remove: mention snap restore/automatic snapshots
  2936   - dbusutil: move all D-Bus helpers and D-Bus test helpers
  2937   - wrappers: pass 'disable' flag to StopServices wrapper
  2938   - osutil: enable riscv64 build
  2939   - snap/naming: add ParseSecurityTag and friends
  2940   - tests: port document-portal-activation to session-tool
  2941   - bootloader: rename test helpers to reflect we are mocking EFI boot
  2942     locations
  2943   - tests: disable test of nfs v3 with udp proto on debian-sid
  2944   - tests: plan to improve the naming and uniformity of utilities
  2945   - tests: move *-tool tests to their own suite
  2946   - snap-bootstrap: remove sealed key file on reinstall
  2947   - bootloader/ubootenv: don't panic with an empty uboot env
  2948   - systemd: rename actualFsTypeAndMountOptions to
  2949     hostFsTypeAndMountOptions
  2950   - daemon: fix filtering of service-control changes for snap.app
  2951   - tests: spread test for preseeding in lxd container
  2952   - tests: fix broken snapd.session agent.socket
  2953   - wrappers: add RestartServices function and ReloadOrRestart to
  2954     systemd
  2955   - o/cmdstate: handle ignore flag on exec-command tasks
  2956   - gadget: make ext4 filesystems with or without metadata checksum
  2957   - tests: update statx test to run on all LTS releases
  2958   - configcore: show better error when disabling services
  2959   - interfaces: add hugepages-control
  2960   - interfaces-ssh-keys: Support reading /etc/ssh/ssh_config.d/
  2961   - tests: run ubuntu-20.04-* tests on all ubuntu-2* releases
  2962   - tests: skip interfaces-openvswitch for centos 8 in nightly suite
  2963   - tests: reload systemd --user for root, if present
  2964   - tests: reload systemd after editing /etc/fstab
  2965   - tests: add missing dependencies needed for sbuild test on debian
  2966   - tests: reload systemd after removing pulseaudio
  2967   - image, tests: core18 early config.
  2968   - interfaces: add system-packages-doc interface
  2969   - cmd/snap-preseed, systemd: fix handling of fuse.squashfuse when
  2970     preseeding
  2971   - interfaces/fwupd: allow bind mount to /boot on core
  2972   - tests: improve oom-vitality tests
  2973   - tests: add fedora 32 to spread.yaml
  2974   - config: apply vitality-hint immediately when the config changes
  2975   - tests: port snap-routine-portal-info to session-tool
  2976   - configcore: add "service.console-conf.disable" config option
  2977   - tests: port xdg-open to session-tool
  2978   - tests: port xdg-open-compat to session-tool
  2979   - tests: port interfaces-desktop-* to session-tool
  2980   - spread.yaml: apply yaml formatter/linter
  2981   - tests: port interfaces-wayland to session-tool
  2982   - o/devicestate: refactor current system handling
  2983   - snap-mgmt: perform cleanup of user services
  2984   - snap/snapfile,squashfs: followups from 8729
  2985   - boot, many: require mode in modeenv
  2986   - data/selinux: update policy to allow forked processes to call
  2987     getpw*()
  2988   - tests: log stderr from dbus-monitor
  2989   - packaging: build cmd/snap and cmd/snap-bootstrap with nomanagers
  2990     tag
  2991   - snap/squashfs: also symlink snap Install with uc20 seed snap dir
  2992     layout
  2993   - interfaces/builtin/desktop: do not mount fonts cache on distros
  2994     with quirks
  2995   - data/selinux: allow snapd to remove/create the its socket
  2996   - testutil/exec.go: set PATH after running shellcheck
  2997   - tests: silence stderr from dbus-monitor
  2998   - snap,many: mv Open to snapfile pkg to support add'l options to
  2999     Container methods
  3000   - devicestate, sysconfig: revert support for cloud.cfg.d/ in the
  3001     gadget
  3002   - github: remove workaround for bug 133 in actions/cache
  3003   - tests: remove dbus.sh
  3004   - cmd/snap-preseed: improve mountpoint checks of the preseeded
  3005     chroot
  3006   - spread.yaml: add ps aux to debug section
  3007   - github: run all spread systems in a single go with cached results
  3008   - test: session-tool cli tweaks
  3009   - asserts: rest of the Pool API
  3010   - tests: port interfaces-network-status-classic to session-tool
  3011   - packaging: remove obsolete 16.10,17.04 symlinks
  3012   - tests: setup portals before starting user session
  3013   - o/devicestate: typo fix
  3014   - interfaces/serial-port: add NXP SC16IS7xx (ttySCX) to allowed
  3015     devices
  3016   - cmd/snap/model: support store, system-user-authority keys in
  3017     --verbose
  3018   - o/devicestate: raise conflict when requesting system action while
  3019     seeding
  3020   - tests: detect signs of crashed snap-confine
  3021   - tests: sign kernel and gadget to run nested tests using current
  3022     snapd code
  3023   - tests: remove gnome-online-accounts we install
  3024   - tests: fix the issue where all the tests were executed on secboot
  3025     system
  3026   - tests: port interfaces-accounts-service to session-tool
  3027   - interfaces/network-control: bring /var/lib/dhcp from host
  3028   - image,cmd/snap,tests: add support for store-wide cohort keys
  3029   - configcore: add nomanagers buildtag for conditional build
  3030   - tests: port interfaces-password-manager-service to session-tool
  3031   - o/devicestate: cleanup system actions supported by recover mode
  3032   - snap-bootstrap: remove create-partitions and update tests
  3033   - tests: fix nested tests
  3034   - packaging/arch: update PKGBUILD to match one in AUR
  3035   - tests: port interfaces-location-control to session-tool
  3036   - tests: port interfaces-contacts-service to session-tool
  3037   - state: log task errors in the journal too
  3038   - o/devicestate: change how current system is reported for different
  3039     modes
  3040   - devicestate: do not report "ErrNoState" for seeded up
  3041   - tests: add a note about broken test sequence
  3042   - tests: port interfaces-autopilot-introspection to session-tool
  3043   - tests: port interfaces-dbus to session-tool
  3044   - packaging: update sid packaging to match 16.04+
  3045   - tests: enable degraded test on uc20
  3046   - c/snaplock/runinhibit: add run inhibition operations
  3047   - tests: detect and report root-owned files in /home
  3048   - tests: reload root's systemd --user after snapd tests
  3049   - tests: test registration with serial-authority: [generic]
  3050   - cmd/snap-bootstrap/initramfs-mounts: copy auth.json and macaroon-
  3051     key in recover
  3052   - tests/mount-ns: stop binfmt_misc mount unit
  3053   - cmd/snap-bootstrap/initramfs-mounts: use booted kernel partition
  3054     uuid if available
  3055   - daemon, tests: indicate system mode, test switching to recovery
  3056     and back to run
  3057   - interfaces/desktop: silence more /var/lib/snapd/desktop/icons
  3058     denials
  3059   - tests/mount-ns: update to reflect new UEFI boot mode
  3060   - usersession,tests: clean ups for userd/settings.go and move
  3061     xdgopenproxy under usersession
  3062   - tests: disable mount-ns test
  3063   - tests: test user belongs to systemd-journald, on core20
  3064   - tests: run core/snap-set-core-config on uc20 too
  3065   - tests: remove generated session-agent units
  3066   - sysconfig: use new _writable_defaults dir to create cloud config
  3067   - cmd/snap-bootstrap/initramfs-mounts: cosmetic changes in prep for
  3068     future work
  3069   - asserts: make clearer that with label we mean a serialized label
  3070   - cmd/snap-bootstrap: tweak recovery trigger log messages
  3071   - asserts: introduce PoolTo
  3072   - userd: allow setting default-url-scheme-handler
  3073   - secboot: append uuid to ubuntu-data when decrypting
  3074   - o/configcore: pass extra options to FileSystemOnlyApply
  3075   - tests: add dbus-user-session to bionic and reorder package names
  3076   - boot, bootloader: adjust comments, expand tests
  3077   - tests: improve debugging of user session agent tests
  3078   - packaging: add the inhibit directory
  3079   - many: add core.resiliance.vitality-hint config setting
  3080   - tests: test adjustments and fixes for recently published images
  3081   - cmd/snap: coldplug auto-import assertions from all removable
  3082     devices
  3083   - secboot,cmd/snap-bootstrap: move initramfs-mounts tpm access to
  3084     secboot
  3085   - tests: not fail when boot dir cannot be determined
  3086   - tests: new directory used to store the cloud images on gce
  3087   - tests: inject snapd from edge into seeds of the image in manual
  3088     preseed test
  3089   - usersession/agent,wrappers: fix races between Shutdown and Serve
  3090   - tests: add dependency needed for next upgrade of bionic
  3091   - tests: new test user is used for external backend
  3092   - cmd/snap: fix the order of positional parameters in help output
  3093   - tests: don't create root-owned things in ~test
  3094   - tests/lib/prepare.sh: delete patching of the initrd
  3095   - cmd/snap-bootstrap/initramfs-mounts: add sudoers to dirs to copy
  3096     as well
  3097   - progress: tweak multibyte label unit test data
  3098   - o/devicestate,cmd/snap-bootstrap: seal to recover mode cmdline
  3099   - gadget: fix fallback device lookup for 'mbr' type structures
  3100   - configcore: only reload journald if systemd is new enough
  3101   - cmd/snap-boostrap, boot: use /run/mnt/data instead of ubuntu-data
  3102   - wrappers: allow user mode systemd daemons
  3103   - progress: fix progress bar with multibyte duration units
  3104   - tests: fix raciness in pulseaudio test
  3105   - asserts/internal: introduce Grouping and Groupings
  3106   - tests: remove user.sh
  3107   - tests: pair of follow-ups from earlier reviews
  3108   - overlord/snapstate: warn of refresh/postpone events
  3109   - configcore,tests: use daemon-reexec to apply watchdog config
  3110   - c/snap-bootstrap: check mount states via initramfsMountStates
  3111   - store: implement DownloadAssertions
  3112   - tests: run smoke test with different bases
  3113   - tests: port user-mounts test to session-tool
  3114   - store: handle error-list in fetch-assertions results
  3115   - tests: port interfaces-audio-playback-record to session-tool
  3116   - data/completion: add `snap` command completion for zsh
  3117   - tests/degraded: ignore failure in systemd-vconsole-setup.service
  3118   - image: stub implementation of image.Prepare for darwin
  3119   - tests: session-tool --restore -u stops user-$UID.slice
  3120   - o/ifacestate/handlers.go: fix typo
  3121   - tests: port pulseaudio test to session-tool
  3122   - tests: port user-session-env to session-tool
  3123   - tests: work around journald bug in core16
  3124   - tests: add debug to core-persistent-journal test
  3125   - tests: port selinux-clean to session-tool
  3126   - tests: port portals test to session-tool, fix portal tests on sid
  3127   - tests: adding option --no-install-recommends option also when
  3128     install all the deps
  3129   - tests: add session-tool --has-systemd-and-dbus
  3130   - packaging/debian-sid: add gcc-multilib to build deps
  3131   - osutil: expand FileLock to support shared locks and more
  3132   - packaging: stop depending on python-docutils
  3133   - store,asserts,many: support the new action fetch-assertions
  3134   - tests: port snap-session-agent-* to session-tool
  3135   - packaging/fedora: disable FIPS compliant crypto for static
  3136     binaries
  3137   - tests: fix for preseeding failures
  3138  
  3139  * Tue Jul 28 2020 Samuele Pedroni <pedronis@lucediurna.net>
  3140  - New upstream release, LP: #1875071
  3141    - o/ifacestate: fix bug in snapsWithSecurityProfiles
  3142    - tests/main/selinux-clean: workaround SELinux denials triggered by
  3143      linger setup on Centos8
  3144  
  3145  * Mon Jul 27 2020 Zygmunt Krynicki <me@zygoon.pl>
  3146  - New upstream release, LP: #1875071
  3147    - many: backport _writable_defaults dir changes
  3148    - tests: fix incorrect check in smoke/remove test
  3149    - cmd/snap-bootstrap,seed: backport of uc20 PRs
  3150    - tests: avoid exit when nested type var is not defined
  3151    - cmd/snap-preseed: backport fixes
  3152    - interfaces: optimize rules of multiple connected iio/i2c/spi plugs
  3153    - many: cherry-picks for 2.45, gh-action, test fixes
  3154    - tests/lib: account for changes in arch package file name extension
  3155    - postrm, snap-mgmt: cleanup modules and other cherry-picks
  3156    - snap-confine: don't die if a device from sysfs path cannot be
  3157      found by udev
  3158    - data/selinux: update policy to allow forked processes to call
  3159      getpw*()
  3160    - tests/main/interfaces-time-control: exercise setting time via date
  3161    - interfaces/builtin/time-control: allow POSIX clock API
  3162    - usersession/userd: add "slack" to the white list of URL schemes
  3163      handled by xdg-open
  3164  
  3165  * Fri Jul 10 2020 Michael Vogt <mvo@ubuntu.com>
  3166  - New upstream release 2.45.2
  3167   - SECURITY UPDATE: sandbox escape vulnerability on snapctl xdg-open
  3168     implementation
  3169     - usersession/userd/launcher.go: remove XDG_DATA_DIRS environment
  3170       variable modification when calling the system xdg-open. Patch
  3171       thanks to James Henstridge
  3172     - packaging/ubuntu-16.04/snapd.postinst: ensure "snap userd" is
  3173       restarted. Patch thanks to Michael Vogt
  3174     - CVE-2020-11934
  3175   - SECURITY UPDATE: arbitrary code execution vulnerability on core
  3176     devices with access to physical removable media
  3177     - devicestate: Disable/restrict cloud-init after seeding.
  3178     - CVE-2020-11933
  3179  
  3180  * Fri Jun 05 2020 Michael Vogt <mvo@ubuntu.com>
  3181  - New upstream release 2.45.1
  3182   - data/selinux: allow checking /var/cache/app-info
  3183   - cmd/snap-confine: add support for libc6-lse
  3184   - interfaces: miscellaneous policy updates xlv
  3185   - snap-bootstrap: remove sealed key file on reinstall
  3186   - interfaces-ssh-keys: Support reading /etc/ssh/ssh_config.d/
  3187   - gadget: make ext4 filesystems with or without metadata checksum
  3188   - interfaces/fwupd: allow bind mount to /boot on core
  3189   - tests: cherry-pick test fixes from master
  3190   - snap/squashfs: also symlink snap Install with uc20 seed snap dir
  3191     layout
  3192   - interfaces/serial-port: add NXP SC16IS7xx (ttySCX) to allowed
  3193     devices
  3194   - snap,many: mv Open to snapfile pkg to support add'l options to
  3195     Container methods
  3196   - interfaces/builtin/desktop: do not mount fonts cache on distros
  3197     with quirks
  3198   - devicestate, sysconfig: revert support for cloud.cfg.d/ in the
  3199     gadget
  3200   - data/completion, packaging: cherry-pick zsh completion
  3201   - state: log task errors in the journal too
  3202   - devicestate: do not report "ErrNoState" for seeded up
  3203   - interfaces/desktop: silence more /var/lib/snapd/desktop/icons
  3204     denials
  3205   - packaging/fedora: disable FIPS compliant crypto for static
  3206     binaries
  3207   - packaging: stop depending on python-docutils
  3208  
  3209  * Tue May 12 2020 Michael Vogt <mvo@ubuntu.com>
  3210  - New upstream release 2.45
  3211   - o/devicestate: support doing system action reboots from recover
  3212     mode
  3213   - vendor: update to latest secboot
  3214   - tests: not fail when boot dir cannot be determined
  3215   - configcore: only reload journald if systemd is new enough
  3216   - cmd/snap-bootstrap/initramfs-mounts: append uuid to ubuntu-data
  3217     when decrypting
  3218   - tests/lib/prepare.sh: delete patching of the initrd
  3219   - cmd/snap: coldplug auto-import assertions from all removable
  3220     devices
  3221   - cmd/snap: fix the order of positional parameters in help output
  3222   - c/snap-bootstrap: port mount state mocking to the new style on
  3223     master
  3224   - cmd/snap-bootstrap/initramfs-mounts: add sudoers to dirs to copy
  3225     as well
  3226   - o/devicestate,cmd/snap-bootstrap: seal to recover mode cmdline,
  3227     unlock in recover mode initramfs
  3228   - progress: tweak multibyte label unit test data
  3229   - gadget: fix fallback device lookup for 'mbr' type structures
  3230   - progress: fix progress bar with multibyte duration units
  3231   - many: use /run/mnt/data over /run/mnt/ubuntu-data for uc20
  3232   - many: put the sealed keys in a directory on seed for tidiness
  3233   - cmd/snap-bootstrap: measure epoch and model before unlocking
  3234     encrypted data
  3235   - o/configstate: core config handler for persistent journal
  3236   - bootloader/uboot: use secondary ubootenv file boot.sel for uc20
  3237   - packaging: add "$TAGS" to dh_auto_test for debian packaging
  3238   - tests: ensure $cache_dir is actually available
  3239   - secboot,cmd/snap-bootstrap: add model to pcr protection profile
  3240   - devicestate: do not use snap-boostrap in devicestate to install
  3241   - tests: fix a typo in nested.sh helper
  3242   - devicestate: add support for cloud.cfg.d config from the gadget
  3243   - cmd/snap-bootstrap: cleanups, naming tweaks
  3244   - testutil: add NewDBusTestConn
  3245   - snap-bootstrap: lock access to sealed keys
  3246   - overlord/devicestate: preserve the current model inside ubuntu-
  3247     boot
  3248   - interfaces/apparmor: use differently templated policy for non-core
  3249     bases
  3250   - seccomp: add get_tls, io_pg* and *time64/*64 variants for existing
  3251     syscalls
  3252   - cmd/snap-bootstrap/initramfs-mounts: mount ubuntu-seed first,
  3253     other misc changes
  3254   - o/snapstate: tweak "waiting for restart" message
  3255   - boot: store model model and grade information in modeenv
  3256   - interfaces/firewall-control: allow -legacy and -nft for core20
  3257   - boot: enable makeBootable20RunMode for EnvRefExtractedKernel
  3258     bootloaders
  3259   - boot/bootstate20: add EnvRefExtractedKernelBootloader bootstate20
  3260     implementation
  3261   - daemon: fix error message from `snap remove-user foo` on classic
  3262   - overlord: have a variant of Mock that can take a state.State
  3263   - tests: 16.04 and 18.04 now have mediating pulseaudio (again)
  3264   - seed: clearer errors for missing essential snapd or core snap
  3265   - cmd/snap-bootstrap/initramfs-mounts: support
  3266     EnvRefExtractedKernelBootloader's
  3267   - gadget, cmd/snap-bootstrap: MBR schema support
  3268   - image: improve/adjust DownloadSnap doc comment
  3269   - asserts: introduce ModelGrade.Code
  3270   - tests: ignore user-12345 slice and service
  3271   - image,seed/seedwriter: support redirect channel aka default
  3272     tracks
  3273   - bootloader: use binary.Read/Write
  3274   - tests: uc20 nested suite part II
  3275   - tests/boot: refactor to make it easier for new
  3276     bootloaderKernelState20 impl
  3277   - interfaces/openvswitch: support use of ovs-appctl
  3278   - snap-bootstrap: copy auth data from real ubuntu-data in recovery
  3279     mode
  3280   - snap-bootstrap: seal and unseal encryption key using tpm
  3281   - tests: disable special-home-can-run-classic-snaps due to jenkins
  3282     repo issue
  3283   - packaging: fix build on Centos8 to support BUILDTAGS
  3284   - boot/bootstate20: small changes to bootloaderKernelState20
  3285   - cmd/snap: Implement a "snap routine file-access" command
  3286   - spread.yaml: switch back to latest/candidate for lxd snap
  3287   - boot/bootstate20: re-factor kernel methods to use new interface
  3288     for state
  3289   - spread.yaml,tests/many: use global env var for lxd channel
  3290   - boot/bootstate20: fix bug in try-kernel cleanup
  3291   - config: add system.store-certs.[a-zA-Z0-9] support
  3292   - secboot: key sealing also depends on secure boot enabled
  3293   - httputil: fix client timeout retry tests
  3294   - cmd/snap-update-ns: handle EBUSY when unlinking files
  3295   - cmd/snap/debug/boot-vars: add opts for setting dir and/or uc20
  3296     vars
  3297   - secboot: add tpm support helpers
  3298   - tests/lib/assertions/developer1-pi-uc20.model: use 20/edge for
  3299     kernel and gadget
  3300   - cmd/snap-bootstrap: switch to a 64-byte key for unlocking
  3301   - tests: preserve size for centos images on spread.yaml
  3302   - github: partition the github action workflows
  3303   - run-checks: use consistent "Checking ..." style messages
  3304   - bootloader: add efi pkg for reading efi variables
  3305   - data/systemd: do not run snapd.system-shutdown if finalrd is
  3306     available
  3307   - overlord: update tests to work with latest go
  3308   - cmd/snap: do not hide debug boot-vars on core
  3309   - cmd/snap-bootstrap: no error when not input devices are found
  3310   - snap-bootstrap: fix partition numbering in create-partitions
  3311   - httputil/client_test.go: add two TLS version tests
  3312   - tests: ignore user@12345.service hierarchy
  3313   - bootloader, gadget, cmd/snap-bootstrap: misc cosmetic things
  3314   - tests: rewrite timeserver-control test
  3315   - tests: fix racy pulseaudio tests
  3316   - many: fix loading apparmor profiles on Ubuntu 20.04 with ZFS
  3317   - tests: update snap-preseed --reset logic to accommodate for 2.44
  3318     change
  3319   - cmd/snap: don't wait for system key when stopping
  3320   - sandbox/cgroup: avoid making arrays we don't use
  3321   - osutil: mock proc/self/mountinfo properly everywhere
  3322   - selinux: export MockIsEnforcing; systemd: use in tests
  3323   - tests: add 32 bit machine to GH actions
  3324   - tests/session-tool: kill cron session, if any
  3325   - asserts: it should be possible to omit many snap-ids if allowed,
  3326     fix
  3327   - boot: cleanup more things, simplify code
  3328   - github: skip spread jobs when corresponding label is set
  3329   - dirs: don't depend on osutil anymore, mv apparmor vars to apparmor
  3330     pkg
  3331   - tests/session-tool: add session-tool --dump
  3332   - github: allow cached debian downloads to restore
  3333   - tests/session-tool: session ordering is non-deterministic
  3334   - tests: enable unit tests on debian-sid again
  3335   - github: move spread to self-hosted workers
  3336   - secboot: import secboot on ubuntu, provide dummy on !ubuntu
  3337   - overlord/devicestate: support for recover and run modes
  3338   - snap/naming: add validator for snap security tag
  3339   - interfaces: add case for rootWritableOverlay + NFS
  3340   - tests/main/uc20-create-partitions: tweaks, renames, switch to
  3341     20.04
  3342   - github: port CLA check to Github Actions
  3343   - interfaces/many: miscellaneous policy updates xliv
  3344   - configcore,tests: fix setting watchdog options on UC18/20
  3345   - tests/session-tool: collect information about services on startup
  3346   - tests/main/uc20-snap-recovery: unbreak, rename to uc20-create-
  3347     partitions
  3348   - state: add state.CopyState() helper
  3349   - tests/session-tool: stop anacron.service in prepare
  3350   - interfaces: don't use the owner modifier for files shared via
  3351     document portal
  3352   - systemd: move the doc comments to the interface so they are
  3353     visible
  3354   - cmd/snap-recovery-chooser: tweaks
  3355   - interfaces/docker-support: add overlayfs file access
  3356   - packaging: use debian/not-installed to ignore snap-preseed
  3357   - travis.yml: disable unit tests on travis
  3358   - store: start splitting store.go and store_test.go into subtopic
  3359     files
  3360   - tests/session-tool: stop cron/anacron from meddling
  3361   - github: disable fail-fast as spread cannot be interrupted
  3362   - github: move static checks and spread over
  3363   - tests: skip "/etc/machine-id" in "writablepaths" test
  3364   - snap-bootstrap: store encrypted partition recovery key
  3365   - httputil: increase testRetryStrategy max timelimit to 5s
  3366   - tests/session-tool: kill leaking closing session
  3367   - interfaces: allow raw access to USB printers
  3368   - tests/session-tool: reset failed session-tool units
  3369   - httputil: increase httpclient timeout in
  3370     TestRetryRequestTimeoutHandling
  3371   - usersession: extend timerange in TestExitOnIdle
  3372   - client: increase timeout in client tests to 100ms
  3373   - many: disentagle release and snapdenv from sandbox/*
  3374   - boot: simplify modeenv mocking to always write a modeenv
  3375   - snap-bootstrap: expand data partition on install
  3376   - o/configstate: add backlight option for core config
  3377   - cmd/snap-recovery-chooser: add recovery chooser
  3378   - features: enable robust mount ns updates
  3379   - snap: improve TestWaitRecovers test
  3380   - sandbox/cgroup: add ProcessPathInTrackingCgroup
  3381   - interfaces/policy: fix comment in recent new test
  3382   - tests: make session tool way more robust
  3383   - interfaces/seccomp: allow passing an address to setgroups
  3384   - o/configcore: introduce core config handlers (3/N)
  3385   - interfaces: updates to login-session-observe, network-manager and
  3386     modem-manager interfaces
  3387   - interfaces/policy/policy_test.go: add more tests'allow-
  3388     installation: false' and we grant based on interface attributes
  3389   - packaging: detect/disable broken seed in the postinst
  3390   - cmd/snap-confine/mount-support-nvidia.c: add libnvoptix as nvidia
  3391     library
  3392   - tests: remove google-tpm backend from spread.yaml
  3393   - tests: install dependencies with apt using --no-install-recommends
  3394   - usersession/userd: add zoommtg url support
  3395   - snap-bootstrap: fix disk layout sanity check
  3396   - snap: add `snap debug state --is-seeded` helper
  3397   - devicestate: generate warning if seeding fails
  3398   - config, features: move and rename config.GetFeatureFlag helper to
  3399     features.Flag
  3400   - boot, overlord/devicestate, daemon:  implement requesting boot
  3401     into a given recovery system
  3402   - xdgopenproxy: forward requests to the desktop portal
  3403   - many: support immediate reboot
  3404   - store: search v2 tweaks
  3405   - tests: fix cross build tests when installing dependencies
  3406   - daemon: make POST /v2/systems/<label> root only
  3407   - tests/lib/prepare.sh: use only initrd from the kernel snap
  3408   - cmd/snap,seed: validate full seeds (UC 16/18)
  3409   - tests/main/user-session-env: stop the user session before deleting
  3410     the test-zsh user
  3411   - overlord/devicestate, daemon: record the seed current system was
  3412     installed from
  3413   - gadget: SystemDefaults helper function to convert system defaults
  3414     config into a flattened map suitable for FilesystemOnlyApply.
  3415   - many: comment or avoid cryptic snap-ids in tests
  3416   - tests: add LXD_CHANNEL environment
  3417   - store: support for search API v2
  3418   - .github: register a problem matcher to detect spread failures
  3419   - seed: add Info() method for seed.Snap
  3420   - github: always run the "Discard spread workers" step, even if the
  3421     job fails
  3422   - github: offload self-hosted workers
  3423   - cmd/snap: the model command needs just a client, no waitMixin
  3424   - github: combine tests into one workflow
  3425   - github: fix order of go get caches
  3426   - tests: adding more workers for ubuntu 20.04
  3427   - boot,overlord: rename operating mode to system mode
  3428   - config: add new Transaction.GetPristine{,Maybe}() function
  3429   - o/devicestate: rename readMaybe* to maybeRead*
  3430   - github: cache Debian dependencies for unit tests
  3431   - wrappers: respect pre-seeding in error path
  3432   - seed: validate UC20 seed system label
  3433   - client, daemon, overlord/devicestate: request system action API
  3434     and stubs
  3435   - asserts,o/devicestate: support model specified alternative serial-
  3436     authority
  3437   - many: introduce naming.WellKnownSnapID
  3438   - o/configcore: FilesystemOnlyApply method for early configuration
  3439     of core (1/N)
  3440   - github: run C unit tests
  3441   - github: run spread tests on PRs only
  3442   - interfaces/docker-support: make containerd abstract socket more
  3443     generic
  3444   - tests: cleanup security-private-tmp properly
  3445   - overlord/devicestate,boot: do not hold to the originally read
  3446     modeenv
  3447   - dirs: rm RunMnt; boot: add vars for early boot env layout;
  3448     sysconfig: take targetdir arg
  3449   - cmd/snap-bootstrap/initramfs-mounts/tests: use dirs.RunMnt over
  3450     s.runMnt
  3451   - tests: add regression test for MAAS refresh bug
  3452   - errtracker: add missing mocks
  3453   - github: apt-get update before installing build-deps
  3454   - github: don't fail-fast
  3455   - github: run spread via github actions
  3456   - boot,many: add modeenv.WriteTo, make Write take no args
  3457   - wrappers: fix timer schedules that are days only
  3458   - tests/main/snap-seccomp-syscalls: install gperf
  3459   - github: always checkout to snapcore/snapd
  3460   - github: add prototype workflow running unit tests
  3461   - many: improve comments, naming, a possible TODO
  3462   - client: use Assert when checking for error
  3463   - tests: ensure sockets target is ready in session agent spread
  3464     tests
  3465   - osutil: do not leave processes behind after the test run
  3466   - tests: update proxy-no-core to match latest CDN changes
  3467   - devicestate,sysconfig: support "cloud.cfg.d" in uc20 for grade:
  3468     dangerous
  3469   - cmd/snap-failure,tests: try to make snap-failure more robust
  3470   - many: fix packages having mistakenly their copyright as doc
  3471   - many: enumerate system seeds, return them on the /v2/systems API
  3472     endpoint
  3473   - randutil: don't consume kernel entropy at init, just mix more info
  3474     to try to avoid fleet collisions
  3475   - snap-bootstrap: add creationSupported predicate for partition
  3476     types
  3477   - tests: umount partitions which are not umounted after remount
  3478     gadget
  3479   - snap: run gofmt -s
  3480   - many: improve environment handling, fixing duplicate entries
  3481   - boot_test: add many boot robustness tests for UC20 kernel
  3482     MarkBootSuccessul and SetNextBoot
  3483   - overlord: remove unneeded overlord.MockPruneInterval() mocks
  3484   - interfaces/greengrass-support: fix typo
  3485   - overlord,timings,daemon: separate timings from overlord/state
  3486   - tests: enable nested on core20 and test current branch
  3487   - snap-bootstrap: remove created partitions on reinstall
  3488   - boot: apply Go 1.10 formatting
  3489   - apparmor: use rw for uuidd request to default and remove from
  3490     elsewhere
  3491   - packaging: add README.source for debian
  3492   - tests: cleanup various uc20 boot tests from previous PR
  3493   - devicestate: disable cloud-init by default on uc20
  3494   - run-checks: tweak formatting checks
  3495   - packaging,tests: ensure debian-sid builds without vendor/
  3496   - travis.yml: run unit tests with go/master as well* travis.yml: run
  3497     unit tests with go/master as well
  3498   - seed: make Brand() part of the Seed interface
  3499   - cmd/snap-update-ns: ignore EROFS from rmdir/unlink
  3500   - daemon: do a forceful server shutdown if we hit a deadline
  3501   - tests/many: don't use StartLimitInterval anymore, unify snapd-
  3502     failover variants, build snapd snap for UC16 tests
  3503   - snap-seccomp: robustness improvements
  3504   - run-tests: disable -v for go test to avoid spaming the logs
  3505   - snap: whitelist lzo as support compression for snap pack
  3506   - snap: tweak comment in Install() for overlayfs detection
  3507   - many: introduce snapdenv.Preseeding instead of release.PreseedMode
  3508   - client, daemon, overlord/devicestate: structures and stubs for
  3509     systems API
  3510   - o/devicestate: delay the creation of mark-seeded task until
  3511     asserts are loaded
  3512   - data/selinux, tests/main/selinux: cleanup tmpfs operations in the
  3513     policy, updates
  3514   - interfaces/greengrass-support: add new 1.9 access
  3515   - snap: do not hardlink on overlayfs
  3516   - boot,image: ARM kernel extract prepare image
  3517   - interfaces: make gpio robust against not-existing gpios in /sys
  3518   - cmd/snap-preseed: handle --reset flag
  3519   - many: introduce snapdenv to present common snapd env options
  3520   - interfaces/kubernetes-support: allow autobind to journald socket
  3521   - snap-seccomp: allow mprotect() to unblock the tests
  3522   - tests/lib/reset: workaround unicode dot in systemctl output
  3523   - interfaces/udisks2: also allow Introspection on
  3524     /org/freedesktop/UDisks/**
  3525   - snap: introduce Container.RandomAccessFile
  3526   - o/ifacestate, api: implementation of snap disconnect --forget
  3527   - cmd/snap: make the portal-info command search for the network-
  3528     status interface
  3529   - interfaces: work around apparmor_parser slowness affecting uio
  3530   - tests: fix/improve failing spread tests
  3531   - many: clean separation of bootenv mocking vs mock bootloader kinds
  3532   - tests: mock prune ticker in overlord tests to reduce wait times
  3533   - travis: disable arm64 again
  3534   - httputil: add support for extra snapd certs
  3535   - travis.yml: run unit tests on arm64 as well
  3536   - many: fix a pair of ineffectual assignments
  3537   - tests: add uc20 kernel snap upgrade managers test, fix
  3538     bootloadertest bugs
  3539   - o/snapstate: set base in SnapSetup on snap revert
  3540   - interfaces/{docker,kubernetes}-support: updates for lastest k8s
  3541   - cmd/snap-exec: add test case for LP bug 1860369
  3542   - interfaces: make the network-status interface implicit on
  3543     classic
  3544   - interfaces: power control interfaceIt is documented in the
  3545     kernel
  3546   - interfaces: miscellaneous policy updates
  3547   - cmd/snap: add a "snap routine portal-info" command
  3548   - usersession/userd: add "apt" to the white list of URL schemes
  3549     handled by xdg-open
  3550   - interfaces/desktop: allow access to system prompter interface
  3551   - devicestate: allow encryption regardless of grade
  3552   - tests: run ipv6 network-retry test too
  3553   - tests: test that after "remove-user" the system is unmanaged
  3554   - snap-confine: unconditionally add /dev/net/tun to the device
  3555     cgroup
  3556   - snapcraft.yaml: use sudo -E and remove workaround
  3557   - interfaces/audio_playback: Fix pulseaudio config access
  3558   - ovelord/snapstate: update only system wide fonts cache
  3559   - wrappers: import /etc/environment in all services
  3560   - interfaces/u2f: Add Titan USB-C key
  3561   - overlord, taskrunner: exit on task/ensure error when preseeding
  3562   - tests: add session-tool, a su / sudo replacement
  3563   - wrappers: add mount unit dependency for snapd services on core
  3564     devices
  3565   - tests: just remove user when the system is not managed on create-
  3566     user-2 test
  3567   - snap-preseed: support for preseeding of snapd and core18
  3568   - boot: misc UC20 changes
  3569   - tests: adding arch-linux execution
  3570   - packaging: revert "work around review-tools and snap-confine"
  3571   - netlink: fix panic on arm64 with the new rawsockstop codewith a
  3572     nil Timeval panics
  3573   - spread, data/selinux: add CentOS 8, update policy
  3574   - tests: updating checks to new test account for snapd-test snaps
  3575   - spread.yaml: mv opensuse 15.1 to unstable
  3576   - cmd/snap-bootstrap,seed: verify only in-play snaps
  3577   - tests: use ipv4 in retry-network to unblock failing master
  3578   - data/systemd: improve the description
  3579   - client: add "Resume" to DownloadOptions and new test
  3580   - tests: enable snapd-failover on uc20
  3581   - tests: add more debug output to the snapd-failure handling
  3582   - o/devicestate: unset recovery_system when done seeding
  3583  
  3584  * Fri Apr 10 2020 Michael Vogt <mvo@ubuntu.com>
  3585  - New upstream release 2.44.3
  3586   - tests: fix racy pulseaudio tests
  3587   - many: fix loading apparmor profiles on Ubuntu 20.04 with ZFS
  3588   - tests: update snap-preseed --reset logic
  3589   - tests: backport partition fixes
  3590   - cmd/snap: don't wait for system key when stopping
  3591   - interfaces/many: miscellaneous policy updates xliv
  3592   - tests/main/uc20-snap-recovery: use 20.04 system
  3593   - tests: skip "/etc/machine-id" in "writablepaths
  3594   - interfaces/docker-support: add overlays file access
  3595  
  3596  * Thu Apr 2 2020 Michael Vogt <mvo@ubuntu.com>
  3597  - New upstream release 2.44.2
  3598   - packaging: detect/disable broken seeds in the postinst
  3599   - cmd/snap,seed: validate full seeds (UC 16/18)
  3600   - snap: add `snap debug state --is-seeded` helper
  3601   - devicestate: generate warning if seeding fails
  3602   - store: support for search API v2
  3603   - cmd/snap-seccomp/syscalls: update the list of known syscalls
  3604   - snap/cmd: the model command needs just a client, no waitMixin
  3605   - tests: cleanup security-private-tmp properly
  3606   - wrappers: fix timer schedules that are days only
  3607   - tests: update proxy-no-core to match latest CDN changes
  3608   - cmd/snap-failure,tests: make snap-failure more robust
  3609   - tests, many: don't use StartLimitInterval anymore, unify snapd-
  3610     failover variants, build snapd snap for UC16 tests
  3611  
  3612  * Sat Mar 21 2020 Michael Vogt <mvo@ubuntu.com>
  3613  - New upstream release 2.44.1
  3614   - randutil: switch back to setting up seed with lower entropy data
  3615   - interfaces/greengrass-support: fix typo
  3616   - packaging,tests: ensure debian-sid builds without vendor/
  3617   - travis.yml: run unit tests with go/master as well
  3618   - cmd/snap-update-ns: ignore EROFS from rmdir/unlink
  3619  
  3620  * Tue Mar 17 2020 Michael Vogt <mvo@ubuntu.com>
  3621  - New upstream release 2.44
  3622   - daemon: do a forceful serer shutdown if we hit a deadline
  3623   - snap: whitelist lzo as support compression for snap pack
  3624   - data/selinux: update policy to allow more ops
  3625   - interfaces/greengrass-support: add new 1.9 access
  3626   - snap: do not hardlink on overlayfs
  3627   - cmd/snap-preseed: handle --reset flag
  3628   - interfaces/kubernetes-support: allow autobind to journald socket
  3629   - snap-seccomp: allow mprotect() to unblock the tests
  3630   - tests/lib/reset: workaround unicode dot in systemctl output
  3631   - interfaces: work around apparmor_parser slowness affecting uio
  3632   - interfaces/udisks2: also allow Introspection on
  3633     /org/freedesktop/UDisks2/**
  3634   - tests: mock prune ticker in overlord tests to reduce wait times
  3635   - interfaces/{docker,kubernetes}-support: updates for lastest k8s
  3636   - interfaces: miscellaneous policy updates
  3637   - interfaces/audio_playback: Fix pulseaudio config access
  3638   - overlord: disable Test..AbortShortlyAfterStartOfOperation for 2.44
  3639   - ovelord/snapstate: update only system wide fonts cache
  3640   - wrappers: import /etc/environment in all services
  3641   - interfaces/u2f: Add Titan USB-C key
  3642   - overlord, taskrunner: exit on task/ensure error when preseeding
  3643   - overlord/snapstate/backend: update snapd services contents in unit
  3644     tests
  3645   - wrappers: add mount unit dependency for snapd services on core
  3646     devices
  3647   - Revert "tests: remove /tmp/snap.* left over by other tests"
  3648   - Revert "packaging: work around review-tools and snap-confine"
  3649   - netlink: fix panic on arm64 with the new rawsockstop code
  3650   - spread, data/selinux: add CentOS 8, update policy
  3651   - spread.yaml: mv opensuse tumbleweed to unstable too
  3652   - spread.yaml: mv opensuse 15.1 to unstable
  3653   - tests: use ipv4 in retry-network to unblock failing master
  3654   - data/systemd: improve the description
  3655   - tests/lib/prepare.sh: simplify, combine code paths
  3656   - tests/main/user-session-env: add test verifying environment
  3657     variables inside the user session
  3658   - spread.yaml: make qemu ubuntu-core-20-64 use ubuntu-20.04-64
  3659   - run-checks: SKIP_GMFMT really skips formatting checks
  3660   - tests: enable more tests for UC20/UC18
  3661   - tests: remove tmp dir for snap not-test-snapd-sh on security-
  3662     private-tmp test
  3663   - seed,cmd/snap-bootstrap: introduce seed.Snap.EssentialType,
  3664     simplify bootstrap code
  3665   - snapstate: do not restart in undoLinkSnap unless on first install
  3666   - cmd/snap-bootstrap: subcommand to detect UC chooser trigger
  3667   - cmd/snap-bootstrap/initramfs-mounts: mount the snapd snap in run-
  3668     mode too
  3669   - cmd/libsnap, tests: fix C unit tests failing as non-root
  3670   - cmd/snap-bootstrap: verify kernel snap is in modeenv before
  3671     mounting it
  3672   - tests: adding amazon linux to google backend
  3673   - cmd/snap-failure/snapd: rm snapd.socket, reset snapd.socket failed
  3674     status
  3675   - client: add support for "ResumeToken", "HeaderPeek" to download
  3676   - build: enable type: snapd
  3677   - tests: rm -rf /tmp/snap.* in restore
  3678   - cmd/snap-confine: deny snap-confine to load nss libs
  3679   - snapcraft.yaml: add comments, rename snapd part to snapd-deb
  3680   - boot: write current_kernels in bootstate20, makebootable
  3681   - packaging: work around review-tools and snap-confine
  3682   - tests: skipping interfaces-openvswitch on centos due to package is
  3683     not available
  3684   - packaging,snap-confine: stop being setgid root
  3685   - cmd/snap-confine: bring /var/lib/dhcp from host, if present
  3686   - store: rely on CommandFromSystemSnap to find xdelta3
  3687   - tests: bump sleep time of the new overlord tests
  3688   - cmd/snap-preseed: snapd version check for the target
  3689   - netlink: fix/support stopping goroutines reading netlink raw
  3690     sockets
  3691   - tests: reset PS1 before possibly interactive dash
  3692   - overlord, state: don't abort changes if spawn time before
  3693     StartOfOperationTime (2/2)
  3694   - snapcraft.yaml: add python3-apt, tzdata as build-deps for the
  3695     snapd snap
  3696   - tests: ask tar to speak English
  3697   - tests: using google storage when downloading ubuntu cloud images
  3698     from gce
  3699   - Coverity produces false positives for code like this:
  3700   - many: maybe restart & security backend options
  3701   - o/standby: add SNAPD_STANDBY_WAIT to control standby in
  3702     development
  3703   - snap: use the actual staging snap-id for snapd
  3704   - cmd/snap-bootstrap: create a new parser instance
  3705   - snapcraft.yaml: use build-base and adopt-info, rm builddeb
  3706     plugin
  3707   - tests: set StartLimitInterval in snapd failover test
  3708   - tests: disable archlinux system
  3709   - tests: add preseed test for classic
  3710   - many, tests: integrate all preseed bits and add spread tests
  3711   - daemon: support resuming downloads
  3712   - tests: use Filename() instead of filepath.Base(sn.MountFile())
  3713   - tests/core: add swapfiles test
  3714   - interfaces/cpu-control: allow to control cpufreq tunables
  3715   - interfaces: use commonInteface for desktopInterface
  3716   - interfaces/{desktop-legacy,unity7}: adjust for new ibus socket
  3717     location
  3718   - snap/info: add Filename
  3719   - bootloader: make uboot a RecoveryAwareBootloader
  3720   - gadget: skip update when mounted filesystem content is identical
  3721   - systemd: improve is-active check for 'failed' services
  3722   - boot: add current_kernels to modeenv
  3723   - o/devicestate: StartOfOperationTime helper for Prune (1/2)
  3724   - tests: detect LXD launching i386 containers
  3725   - tests: move main/ubuntu-core-* tests to core/ suite
  3726   - tests: remove snapd in ubuntu-core-snapd
  3727   - boot: enable base snap updates in bootstate20
  3728   - tests: Fix core revert channel after 2.43 has been released to
  3729     stable
  3730   - data/selinux: unify tabs/spaces
  3731   - o/ifacestate: move ResolveDisconnect to ifacestate
  3732   - spread: move centos to stable systems
  3733   - interfaces/opengl: allow datagrams to nvidia-driver
  3734   - httputil: add NoNetwork(err) helper, spread test and use in serial
  3735     acquire
  3736   - store: detect if server does not support http range headers
  3737   - test/lib/user: add helper lib for doing things for and as a user
  3738   - overlord/snapstate, wrappers: undo of snapd on core
  3739   - tests/main/interfaces-pulseaudio: use custom pulseaudio script,
  3740     set kill timeout
  3741   - store: add support for resume in DownloadStream
  3742   - cmd/snap: implement 'snap remove-user'
  3743   - overlord/devicestate: fix preseed unit tests on systems not using
  3744     /snap
  3745   - tests/main/static: ldd in glibc 2.31 logs to stderr now
  3746   - run-checks, travis: allow skipping spread jobs by adding a label
  3747   - tests: add new backend which includes images with tpm support
  3748   - boot: use constants for boot status values
  3749   - tests: add "core" suite for UC specific tests
  3750   - tests/lib/prepare: use a local copy of uc20 initramfs skeleton
  3751   - tests: retry mounting the udisk2 device due to timing issue
  3752   - usersession/client: add a client library for the user session
  3753     agent
  3754   - o/devicestate: Handle preseed mode in the firstboot mode (core16
  3755     only for now).
  3756   - boot: add TryBase and BaseStatus to modeenv; use in snap-bootstrap
  3757   - cmd/snap-confine: detect base transitions on core16
  3758   - boot: don't use "kernel" from the modeenv anymore
  3759   - interfaces: add uio interface
  3760   - tests: repack the initramfs + kernel snap for UC20 spread tests
  3761   - interfaces/greengrass-support: add /dev/null ->
  3762     /proc/latency_stats mount
  3763   - httputil: remove workaround for redirect handling in go1.7
  3764   - httputil: remove go1.6 transport workaround
  3765   - snap: add `snap pack --compression=<comp>` options
  3766   - tests/lib/prepare: fix hardcoded loopback device names for UC
  3767     images
  3768   - timeutil: add a unit test case for trivial schedule
  3769   - randutil,o/snapstate,-mkauthors.sh: follow ups to randutil
  3770     introduction
  3771   - dirs: variable with distros using alternate snap mount
  3772   - many,randutil: centralize and streamline our random value
  3773     generation
  3774   - tests/lib/prepare-restore: Revert "Continue on errors updating or
  3775     installing dependencies"
  3776   - daemon: Allow clients to call /v2/logout via Polkit
  3777   - dirs: manjaro-arm is like manjaro
  3778   - data, packaging: Add sudoers snippet to allow snaps to be run with
  3779     sudo
  3780   - daemon, store: better expose single action errors
  3781   - tests: switch mount-ns test to differential data set
  3782   - snapstate: refactor things to add the re-refresh task last
  3783   - daemon: drop support for the DELETE method
  3784   - client: move to /v2/users; implement RemoveUser
  3785   - boot: enable UC20 kernel extraction and bootState20 handling
  3786   - interfaces/policy: enforce plug-names/slot-names constraints
  3787   - asserts: parse plug-names/slot-names constraints
  3788   - daemon: make users result more consistent
  3789   - cmd/snap-confine,tests: support x.y.z nvidia version
  3790   - dirs: fixlet for XdgRuntimeDirGlob
  3791   - boot: add bootloader options to coreKernel
  3792   - o/auth,daemon: do not remove unknown user
  3793   - tests: tweak and enable tests on ubuntu 20.04
  3794   - daemon: implement user removal
  3795   - cmd/snap-confine: allow snap-confine to link to libpcre2
  3796   - interfaces/builtin: Allow NotificationReplied signal on
  3797     org.freedesktop.Notifications
  3798   - overlord/auth: add RemoveUserByName
  3799   - client: move user-related things to their own files
  3800   - boot: tweak kernel cmdline helper docstring
  3801   - osutil: implement deluser
  3802   - gadget: skip update when raw structure content is unchanged
  3803   - boot, cmd/snap, cmd/snap-bootstrap: move run mode and system label
  3804     detection to boot
  3805   - tests: fix revisions leaking from snapd-refresh test
  3806   - daemon: refactor create-user to a user action & hide behind a flag
  3807   - osutil/tests: check there are no leftover symlinks with
  3808     AtomicSymlink
  3809   - grub: support atomically renaming kernel symlinks
  3810   - osutil: add helpers for creating symlinks and renaming in an
  3811     atomic manner
  3812   - tests: add marker tag for core 20 test failure
  3813   - tests: fix gadget-update-pc test leaking snaps
  3814   - tests: remove revision leaking from ubuntu-core-refresh
  3815   - tests: remove revision leaking from remodel-kernel
  3816   - tests: disable system-usernames test on core20
  3817   - travis, tests, run-checks: skip nakedret
  3818   - tests: run `uc20-snap-recovery-encrypt` test on 20.04-64 as well
  3819   - tests: update mount-ns test tables
  3820   - snap: disable auto-import in uc20 install-mode
  3821   - tests: add a command-chain service test
  3822   - tests: use test-snapd-upower instead of upower
  3823   - data/selinux: workaround incorrect fonts cache labeling on RHEL7
  3824   - spread.yaml: fix ubuntu 19.10 and 20.04 names
  3825   - debian: check embedded keys for snap-{bootstrap,preseed} too
  3826   - interfaces/apparmor: fix doc-comments, unnecessary code
  3827   - o/ifacestate,o/devicestatate: merge gadget-connect logic into
  3828     auto-connect
  3829   - bootloader: add ExtractedRunKernelImageBootloader interface,
  3830     implement in grub
  3831   - tests: add spread test for hook permissions
  3832   - cmd/snap-bootstrap: check device size before boostrapping and
  3833     produce a meaningful error
  3834   - cmd/snap: add ability to register "snap routine" commands
  3835   - tests: add a test demonstrating that snaps can't access the
  3836     session agent socket
  3837   - api: don't return connections referring to non-existing
  3838     plugs/slots
  3839   - interfaces: refactor path() from raw-volume into utils with
  3840     comments for old
  3841   - gitignore: ignore snap files
  3842   - tests: skip interfaces-network-manager on arm devices
  3843   - o/devicestate: do not create perfTimings if not needed inside
  3844     ensureSeed/Operational
  3845   - tests: add ubuntu 20.04 to the tests execution and remove
  3846     tumbleweed from unstable
  3847   - usersession: add systemd user instance service control to user
  3848     session agent
  3849   - cmd/snap: print full channel in 'snap list', 'snap info'
  3850   - tests: remove execution of ubuntu 19.04 from google backend
  3851   - cmd/snap-boostrap: add mocking for fakeroot
  3852   - tests/core18/snapd-failover: collect more debug info
  3853   - many: run black formatter on all python files
  3854   - overlord: increase settle timeout for slow machines
  3855   - httputil: use shorter timeout in TestRetryRequestTimeoutHandling
  3856   - store, o/snapstate: send default-tracks header, use
  3857     RedirectChannel
  3858   - overlord/standby: fix possible deadlock in standby test
  3859   - cmd/snap-discard-ns: fix pattern for .info files
  3860   - boot: add HasModeenv to Device
  3861   - devicestate: do not allow remodel between core20 models
  3862   - bootloader,snap: misc tweaks
  3863   - store, overlord/snapstate, etc: SnapAction now returns a []…Result
  3864   - snap-bootstrap: create encrypted partition
  3865   - snap: remove "host" output from `snap version`
  3866   - tests: use snap remove --purge flag in most of the spread tests
  3867   - data/selinux, test/main/selinux-clean: update the test to cover
  3868     more scenarios
  3869   - many: drop NameAndRevision, use snap.PlaceInfo instead
  3870   - boot: split MakeBootable tests into their own file
  3871   - travis-ci: add go import path
  3872   - boot: split MakeBootable implementations into their own file
  3873   - tests: enable a lot of the tests of main on uc20
  3874   - packaging, tests: stop services in prerm
  3875   - tests: enable regression suite on core20
  3876   - overlord/snapstate: improve snapd snap backend link unit tests
  3877   - boot: implement SetNextBoot in terms of bootState.setNext
  3878   - wrappers: write and undo snapd services on core
  3879   - boot,o/devicestate: refactor MarkBootSuccessful over bootState
  3880   - snap-bootstrap: mount the correct snapd snap to /run/mnt/snapd
  3881   - snap-bootstrap: refactor partition creation
  3882   - tests: use new snapd.spread-tests-run-mode-tweaks.service unit
  3883   - tests: add core20 tests
  3884   - boot,o/snapstate: SetNextBoot/LinkSnap return whether to reboot,
  3885     use the information
  3886   - tests/main/snap-sign: add test for non-stdin signing
  3887   - snap-bootstrap: trigger udev after filesystem creation
  3888   - boot,overlord: introduce internal abstraction bootState and use it
  3889     for InUse/GetCurrentBoot
  3890   - overlord/snapstate: tracks are now sticky
  3891   - cmd: sign: add filename param
  3892   - tests: remove "test-snapd-tools" in smoke/sandbox on restore
  3893   - cmd/snap, daemon: stop over-normalising channels
  3894   - tests: fix classic-ubuntu-core-transition-two-cores after refactor
  3895     of MATCH -v
  3896   - packaging: ship var/lib/snapd/desktop/applications in the pkg
  3897   - spread: drop copr repo with F30 build dependencies
  3898   - tests: use test-snapd-sh snap instead of test-snapd-tools - Part 3
  3899   - tests: fix partition creation test
  3900   - tests: unify/rename services-related spread tests to start with
  3901     services- prefix
  3902   - test: extract code that modifies "writable" for test prep
  3903   - systemd: handle preseed mode
  3904   - snap-bootstrap: read only stdout when parsing the sfdisk json
  3905   - interfaces/browser-support: add more product/vendor paths
  3906   - boot: write compat UC16 bootvars in makeBootable20RunMode
  3907   - devicestate: avoid adding mockModel to deviceMgrInstallModeSuite
  3908   - devicestate: request reboot after successful doSetupRunSystem()
  3909   - snapd.core-fixup.sh: do not run on UC20 at all
  3910   - tests: unmount automounted snap-bootstrap devices
  3911   - devicestate: run boot.MakeBootable in doSetupRunSystem
  3912   - boot: copy kernel/base to data partition in makeBootable20RunMode
  3913   - tests: also check nested lxd container
  3914   - run-checks: complain about MATCH -v
  3915   - boot: always return the trivial boot participant in ephemeral mode
  3916   - o/devicestate,o/snapstate: move the gadget.yaml checkdrive-by: use
  3917     gadget.ReadInfoFromSnapFile in checkGadgetRemodelCompatible
  3918   - snap-bootstrap: append new partitions
  3919   - snap-bootstrap: mount filesystems after creation
  3920   - snapstate: do not try to detect rollback in ephemeral modes
  3921   - snap-bootstrap: trigger udev for new partitions
  3922   - cmd/snap-bootstrap: xxx todos about kernel cross-checks
  3923   - tests: avoid mask rsyslog service in case is not enabled on the
  3924     system
  3925   - tests: fix use of MATCH -v
  3926   - cmd/snap-preseed: update help strings
  3927   - cmd/snap-bootstrap: actually parse snapd_recovery_system label
  3928   - bootstrap: reduce runmode mounts from 5 to 2 steps.
  3929   - lkenv.go: adjust for new location of include file
  3930   - snap: improve squashfs.ReadFile() error
  3931   - systemd: fix uc20 shutdown
  3932   - boot: write modeenv when creating the run mode
  3933   - boot,image: add skeleton boot.makeBootable20RunMode
  3934   - cmd/snap-preseed: add snap-preseed executable
  3935   - overlord,boot: follow ups to #7889 and #7899
  3936   - interfaces/wayland: Add access to Xwayland's shm files
  3937   - o/hookstate/ctlcmd: fix command name in snapctl -h
  3938   - daemon,snap: remove screenshot deprecation notice
  3939   - overlord,o/snapstate: make sure we never leave config behind
  3940   - many: pass consistently boot.Device state to boot methods
  3941   - run-checks: check multiline string blocks in
  3942     restore/prepare/execute sections of spread tests
  3943   - intrefaces: login-session-control - added missing dbus commands
  3944   - tests/main/parallel-install-remove-after: parallel installs should
  3945     not break removal
  3946   - overlord/snapstate: tweak assumes error hint
  3947   - overlord: replace DeviceContext.OldModel with GroundContext
  3948   - devicestate: use httputil.ShouldRetryError() in
  3949     prepareSerialRequest
  3950   - tests: replace "test-snapd-base-bare" with real "bare" base snap
  3951   - many: pass a Model to the gadget info reading functions
  3952   - snapstate: relax gadget constraints in ConfigDefaults Et al.
  3953   - devicestate: only run ensureBootOk() in "run" mode
  3954   - tests/many: quiet lxc launching, file pushing
  3955   - tests: disable apt-hooks test until it can be properly fixed
  3956   - tests: 16.04 and 18.04 now have mediating pulseaudio
  3957  
  3958  * Wed Feb 12 2020 Michael Vogt <mvo@ubuntu.com>
  3959  - New upstream release 2.43.3
  3960   - interfaces/opengl: allow datagrams to nvidia-driver
  3961   - httputil: add NoNetwork(err) helper, spread test and use
  3962     in serial acquire
  3963   - interfaces: add uio interface
  3964   - interfaces/greengrass-support: 'aws-iot-greengrass' snap fails to
  3965     start due to apparmor deny on mounting of "/proc/latency_stats".
  3966   - data, packaging: Add sudoers snippet to allow snaps to be run with
  3967     sudo
  3968  
  3969  * Tue Jan 28 2020 Michael Vogt <mvo@ubuntu.com>
  3970  - New upstream release 2.43.2
  3971   - cmd/snap-confine: Revert #7421 (unmount /writable from snap view)
  3972   - overlord/snapstate: fix for re-refresh bug
  3973   - tests, run-checks, many: fix nakedret issues
  3974   - data/selinux: workaround incorrect fonts cache labeling on RHEL7
  3975   - tests: use test-snapd-upower instead of upower
  3976   - overlord: increase overall settle timeout for slow arm boards
  3977  
  3978  * Tue Jan 14 2020 Michael Vogt <mvo@ubuntu.com>
  3979  - New upstream release 2.43.1
  3980   - devicestate: use httputil.ShouldRetryError() in prepareSerialRequest
  3981   - overlord/standby: fix possible deadlock in standby test
  3982   - cmd/snap-discard-ns: fix pattern for .info files
  3983   - overlord,o/snapstate: make sure we never leave config behind
  3984   - data/selinux: update policy to cover more cases
  3985   - snap: remove "host" output from `snap version`
  3986  
  3987  * Thu Jan 09 2020 Michael Vogt <mvo@ubuntu.com>
  3988  - New upstream release 2.43
  3989   - snap: default to "--direct" in `snap known`
  3990   - packaging: ship var/lib/snapd/desktop/applications in the
  3991     pkg
  3992   - tests: cherry-pick fixes for  snap-set-core-config/ubuntu-core-
  3993     config-defaults-once
  3994   - tests: use test-snapd-sh snap instead of test-snapd-tools
  3995   - tests: rename "test-snapd-sh" in smoke test to test-snapd-sandbox
  3996   - tests: fix partition creation test
  3997   - packaging: fix incorrect changelog entry
  3998   - Revert "tests: 16.04 and 18.04 now have mediating pulseaudio"
  3999   - tests: 16.04 and 18.04 now have mediating pulseaudio
  4000   - interfaces: include hooks in plug/slot apparmor label
  4001   - interfaces: add raw-volume interface for access to partitions
  4002   - image: set recovery system label when creating the image
  4003   - cmd/snapd-generator: fix unit name for non /snap mount locations
  4004   - boot,bootloader: setup the snap recovery system bootenv
  4005   - seed: support ModeSnaps(mode) for mode != "run"
  4006   - seed: fix seed location of local but asserted snaps
  4007   - doc: HACKING.md change autopkgtest-trusty-amd64.img name
  4008   - interfaces/seccomp: parallelize seccomp backend setup
  4009   - cmd/snap-bootstrap: mount ubuntu-data tmpfs, in one go with kernel
  4010     & base
  4011   - interfaces: add audio-playback/record and pulseaudio spread tests
  4012   - apparmor: allow 'r'
  4013     /sys/kernel/mm/transparent_hugepage/hpage_pmd_size
  4014   - cmd/snap-mgmt, packaging/postrm: stop and remove socket units when
  4015     purging
  4016   - tests: use test-snapd-sh snap instead of test-snapd-tools
  4017   - snap-confine: raise egid before calling setup_private_mount()
  4018   - tests: fix fwupd version regular expression
  4019   - snap-bootstrap: parse seed if either kernel or base are not
  4020     mounted
  4021   - tests: check for SELinux denials in interfaces-kvm spread test
  4022   - tests: run snap-set-core-config on all core devices
  4023   - selinux: update policy to allow modifications related to kmod
  4024     backend
  4025   - o/hookstate/ctlcmd: snapctl is-connected command
  4026   - devicestate: add missing test for failing task setup-run-system
  4027   - gadget: add missing test for duplicate detection of roles
  4028   - tests/cmd/snapctl: unset SNAP_CONTEXT for the suite
  4029   - snap/pack, cmd_pack: 'snap pack --check-skeleton' checks
  4030     interfaces
  4031   - gitignore: ignore visual studio code directory
  4032   - snap-bootstrap: implement "run" mode in snap-bootstrap initramfs-
  4033     mounts
  4034   - interfaces/apparmor: handle pre-seeding mode
  4035   - devicestate: implement creating partitions in "install" mode
  4036   - seed: support extra snaps on top of Core 20 dangerous models
  4037   - tests: cache snaps also for ubuntu core and add new snaps to cache
  4038   - snap-bootstrap: support auto-detect device in create-partitions
  4039   - tests: fix partitioning test debug message
  4040   - tests: prevent partitioning test errors
  4041   - cmd/snap-bootstrap: stub out snap.SanitizePlugsSlots for real
  4042   - gadget: extract and export new DiskFromPartition() helper
  4043   - snap-bootstrap: force partition table operations
  4044   - HACKING.md: add nvidia options to configure example
  4045   - tests: move the watchdog timeout to 2s to make the tests work in
  4046     rpi
  4047   - tests: demand silence from check_journalctl_log
  4048   - tests: fix the channels checks done on nested tests
  4049   - tests: reduce the complexity of the test-snapd-sh snap
  4050   - snap/squashfs, osutil: verify files/dirs can be accessed by
  4051     mksquashfs when building a snap
  4052   - boot: add boot.Modeenv.Kernel support
  4053   - devicestate: ensure system installation
  4054   - tests: apply change on permissions to serial port on hotplug test
  4055   - cmd/snap-update-ns: adjust debugging output for usability
  4056   - devicestate: add reading of modeenv to uc20 firstboot code
  4057   - tests/lib/prepare: drop workarounds for rpmbuild rewriting /bin/sh
  4058   - cmd/snap-bootstrap: write /var/lib/snapd/modeenv to the right
  4059     place
  4060   - boot: add boot.Modeenv.Base support
  4061   - overlord/snapstate: install task edges
  4062   - cmd/snap-bootstrap: some small naming and code org tweaks
  4063   - snap-bootstrap: remove SNAPPY_TESTING check, we use it for real
  4064     now
  4065   - interfaces: remove leftover reservedForOS
  4066   - snap-bootstrap: write /run/mnt/ubuntu-data/var/lib/snapd/modeenv
  4067   - osutil/mount: optimize flagOptSearch some more
  4068   - devicestate: read modeenv early and store in devicestate
  4069   - interfaces: add login-session-observe for who, {fail,last}log and
  4070     loginctl
  4071   - tests: add Ubuntu Eoan to google-sru backend
  4072   - osutil/mount: de-duplicate code to use a list
  4073   - interfaces: remove reservedForOS from commonInterface
  4074   - interfaces/browser-support: allow reading status of huge pages
  4075   - interfaces: update system-backup tests to not check for sanitize
  4076     errors related to os
  4077   - interfaces: add system-backup interface
  4078   - osutil/mount: add {Unm,M}outFlagsToOpts helpers
  4079   - snap-bootstrap: make cmdline parsing robust
  4080   - overlord/patch: normalize tracking channel in state
  4081   - boot: add boot.Modeenv that can read/write the UC20 modeenv files
  4082   - bootloader: add new bootloader.InstallBootConfig()
  4083   - many: share single implementation to list needed default-providers
  4084   - snap-bootstrap: implement "snap-bootstrap initramfs-mounts"
  4085   - seccomp: allow chown 'snap_daemon:root' and 'root:snap_daemon'
  4086   - osutil: handle "rw" mount flag in ParseMountEntry
  4087   - overlord/ifacestate: report bad plug/slots with warnings on snap
  4088     install
  4089   - po: sync translations from launchpad
  4090   - tests: cleanup most test snaps icons, they were anyway in the
  4091     wrong place
  4092   - seed: fix confusing pre snapd dates in tests
  4093   - many: make ValidateBasesAndProviders signature simpler/canonical
  4094   - snap-bootstrap: set expected filesystem labels
  4095   - testutil, many: make MockCommand() create prefix of absolute paths
  4096   - tests: improve TestDoPrereqRetryWhenBaseInFlight to fix occasional
  4097     flakiness.
  4098   - seed: proper support for optional snaps for Core 20 models
  4099   - many: test various kinds of overriding for the snapd snap in Core
  4100     20
  4101   - cmd/snap-failure: passthrough snapd logs, add informational
  4102     logging
  4103   - cmd/snap-failure: fallback to snapd from core, extend tests
  4104   - configcore: fix missing error propagation
  4105   - devicestate: rename ensureSeedYaml -> ensureSeeded
  4106   - tests: adding fedora 31
  4107   - tests: restart the snapd service in the snapd-failover test
  4108   - seed: Core 20 seeds channel overrides support for grade dangerous
  4109   - cmd: fix the get command help message
  4110   - tests: enable degraded test on arch linux after latest image
  4111     updates
  4112   - overlord/snapstate: don't re-enable and start disabled services on
  4113     refresh, etc.
  4114   - seed: support in Core 20 seeds local unasserted snaps for model
  4115     snaps
  4116   - snap-bootstrap: add go-flags cmdline parsing and tests
  4117   - gadget: skip fakeroot if not needed
  4118   - overlord/state: panic in MarkEdge() if task is nil
  4119   - spread: fix typo in spread suite
  4120   - overlord: mock device serial in gadget remodel unit tests
  4121   - tests: fix spread shellcheck and degraded tests to unbreak master
  4122   - spread, tests: openSUSE Tumbleweed to unstable systems, update
  4123     system-usernames on Amazon Linux 2
  4124   - snap: extract printInstallHint in cmd_download.go
  4125   - cmd: fix a pair of typos
  4126   - release: preseed mode flag
  4127   - cmd/snap-confine: tracking processes with classic confinement
  4128   - overlord/ifacestate: remove automatic connections if plug/slot
  4129     missing
  4130   - o/ifacestate,interfaces,interfaces/policy: slots-per-plug: *
  4131   - tests/lib/state: snapshot and restore /var/snap during the tests
  4132   - overlord: add base->base remodel undo tests and fixes
  4133   - seed: test and improve Core 20 seed handling errors
  4134   - asserts: add "snapd" type to valid types in the model assertion
  4135   - snap-bootstrap: check gadget versus disk partitions
  4136   - devicestate: add support for gadget->gadget remodel
  4137   - snap/snapenv: preserve XDG_RUNTIME_DIR for classic confinement
  4138   - daemon: parse and reject invalid channels in snap ops
  4139   - overlord: add kernel remodel undo tests and fix undo
  4140   - cmd/snap: support (but warn) using deprecated multi-slash channel
  4141   - overlord: refactor mgrsSuite and extract kernelSuite
  4142   - tests/docker-smoke: add minimal docker smoke test
  4143   - interfaces: extend the fwupd slot to be implicit on classic
  4144   - cmd/snap: make 'snap list' shorten latest/$RISK to $RISK
  4145   - tests: fix for journalctl which is failing to restart
  4146   - cmd/snap,image: initial support for Core 20 in prepare-image with
  4147     test
  4148   - cmd/snap-confine: add support for parallel instances of classic
  4149     snaps, global mount ns initialization
  4150   - overlord: add kernel rollback across reboots manager test and
  4151     fixes
  4152   - o/devicestate: the basics of Core 20 firstboot support with test
  4153   - asserts: support and parsing for slots-per-plug/plugs-per-slotSee
  4154     https://forum.snapcraft.io/t/plug-slot-declaration-rules-greedy-
  4155     plugs/12438
  4156   - parts/plugins: don't xz-compress a deb we're going to discard
  4157   - cmd/snap: make completion skip hidden commands (unless overridden)
  4158   - many: load/consume Core 20 seeds (aka recovery systems)
  4159   - tests: add netplan test on ubuntu core
  4160   - seed/internal: doc comment fix and drop handled TODOs
  4161   - o/ifacestate: unify code into
  4162     autoConnectChecker.addAutoConnectionsneed to change to support
  4163     slots-per-plugs: *
  4164   - many: changes to testing in preparation of Core 20 seed consuming
  4165     code
  4166   - snapstate,devicestate: make OldModel() available in DeviceContext
  4167   - tests: opensuse tumbleweed has similar issue than arch linux with
  4168     snap --strace
  4169   - client,daemon: pass sha3-384 in /v2/download to the client
  4170   - builtin/browser_support.go: allow monitoring process memory
  4171     utilization (used by chromium)
  4172   - overlord/ifacestate: use SetupMany in setupSecurityByBackend
  4173   - tests: add 14.04 canonical-livepatch test
  4174   - snap: make `snap known --remote` use snapd if available
  4175   - seed: share auxInfo20 and makeSystemSnap via internal
  4176   - spread: disable secondary compression for deltas
  4177   - interfaces/content: workaround for renamed target
  4178   - tests/lib/gendevmodel: helper tool for generating developer model
  4179     assertions
  4180   - tests: tweak wording in mount-ns test
  4181   - tests: don't depend on GNU time
  4182   - o/snapstate, etc: SnapState.Channel -> TrackingChannel, and a
  4183     setter
  4184   - seed/seedwriter: support writing Core 20 seeds (aka recovery
  4185     systems)
  4186   - snap-recovery: rename to "snap-bootstrap"
  4187   - managers: add remodel undo test for new required snaps case
  4188   - client: add xerrors and wrap errors coming from "client"
  4189   - tests: verify host is not affected by mount-ns tests
  4190   - tests: configure the journald service for core systems
  4191   - cmd/snap, store: include snapcraft.io page URL in snap info output
  4192   - cmd/cmdutil: version helper
  4193   - spread: enable bboozzoo/snapd-devel-deps COPR repo for getting
  4194     golang-x-xerrors
  4195   - interfaces: simplify AddUpdateNS and emit
  4196   - interfaces/policy: expand cstrs/cstrs1 to
  4197     altConstraints/constraints
  4198   - overlord/devicestate: check snap handler for gadget remodel
  4199     compatibility
  4200   - snap-recovery: deploy gadget content when creating partitions
  4201   - gadget: skip structures with MBR role during remodel
  4202   - tests: do not use lsblk in uc20-snap-recovery test
  4203   - overlord/snapstate: add LastActiveDisabledServices,
  4204     missingDisabledServices
  4205   - overlord/devicestate: refactor and split into per-functionality
  4206     files, drop dead code
  4207   - tests: update mount-ns after addition of /etc/systemd/user
  4208   - interfaces/pulseaudio: adjust to manually connect by default
  4209   - interfaces/u2f-devices: add OnlyKey to devices list
  4210   - interfaces: emit update-ns snippets to function
  4211   - interfaces/net-setup-{observe,control}: add Info D-Bus method
  4212     accesses
  4213   - tests: moving ubuntu-19.10-64 from google-unstable to google
  4214     backend
  4215   - gadget: rename existing and add new helpers for checking
  4216     filesystem/partition presence
  4217   - gadget, overlord/devicestate: add support for customized update
  4218     policy, add remodel policy
  4219   - snap-recovery: create filesystems as defined in the gadget
  4220   - tests: ignore directories for go modules
  4221   - policy: implement CanRemove policy for the snapd type
  4222   - overlord/snapstate: skip catalog refresh if unseeded
  4223   - strutil: add OrderedSet
  4224   - snap-recovery: add minimal binary so that we can use spread on it
  4225   - gadget, snap/pack: perform extended validation of gadget metadata
  4226     and contents
  4227   - timeutil: fix schedules with ambiguous nth weekday spans
  4228   - interfaces/many: allow k8s/systemd-run to mount volume subPaths
  4229     plus cleanups
  4230   - client: add KnownOptions to Know() and support remote assertions
  4231   - tests: check the apparmor_parser when the file exists on snap-
  4232     confine test
  4233   - gadget: helper for volume compatibility checks
  4234   - tests: update snap logs to match for multiple lines for "running"
  4235   - overlord: add checks for bootvars in
  4236     TestRemodelSwitchToDifferentKernel
  4237   - snap-install: add ext4,vfat creation support
  4238   - snap-recovery: remove "usedPartitions" from sfdisk.Create()
  4239   - image,seed: hide Seed16/Snap16, use seed.Open in image_test.go
  4240   - cmd/snap: Sort tasks in snap debug timings output by lanes and
  4241     ready-time.
  4242   - snap-confine.apparmor.in: harden pivot_root until we have full
  4243     mediation
  4244   - gadget: refactor ensureVolumeConsistency
  4245   - gadget: add a public helper for parsing gadget metadata
  4246   - many: address issues related to explicit/implicit channels for
  4247     image building
  4248   - overlord/many: switch order of check snap parameters
  4249   - cmd/snap-confine: remove leftover condition from capability world
  4250   - overlord: set fake serial in TestRemodelSwitchToDifferentKernel
  4251   - overlord/many: extend check snap callback to take snap container
  4252   - recovery-tool: add sfdisk wrapper
  4253   - tests: launch the lxd images following the pattern
  4254     ubuntu:${VERSION_ID}
  4255   - sandbox/cgroup: move freeze/thaw code
  4256   - gadget: accept system-seed role and ubuntu-data label
  4257   - test/lib/names.sh: make backslash escaping explicit
  4258   - spread: generate delta when using google backend
  4259   - cmd/snap-confine: remove loads of dead code
  4260   - boot,dirs,image: various refinements in the prepare-image code
  4261     switched to seedwriter
  4262   - spread: include mounts list in task debug output
  4263   - .gitignore: pair of trivial changes
  4264   - image,seed/seedwriter: switch image to use seedwriter.Writer
  4265   - asserts: introduce explicit support for grade for Core 20 models
  4266   - usersession: drive by fixes for things flagged by unused or
  4267     gosimple
  4268   - spread.yaml: exclude vendor dir
  4269   - sandbox/cgroup, overlord/snapstate: move helper for listing pids
  4270     in group to the cgroup package
  4271   - sandbox/cgroup: refactor process cgroup helper to support v2 and
  4272     named hierarchies
  4273   - snap-repair: error if run as non-root
  4274   - snap: when running `snap repair` without arguments, show hint
  4275   - interfaces: add cgroup-version to system-key
  4276   - snap-repair: add missing check in TestRepairBasicRun
  4277   - tests: use `snap model` instead of `snap known model` in tests
  4278   - daemon: make /v2/download take snapRevisionOptions
  4279   - snap-repair: add additional comment about trust in runner.Verify()
  4280   - client: add support to use the new "download" API
  4281   - interfaces: bump system-key version (and keep on bumping)
  4282   - interfaces/mount: account for cgroup version when reporting
  4283     supported features
  4284   - tests: change regex to validate access to cdn during snap
  4285     download
  4286   - daemon: change /v2/download API to take "snap-name" as input
  4287   - release: make forced dev mode look at cgroupv2 support
  4288   - seed/seedwriter: support for extra snaps
  4289   - wrappers/services.go: add disabled svc list arg to AddSnapServices
  4290   - overlord/snapstate: add SetTaskSnapSetup helper + unit tests
  4291   - cmd/libsnap: use cgroup.procs instead of tasks
  4292   - tests: fix snapd-failover test for core18 tests on boards
  4293   - overlord/snapstate/policy, etc: introduce policy, move canRemove
  4294     to it
  4295   - seed/seedwriter: cleanups and small left over todos* drive-by: use
  4296     testutil.FilePresent consistently
  4297   - cmd/snap: update 'snap find' help because it's no longer narrow
  4298   - seed/seedwriter,snap/naming: support classic models
  4299   - cmd/snap-confine: unmount /writable from snap view
  4300   - spread.yaml: exclude automake cacheThe error message is looks like
  4301     this:dpkg-source: info: local changes detected, the modified files
  4302     are:
  4303   - interfaces/openvswitch: allow access to other openvswitch sockets
  4304   - cmd/model: don't show model with display-name inline w/ opts
  4305   - daemon: add a 'prune' debug action
  4306   - client: add doTimeout to http.Client{Timeout}
  4307   - interfaces/seccomp: query apparmor sandbox helper rather than
  4308     aggregate info
  4309   - sandbox/cgroup: avoid dependency on dirs
  4310   - seed/seedwriter,snap: support local snaps
  4311   - overlord/snapstate: fix undo on firstboot seeding.
  4312   - usersession: track connections to session agent for exit on idle
  4313     and peer credential checks
  4314   - tests: fix ubuntu-core-device-reg test for arm devices on core18
  4315   - sandbox/seccomp: move the remaining sandbox bits to a
  4316     corresponding sandbox package
  4317   - osutil: generalize SyncDir with FileState interface
  4318   - daemon, client, cmd/snap: include architecture in 'snap version'
  4319   - daemon: allow /v2/assertions/{assertType} to query store
  4320   - gadget: do not fail the update when old gadget snap is missing
  4321     bare content
  4322   - sandbox/selinux: move SELinux related bits from 'release' to
  4323     'sandbox/selinux'
  4324   - tests: add unit test for gadget defaults with a multiline string
  4325   - overlord/snapstate: have more context in the errors about
  4326     prerequisites
  4327   - httputil: set user agent for CONNECT
  4328   - seed/seedwriter: resolve channels using channel.Resolve* for snaps
  4329   - run-checks: allow overriding gofmt binary, show gofmt diff
  4330   - asserts,seed/seedwriter: follow snap type sorting in the model
  4331     assertion snap listings
  4332   - daemon: return "snapname_rev.snap" style when using /v2/download
  4333   - tests: when the backend is external skip the loop waiting for snap
  4334     version
  4335   - many: move AppArmor probing code under sandbox/apparmor
  4336   - cmd: add `snap debug boot-vars` that dumps the current bootvars
  4337   - tests: skip the ubuntu-core-upgrade on arm devices on core18
  4338   - seed/seedwriter: implement WriteMeta and tree16 corresponding code
  4339   - interfaces/docker-support,kubernetes-support: misc updates for
  4340     strict k8s
  4341   - tests: restart the journald service while preparing the test
  4342   - tests/cmd/debug_state: make the test output TZ independent
  4343   - interfaces/kubernetes-support: allow use of /run/flannel
  4344   - seed/seedwriter: start of Writer and internal policy16/tree16
  4345   - sandbox/cgroup, usersession/userd: move cgroup related helper to a
  4346     dedicated package
  4347   - tests: move "centos-7" to unstable systems
  4348   - snapstate: add missing tests for checkGadgetOrKernel
  4349   - docs: Update README.md
  4350   - snapcraft: set license to GPL-3.0
  4351   - interfaces/wayland: allow a confined server running in a user
  4352     session to work with Qt, GTK3 & SDL2 clients
  4353   - selinux: move the package under sandbox/selinux
  4354   - interfaces/udev: account for cgroup version when reporting
  4355     supported features
  4356   - store, ..., client: add a "website" field
  4357   - sanity: sanity check cgroup probing
  4358   - snapstate: increase settleTimeout in
  4359     TestRemodelSwitchToDifferentKernel
  4360   - packaging: remove obsolete usr.lib.snapd.snap-confine in postinst
  4361   - data/selinux: allow snapd/snap to do statfs() on the cgroup
  4362     mountpoint
  4363   - usersession/userd: make sure to export DBus interfaces before
  4364     requesting a name
  4365   - data/selinux: allow snapd to issue sigkill to journalctl
  4366   - docs: Add Code of Conduct
  4367   - store: download propagates options to delta download
  4368   - tests/main/listing: account for dots in ~pre suffix
  4369  
  4370  * Fri Dec 06 2019 Michael Vogt <mvo@ubuntu.com>
  4371  - New upstream release 2.42.5
  4372   - snap-confine: revert, with comment, explicit unix deny for nested
  4373     lxd
  4374   - Disable mount-ns test on 16.04. It is too flaky currently.
  4375  
  4376  * Thu Nov 28 2019 Michael Vogt <mvo@ubuntu.com>
  4377  - New upstream release 2.42.4
  4378   - overlord/snapstate: make sure configuration defaults are applied
  4379     only once
  4380  
  4381  * Wed Nov 27 2019 Michael Vogt <mvo@ubuntu.com>
  4382  - New upstream release 2.42.3
  4383   - overlord/snapstate: pick up system defaults when seeding the snapd
  4384     snap
  4385   - cmd/snap-update-ns: fix overlapping, nested writable mimic
  4386     handling
  4387   - interfaces: misc updates for u2f-devices, browser-support,
  4388     hardware-observe, et al
  4389   - tests: reset failing "fwupd-refresh.service" if needed
  4390   - tests/main/gadget-update-pc: use a program to modify gadget yaml
  4391   - snap-confine: suppress noisy classic snap file_inherit denials
  4392  
  4393  * Wed Nov 20 2019 Michael Vogt <mvo@ubuntu.com>
  4394  - New upstream release 2.42.2
  4395   - interfaces/lxd-support: Fix on core18
  4396   - tests/main/system-usernames: Amazon Linux 2 comes with libseccomp
  4397     2.4.1 now
  4398   - snap-seccomp: add missing clock_getres_time64
  4399   - cmd/snap-seccomp/syscalls: update the list of known
  4400     syscalls
  4401   - sandbox/seccomp: accept build ID generated by Go toolchain
  4402   - interfaces: allow access to ovs bridge sockets
  4403  
  4404  * Wed Oct 30 2019 Michael Vogt <mvo@ubuntu.com>
  4405  - New upstream release 2.42.1
  4406   - interfaces: de-duplicate emitted update-ns profiles
  4407   - packaging: tweak handling of usr.lib.snapd.snap-confine
  4408   - interfaces: allow introspecting network-manager on core
  4409   - tests/main/interfaces-contacts-service: disable on openSUSE
  4410     Tumbleweed
  4411   - tests/lib/lxd-snapfuse: restore mount changes introduced by LXD
  4412   - snap: fix default-provider in seed validation
  4413   - tests: update system-usernames test now that opensuse-15.1 works
  4414   - overlord: set fake sertial in TestRemodelSwitchToDifferentKernel
  4415   - gadget: rename "boot{select,img}" -> system-boot-{select,image}
  4416   - tests: listing test, make accepted snapd/core versions consistent
  4417  
  4418  * Tue Oct 01 2019 Michael Vogt <mvo@ubuntu.com>
  4419  - New upstream release 2.42
  4420   - tests: disable {contacts,calendar}-service tests on debian-sid
  4421   - tests/main/snap-run: disable strace test cases on Arch
  4422   - cmd/system-shutdown: include correct prototype for die
  4423   - snap/naming: add test for hook name connect-plug-i2c
  4424   - cmd/snap-confine: allow digits in hook names
  4425   - gadget: do not fail the update when old gadget snap is missing
  4426     bare content
  4427   - tests: disable {contacts,calendar}-service tests on Arch Linux
  4428   - tests: move "centos-7" to unstable systems
  4429   - interfaces/docker-support,kubernetes-support: misc updates for
  4430     strict k8s
  4431   - packaging: remove obsolete usr.lib.snapd.snap-confine in
  4432     postinst
  4433   - tests: add test that ensures our snapfuse binary actually works
  4434   - packaging: use snapfuse_ll to speed up snapfuse performance
  4435   - usersession/userd: make sure to export DBus interfaces before
  4436     requesting a name
  4437   - data/selinux: allow snapd to issue sigkill to journalctl
  4438   - store: download propagates options to delta download
  4439   - wrappers: allow snaps to install icon theme icons
  4440   - debug: state-inspect debugging utility
  4441   - sandbox/cgroup: introduce cgroup wrappers package
  4442   - snap-confine: fix return value checks for udev functions
  4443   - cmd/model: output tweaks, add'l tests
  4444   - wrappers/services: add ServicesEnableState + unit tests
  4445   - tests: fix newline and wrong test name pointed out in previous PRs
  4446   - tests: extend mount-ns test to handle mimics
  4447   - run-checks, tests/main/go: allow gofmt checks to be skipped on
  4448     19.10
  4449   - tests/main/interfaces-{calendar,contacts}-service: disable on
  4450     19.10
  4451   - tests: part3 making tests work on ubuntu-core-18
  4452   - tests: fix interfaces-timeserver-control on 19.10
  4453   - overlord/snapstate: config revision code cleanup and extra tests
  4454   - devicestate: allow remodel to different kernels
  4455   - overlord,daemon: adjust startup timeout via EXTEND_TIMEOUT_USEC
  4456     using an estimate
  4457   - tests/main/many: increase kill-timeout to 5m
  4458   - interfaces/kubernetes-support: allow systemd-run to ptrace read
  4459     unconfined
  4460   - snapstate: auto transition on experimental.snapd-snap=true
  4461   - tests: retry checking until the written file on desktop-portal-
  4462     filechooser
  4463   - tests: unit test for a refresh failing on configure hook
  4464   - tests: remove mount_id and parent_id from mount-ns test data
  4465   - tests: move classic-ubuntu-core-transition* to nightly
  4466   - tests/mountinfo-tool: proper formatting of opt_fields
  4467   - overlord/configstate: special-case "null" in transaction Changes()
  4468   - snap-confine: fallback gracefully on a cgroup v2 only system
  4469   - tests: debian sid now ships new seccomp, adjust tests
  4470   - tests: explicitly restore after using LXD
  4471   - snapstate: make progress reporting less granular
  4472   - bootloader: little kernel support
  4473   - fixme: rename ubuntu*architectures to dpkg*architectures
  4474   - tests: run dbus-launch inside a systemd unit
  4475   - channel: introduce Resolve and ResolveLocked
  4476   - tests: run failing tests on ubuntu eoan due to is now set as
  4477     unstable
  4478   - systemd: detach rather than unmount .mount units
  4479   - cmd/snap-confine: add unit tests for sc_invocation, cleanup memory
  4480     leaks in tests
  4481   - boot,dirs,image: introduce boot.MakeBootable, use it in image
  4482     instead of ad hoc code
  4483   - cmd/snap-update-ns: clarify sharing comment
  4484   - tests/overlord/snapstate: refactor for cleaner test failures
  4485   - cmd/snap-update-ns: don't propagate detaching changes
  4486   - interfaces: allow reading mutter Xauthority file
  4487   - cmd/snap-confine: fix /snap duplication in legacy mode
  4488   - tests: fix mountinfo-tool filtering when used with rewriting
  4489   - seed,image,o/devicestate: extract seed loading to seed/seed16.go
  4490   - many: pass the rootdir and options to bootloader.Find
  4491   - tests: part5 making tests work on ubuntu-core-18
  4492   - cmd/snap-confine: keep track of snap instance name and the snap
  4493     name
  4494   - cmd: unify die() across C programs
  4495   - tests: add functions to make an abstraction for the snaps
  4496   - packaging/fedora, tests/lib/prepare-restore: helper tool for
  4497     packing sources for RPM
  4498   - cmd/snap: improve help and error msg for snapshot commands
  4499   - hookstate/ctlcmd: fix snapctl set help message
  4500   - cmd/snap: don't append / to snap name just because a dir exists
  4501   - tests: support fastly-global.cdn.snapcraft.io url on proxy-no-core
  4502     test
  4503   - tests: add --quiet switch to retry-tool
  4504   - tests: add unstable stage for travis execution
  4505   - tests: disable interfaces-timeserver-control on 19.10
  4506   - tests: don't guess in is_classic_confinement_supported
  4507   - boot, etc: simplify BootParticipant (etc) usage
  4508   - tests: verify retry-tool not retrying missing commands
  4509   - tests: rewrite "retry" command as retry-tool
  4510   - tests: move debug section after restore
  4511   - cmd/libsnap-confine-private, cmd/s-c: use constants for
  4512     snap/instance name lengths
  4513   - tests: measure behavior of the device cgroup
  4514   - boot, bootloader, o/devicestate: boot env manip goes in boot
  4515   - tests: enabling ubuntu 19.10-64 on spread.yaml
  4516   - tests: fix ephemeral mount table in left over by prepare
  4517   - tests: add version-tool for comparing versions
  4518   - cmd/libsnap: make feature flag enum 1<<N style
  4519   - many: refactor boot/boottest and move to bootloader/bootloadertest
  4520   - tests/cross/go-build: use go list rather than shell trickery
  4521   - HACKING.md: clarify where "make fmt" is needed
  4522   - osutil: make flock test more robust
  4523   - features, overlord: make parallel-installs exported, export flags
  4524     on startup
  4525   - overlord/devicestate:  support the device service returning a
  4526     stream of assertions
  4527   - many: add snap model command, add /v2/model, /v2/model/serial REST
  4528     APIs
  4529   - debian: set GOCACHE dir during build to fix FTBFS on eoan
  4530   - boot, etc.: refactor boot to have a lookup with different imps
  4531   - many: add the start of Core 20 extensions support to the model
  4532     assertion
  4533   - overlord/snapstate: revert track-risk behavior change and
  4534     validation on install
  4535   - cmd/snap,image,seed:  move image.ValidateSeed to
  4536     seed.ValidateFromYaml
  4537   - image,o/devicestate,seed: oops, make sure to clear seedtest
  4538     helpers
  4539   - tests/main/snap-info: update check.py for test-snapd-tools 2.0
  4540   - tests: moving tests to nightly suite
  4541   - overlord/devicestate,seed:  small step, introduce
  4542     seed.LoadAssertions and use it from firstboot
  4543   - snapstate: add comment to checkVersion vs strutil.VersionCompare
  4544   - tests: add unit tests for cmd_whoami
  4545   - tests: add debug section to interfaces-contacts-service
  4546   - many: introduce package seed and seedtest
  4547   - interfaces/bluez: enable communication between bluetoothd and
  4548     meshd via dbus
  4549   - cmd/snap: fix snap switch message
  4550   - overlord/snapstate: check channel names on install
  4551   - tests: check snap_daemon user and group on system-usernames-
  4552     illegal test are not created
  4553   - cmd/snap-confine: fix group and permission of .info files
  4554   - gadget: do not error on gadget refreshes with multiple volumes
  4555   - snap: use deterministic paths to find the built deb
  4556   - tests: just build snapd commands on go-build test
  4557   - tests: re-enable mount-ns test on classic
  4558   - tests: rename fuse_support to fuse-support
  4559   - tests: move restore-project-each code to existing function
  4560   - tests: simplify interfaces-account-control test
  4561   - i18n, vendor, packaging: drop github.com/ojii/gettext.go, use
  4562     github.com/snapcore/go-gettext
  4563   - tests: always say 'restore: |'
  4564   - tests: new test to check the output after refreshing/reverting
  4565     core
  4566   - snapstate: validate all system-usernames before creating them
  4567   - tests: fix system version check on listing test for external
  4568     backend
  4569   - tests: add check for snap_daemon user/group
  4570   - tests: don't look for lxcfs in mountinfo
  4571   - tests: adding support for arm devices on ubuntu-core-device-reg
  4572     test
  4573   - snap: explicitly forbid trying to parallel install from seed
  4574   - tests: remove trailing spaces from shell scripts
  4575   - tests: remove locally installed revisions of core
  4576   - tests: fix removal of snaps on ubuntu-core
  4577   - interfaces: support Tegra display drivers
  4578   - tests: move interfaces-contacts-service to /tmp
  4579   - interfaces/network-manager: allow using
  4580     org.freedesktop.DBus.ObjectManager
  4581   - tests: restore dpkg selections after upgrade-from-2.15 test
  4582   - tests: pass --remove to userdel on core
  4583   - snap/naming: simplify SnapSet somewhat
  4584   - devicestate/firstboot: check for missing bases early
  4585   - httputil: rework protocol error detection
  4586   - tests: unmount fuse connections only if not initially mounted
  4587   - snap: prevent duplicated snap name and snap files when parsing
  4588     seed.yaml
  4589   - tests: re-implement user tool in python
  4590   - image: improve/tweak some warning/error messages
  4591   - cmd/libsnap-confine-private: add checks for parallel instances
  4592     feature flag
  4593   - tests: wait_for_service shows status after actual first minute
  4594   - sanity: report proper errror when fuse is needed but not available
  4595   - snap/naming: introduce SnapRef, Snap, and SnapSet
  4596   - image: support prepare-image --classic for snapd snap only
  4597     imagesConsequently:
  4598   - tests/main/mount-ns: account for clone_children in cpuset cgroup
  4599     on 18.04
  4600   - many:  merging asserts.Batch Precheck with CommitTo and other
  4601     clarifications
  4602   - devicestate: add missing test for remodeling possibly removing
  4603     required flag
  4604   - tests: use user-tool to remove test user in the non-home test
  4605   - overlord/configstate: sort patch keys to have deterministic order
  4606     with snap set
  4607   - many: generalize assertstate.Batch to asserts.Batch, have
  4608     assertstate.AddBatch
  4609   - gadget, overlord/devicestate: rename Position/Layout
  4610   - store, image, cmd: make 'snap download' leave partials
  4611   - httputil: improve http2 PROTOCOL_ERROR detection
  4612   - tests: add new "user-tool" helper and use in system-user tests
  4613   - tests: clean up after NFS tests
  4614   - ifacestate: optimize auto-connect by setting profiles once after
  4615     all connects
  4616   - hookstate/ctlcmd: snapctl unset command
  4617   - tests: allow test user XDG_RUNTIME_DIR to phase out
  4618   - tests: cleanup "snap_daemon" user in system-usernames-install-
  4619     twice
  4620   - cmd/snap-mgmt: set +x on startup
  4621   - interfaces/wayland,x11: allow reading an Xwayland Xauth file
  4622   - many: move channel parsing to snap/channel
  4623   - check-pr-title.py: allow {} in pr prefix
  4624   - tests: spam test logs less while waiting for systemd unit to stop
  4625   - tests: remove redundant activation check for snapd.socket
  4626     snapd.service
  4627   - tests: trivial snapctl test cleanup
  4628   - tests: ubuntu 18.10 removed from the google-sru backend on the
  4629     spread.yaml
  4630   - tests: add new cases into arch_test
  4631   - tests: clean user and group for test system-usernames-install-
  4632     twice
  4633   - interfaces: k8s worker node updates
  4634   - asserts: move Model to its own model.go
  4635   - tests: unmount binfmt_misc on cleanup
  4636   - tests: restore nsdelegate clobbered by LXD
  4637   - cmd/snap: fix snap unset help string
  4638   - tests: unmount fusectl after testing
  4639   - cmd/snap: fix remote snap info for parallel installed snaps
  4640  
  4641  * Fri Aug 30 2019 Michael Vogt <mvo@ubuntu.com>
  4642  - New upstream release 2.41
  4643   - overlord/snapstate: revert track-risk behavior
  4644   - tests: fix snap info test
  4645   - httputil: rework protocol error detection
  4646   - gadget: do not error on gadget refreshes with multiple volumes
  4647   - i18n, vendor, packaging: drop github.com/ojii/gettext.go, use
  4648     github.com/snapcore/go-gettext
  4649   - snapstate: validate all system-usernames before creating them
  4650   - mkversion.sh: fix version from git checkouts
  4651   - interfaces/network-{control,manager}: allow 'k' on
  4652     /run/resolvconf/**
  4653   - interfaces/wayland,x11: allow reading an Xwayland Xauth file
  4654   - interfaces: k8s worker node updates
  4655   - debian: re-enable systemd environment generator
  4656   - many: create system-usernames user/group if both don't exist
  4657   - packaging: fix symlink for snapd.session-agent.socket
  4658   - tests: change cgroups so that LXD doesn't have to
  4659   - interfaces/network-setup-control: allow dbus netplan apply
  4660     messages
  4661   - tests: add /var/cache/snapd to the snapd state to prevent error on
  4662     the store
  4663   - tests: add test for services disabled during refresh hook
  4664   - many: simpler access to snap-seccomp version-info
  4665   - snap: cleanup some tests, clarify some errorsThis is a follow up
  4666     from work on system usernames:
  4667   - osutil: add osutil.Find{Uid,Gid}
  4668   - tests: use a different archive based on the spread backend on go-
  4669     build test
  4670   - cmd/snap-update-ns: fix pair of bugs affecting refresh of snap
  4671     with layouts
  4672   - overlord/devicestate: detect clashing concurrent (ongoing, just
  4673     finished) remodels or changes
  4674   - interfaces/docker-support: declare controls-device-cgroup
  4675   - packaging: fix removal of old apparmor profile
  4676   - store: use track/risk for "channel" name when parsing store
  4677     details
  4678   - many: allow 'system-usernames' with libseccomp > 2.4 and golang-
  4679     seccomp > 0.9.0
  4680   - overlord/devicestate, tests: use gadget.Update() proper, spread
  4681     test
  4682   - overlord/configstate/configcore: allow setting start_x=1 to enable
  4683     CSI camera on RPi
  4684   - interfaces: remove BeforePrepareSlot from commonInterface
  4685   - many: support system-usernames for 'snap_daemon' user
  4686   - overlord/devicestate,o/snapstate: queue service commands before
  4687     mark-seeded and other final tasks
  4688   - interfaces/mount: discard mount ns on backend Remove
  4689   - packaging/fedora: build on RHEL8
  4690   - overlord/devicestate: support seeding a classic system with the
  4691     snapd snap and no core
  4692   - interfaces: fix test failure in gpio_control_test
  4693   - interfaces, policy: remove sanitize helpers and use minimal policy
  4694     check
  4695   - packaging: use %systemd_user_* macros to enable session agent
  4696     socket according to presets
  4697   - snapstate, store: handle 429s on catalog refresh a little bit
  4698     better
  4699   - tests: part4 making tests work on ubuntu-core-18
  4700   - many: drop snap.ReadGadgetInfo wrapper
  4701   - xdgopenproxy: update test API to match upstream
  4702   - tests: show why sbuild failed
  4703   - data/selinux: allow mandb_t to search /var/lib/snapd
  4704   - tests: be less verbose when checking service status
  4705   - tests: set sbuild test as manual
  4706   - overlord: DeviceCtx must find the remodel context for a remodel
  4707     change
  4708   - tests: use snap info --verbose to check for base
  4709   - sanity: unmount squashfs with --lazy
  4710   - overlord/snapstate: keep current track if only risk is specified
  4711   - interfaces/firewall-control: support nft routing expressions and
  4712     device groups
  4713   - gadget: support for writing symlinks
  4714   - tests: mountinfo-tool fail if there are no matches
  4715   - tests: sync journal log before start the test
  4716   - cmd/snap, data/completion: improve completion for 'snap debug'
  4717   - httputil: retry for http2 PROTOCOL_ERROR
  4718   - Errata commit: pulseaudio still auto-connects on classic
  4719   - interfaces/misc: updates for k8s 1.15 (and greengrass test)
  4720   - tests: set GOTRACEBACK=1 when running tests
  4721   - cmd/libsnap: don't leak memory in sc_die_on_error
  4722   - tests: improve how the system is restored when the upgrade-
  4723     from-2.15 test fails
  4724   - interfaces/bluetooth-control: add udev rules for BT_chrdev devices
  4725   - interfaces: add audio-playback/audio-record and make pulseaudio
  4726     manually connect
  4727   - tests: split the sbuild test in 2 depending on the type of build
  4728   - interfaces: add an interface granting access to AppStream metadata
  4729   - gadget: ensure filesystem labels are unique
  4730   - usersession/agent: use background context when stopping the agent
  4731   - HACKING.md: update spread section, other updates
  4732   - data/selinux: allow snap-confine to read entries on nsfs
  4733   - tests: respect SPREAD_DEBUG_EACH on the main suite
  4734   - packaging/debian-sid: set GOCACHE to a known writable location
  4735   - interfaces: add gpio-control interface
  4736   - cmd/snap: use showDone helper with 'snap switch'
  4737   - gadget: effective structure role fallback, extra tests
  4738   - many: fix unit tests getting stuck
  4739   - tests: remove installed snap on restore
  4740   - daemon: do not modify test data in user suite
  4741   - data/selinux: allow read on sysfs
  4742   - packaging/debian: don't md5sum absent files
  4743   - tests: remove test-snapd-curl
  4744   - tests: remove test-snapd-snapctl-core18 in restore
  4745   - tests: remove installed snap in the restore section
  4746   - tests: remove installed test snap
  4747   - tests: correctly escape mount unit path
  4748   - cmd/Makefile.am: support building with the go snap
  4749   - tests: work around classic snap affecting the host
  4750   - tests: fix typo "current"
  4751   - overlord/assertstate: add Batch.Precheck to check for the full
  4752     validity of the batch before Commit
  4753   - tests: restore cpuset clone_children clobbered by lxd
  4754   - usersession: move userd package to usersession/userd
  4755   - tests: reformat and fix markdown in snapd-state.md
  4756   - gadget: select the right updater for given structure
  4757   - tests: show stderr only if it exists
  4758   - sessionagent: add a REST interface with socket activation
  4759   - tests: remove locally installed core in more tests
  4760   - tests: remove local revision of core
  4761   - packaging/debian-sid: use correct apparmor Depends for Debian
  4762   - packaging/debian-sid: merge debian upload changes back into master
  4763   - cmd/snap-repair: make sure the goroutine doesn't stick around on
  4764     timeout
  4765   - packaging/fedora: github.com/cheggaaa/pb is no longer used
  4766   - configstate/config: fix crash in purgeNulls
  4767   - boot, o/snapst, o/devicest: limit knowledge of boot vars to boot
  4768   - client,cmd/snap: stop depending on status/status-code in the JSON
  4769     responses in client
  4770   - tests: unmount leftover /run/netns
  4771   - tests: switch mount-ns test to manual
  4772   - overlord,daemon,cmd/snapd:  move expensive startup to dedicated
  4773     StartUp methods
  4774   - osutil: add EnsureTreeState helper
  4775   - tests: measure properties of various  mount namespaces
  4776   - tests: part2 making tests work on ubuntu-core-18
  4777   - interfaces/policy: minimal policy check for replacing
  4778     sanitizeReservedFor helpers (1/2)
  4779   - interfaces: add an interface that grants access to the PackageKit
  4780     service
  4781   - overlord/devicestate: update gadget update handlers and mocks
  4782   - tests: add mountinfo-tool --ref-x1000
  4783   - tests: remove lxd / lxcfs if pre-installed
  4784   - tests: removing support for ubuntu cosmic on spread test suite
  4785   - tests: don't leak /run/netns mount
  4786   - image: clean up the validateSuite
  4787   - bootloader: remove "Dir()" from Bootloader interface
  4788   - many: retry to reboot if snapd gets restarted before expected
  4789     reboot
  4790   - overlord: implement re-registration remodeling
  4791   - cmd: revert PR#6933 (tweak of GOMAXPROCS)
  4792   - cmd/snap: add snap unset command
  4793   - many: add Client-User-Agent to "SnapAction" install API call
  4794   - tests: first part making tests run on ubuntu-core-18
  4795   - hookstate/ctlcmd: support hidden commands in snapctl
  4796   - many: replace snapd snap name checks with type checks (3/4)
  4797   - overlord: mostly stop needing Kernel/CoreInfo, make GadgetInfo
  4798     consider a DeviceContext
  4799   - snapctl: handle unsetting of config options with "!"
  4800   - tests: move core migration snaps to tests/lib/snaps dir
  4801   - cmd/snap: handle unsetting of config options with "!"
  4802   - cmd/snap, etc: add health to 'snap list' and 'snap info'
  4803   - gadget: use struct field names when intializing data in mounted
  4804     updater unit tests
  4805   - cmd/snap-confine: bring /lib/firmware from the host
  4806   - snap: set snapd snap type (1/4)
  4807   - snap: add checks in validate-seed for missing base/default-
  4808     provider
  4809   - daemon: replace shutdownServer with net/http's native shutdown
  4810     support
  4811   - interfaces/builtin: add exec "/bin/runc" to docker-support
  4812   - gadget: mounted filesystem updater
  4813   - overlord/patch: simplify conditions for re-applying sublevel
  4814     patches for level 6
  4815   - seccomp/compiler: adjust test case names and comment for later
  4816     changes
  4817   - tests: fix error doing snap pack running failover test
  4818   - tests: don't preserve size= when rewriting mount tables
  4819   - tests: allow reordering of rewrite operations
  4820   - gadget: main update routine
  4821   - overlord/config: normalize nulls to support config unsetting
  4822     semantics
  4823   - snap-userd-autostart: don't list as a startup application on the
  4824     GUI
  4825   - tests: renumber snap revisions as seen via writable
  4826   - tests: change allocation for mount options
  4827   - tests: re-enable ns-re-associate test
  4828   - tests: mountinfo-tool allow many --refs
  4829   - overlord/devicestate: implement reregRemodelContext with the
  4830     essential re-registration logic
  4831   - tests: replace various numeric mount options
  4832   - gadget: filesystem image writer
  4833   - tests: add more unit tests for mountinfo-tool
  4834   - tests: introduce mountinfo-tool --ref feature
  4835   - tests: refactor mountinfo-tool rewrite state
  4836   - tests: allow renumbering mount namespace identifiers
  4837   - snap: refactor and explain layout blacklisting
  4838   - tests: renumber snap revisions as seen via hostfs
  4839   - daemon, interfaces, travis: workaround build ID with Go 1.9, use
  4840     1.9 for travis tests
  4841   - cmd/libsnap: add sc_error_init_{simple,api_misuse}
  4842   - gadget: make raw updater handle shifted structures
  4843   - tests/lib/nested: create WORK_DIR before accessing it
  4844   - cmd/libsnap: rename SC_LIBSNAP_ERROR to SC_LIBSNAP_DOMAIN
  4845   - cmd,tests: forcibly discard mount namespace when bases change
  4846   - many: introduce healthstate, run check-health
  4847     post-(install/refresh/try/revert)
  4848   - interfaces/optical-drive: add scsi-generic type 4 and 5 support
  4849   - cmd/snap-confine: exit from helper when parent dies
  4850  
  4851  * Fri Jul 12 2019 Michael Vogt <mvo@ubuntu.com>
  4852  - New upstream release 2.40
  4853   - overlord/patch: simplify conditions for re-applying sublevel
  4854     patches for level 6
  4855   - cmd,tests: forcibly discard mount namespace when bases change
  4856   - cmd/snap-confine: handle device cgroup before pivot
  4857   - cmd/snap-apparmor-service: quit if there are no profiles
  4858   - cmd/snap, image: add --target-directory and --basename to 'snap
  4859     download'
  4860   - interfaces: add jack1 implicit classic interface
  4861   - interfaces: miscellaneous policy updates
  4862   - daemon: classic confinement is not supported on core
  4863   - interfaces: bluetooth-control: add mtk BT device node
  4864   - cmd/snap-seccomp: initial support for negative arguments with
  4865     uid/gid caching
  4866   - snap-confine: move seccomp load after permanent privilege drop
  4867   - tests: new profiler snap used to track cpu and memory for snapd
  4868     and snap commands
  4869   - debian: make maintainer scripts do nothing on powerpc
  4870   - gadget: mounted filesystem writer
  4871   - cmd/snap: use padded checkers for snapshot output
  4872   - bootloader: switch to bootloader_test style testing
  4873   - gadget: add a wrapper for generating partitioned images with
  4874     sfdisk
  4875   - tests/main/snap-seccomp-syscalls: add description
  4876   - tests: continue executing on errors either updating the repo db or
  4877     installing dependencies
  4878   - cmd/snap-seccomp/syscalls: add io_uring syscalls
  4879   - systemd: add InstanceMode enumeration to control which systemd
  4880     instance to control
  4881   - netutil: extract socket activation helpers from daemon package.
  4882   - interfaces: spi: update regex rules to accept spi nodes like
  4883     spidev12345.0
  4884   - gadget: fallback device lookup
  4885   - many: add strutil.ElliptLeft, use it for shortening cohorts
  4886   - wrappers: allow sockets under $XDG_RUNTIME_DIR
  4887   - gadget: add wrapper for creating and populating filesystems
  4888   - gadget: add writer for offset-write
  4889   - gadget: support relative symlinks in device lookup
  4890   - snap, snapstate: additional validation of base field
  4891   - many: fix some races and missing locking, make sure UDevMonitor is
  4892     stopped
  4893   - boot: move ExtractKernelAssets
  4894   - daemon, snap: screenshots _only_ shows the deprecation notice,
  4895     from 2.39
  4896   - osutil: add a workaround for overlayfs apparmor as it is used on
  4897     Manjaro
  4898   - snap: introduce GetType() function for snap.Info
  4899   - tests: update systems to be used for during sru validation
  4900   - daemon: increase `shutdownTimeout` to 25s to deal with slow
  4901     HW
  4902   - interfaces/network-manager: move deny ptrace to the connected slot
  4903   - interfaces: allow locking of pppd files
  4904   - cmd/snap-exec: fix snap completion for classic snaps with non
  4905     /usr/lib/snapd libexecdir
  4906   - daemon: expose pprof endpoints
  4907   - travis: disable snap pack on OSX
  4908   - client, cmd/snap: expose the new cohort options for snap ops
  4909   - overlord/snapstate: tweak switch summaries
  4910   - tests: reuse the image created initially for nested tests
  4911     execution
  4912   - tests/lib/nested: tweak assert disk prepare step
  4913   - daemon, overlord/snapstate: support leave-cohort
  4914   - tests/main/appstream-id: collect debug info
  4915   - store,daemon: add client-user-agent support to store.SnapInfo
  4916   - tests: add check for invalid PR titles in the static checks
  4917   - tests: add snap-tool for easier access to internal tools
  4918   - daemon: unexport file{Response,Stream}
  4919   - devicestate: make TestUpdateGadgetOnClassicErrorsOut less racy
  4920   - tests: fix test desktop-portal-filechooser
  4921   - tests: sort commands from DumpCommands in the dumpDbHook
  4922   - cmd/snap: add unit test for "advise-snap --dump-db".
  4923   - bootloader: remove extra mock bootloader implementation
  4924   - daemon: tweak for "add api endpoint for download" PR
  4925   - packaging: fix reproducible build error
  4926   - tests: synchronize journal logs before check logs
  4927   - tests: fix snap service watchdog test
  4928   - tests: use more readable test directory names
  4929   - tests/regression/lp-1805485: update test description
  4930   - overlord: make changes conflict with remodel
  4931   - tests: make sure the snapshot unit test uses a snapshot time
  4932     relative to Now()
  4933   - tests: revert "tests: stop catalog-update/apt-hooks test for now"
  4934   - tests: mountinfo-tool --one prints matches on failure
  4935   - data/selinux: fix policy for snaps with bases and classic snaps
  4936   - debian: fix building on eoan by tweaking golang build-deps
  4937   - packaging/debian-sid: update required golang version to 1.10
  4938   - httputil: handle "no such host" error explicitly and do not retry
  4939     it
  4940   - overlord/snapstate, & fallout: give Install a *RevisionOptions
  4941   - cmd/snap: don't run install on 'snap --help install'
  4942   - gadget: raw/bare structure writer and updater
  4943   - daemon, client, cmd/snap: show cohort key in snap info --verbose
  4944   - overlord/snapstate: add update-gadget task when needed, block
  4945     other changes
  4946   - image: turn a missing default content provider into an error
  4947   - overlord/devicestate: update-gadget-assets task handler with
  4948     stubbed gadget callbacks
  4949   - interface: builtin: avahi-observe/control: update label for
  4950     implicit slot
  4951   - tests/lib/nested: fix multi argument copy_remote
  4952   - tests/lib/nested: have mkfs.ext4 use a rootdir instead of mounting
  4953     an image
  4954   - packaging: fix permissions powerpc docs dir
  4955   - overlord: mock store to avoid net requests
  4956   - debian: rework how we run autopkgtests
  4957   - interface: builtin: avahi-observe/control: allow slots
  4958     implementation also by app snap on classic system
  4959   - interfaces: builtin: utils: add helper function to identify system
  4960     slots
  4961   - interfaces: add missing adjtimex to time-control
  4962   - overlord/snapstate, snap: support base = "none"
  4963   - daemon, overlord/snapstate: give RevisionOptions a CohortKey
  4964   - data/selinux: permit init_t to remount snappy_snap_t
  4965   - cmd/snap: test for a friendly error on 'okay' without 'warnings'
  4966   - cmd/snap: support snap debug timings --startup=.. and measure
  4967     loadState time
  4968   - advise-snap: add --dump-db which dumps the command database
  4969   - interfaces/docker-support: support overlayfs on ubuntu core
  4970   - cmd/okay: Remove err message when warning file not exist
  4971   - devicestate: disallow removal of snaps used in booting early
  4972   - packaging: fix build-depends on powerpc
  4973   - tests: run spread tests on opensuse leap 15.1
  4974   - strutil/shlex: fix ineffassign
  4975   - cmd/snapd: ensure GOMAXPROCS is at least 2
  4976   - cmd/snap-update-ns: detach unused mount points
  4977   - gadget: record gadget root directory used during positioning
  4978   - tests: force removal to prevent restore fails when directory
  4979     doesn't exist on lp-1801955 test
  4980   - overlord: implement store switch remodeling
  4981   - tests: stop using ! for naive negation in shell scripts
  4982   - snap,store,daemon,client: send new "Snap-Client-User-Agent" header
  4983     in Search()
  4984   - osutil: now that we require golang-1.10, use user.LookupGroup()
  4985   - spread.yaml,tests: change MATCH and REBOOT to cmds
  4986   - packaging/fedora: force external linker to ensure static linking
  4987     and -extldflags use
  4988   - timings: tweak the conditional for ensure timings
  4989   - timings: always store ensure timings as long as they have an
  4990     associated change
  4991   - cmd/snap: tweak the output of snap debug timings --ensure=...
  4992   - overlord/devicestate: introduce remodel kinds and
  4993     contextsregistrationContext:
  4994   - snaptest: add helper for mocking snap with contents
  4995   - snapstate: allow removal of non-model kernels
  4996   - tests: change strace parameters on snap-run test to avoid the test
  4997     gets stuck
  4998   - gadget: keep track of the index where structure content was
  4999     defined
  5000   - cmd/snap-update-ns: rename leftover ctx to upCtx
  5001   - tests: add "not" command
  5002   - spread.yaml: use "snap connections" in debug
  5003   - tests: fix how strings are matched on auto-refresh-retry test
  5004   - spread-shellcheck: add support for variants and environment
  5005   - gadget: helper for shifting structure start position
  5006   - cmd/snap-update-ns: add several TODO comments
  5007   - cmd/snap-update-ns: rename ctx to upCtx
  5008   - spread.yaml: make HOST: usage shellcheck-clean
  5009   - overlord/snapstate, daemon: snapstate.Switch now takes a
  5010     RevisionOption
  5011   - tests: add mountinfo-tool
  5012   - many: make snapstate.Update take *RevisionOptions instead of chan,
  5013     rev
  5014   - tests/unit/spread-shellcheck: temporary workaround for SC2251
  5015   - daemon: refactor user ops to api_users
  5016   - cmd/snap, tests: refactor info to unify handling of 'direct' snaps
  5017   - cmd/snap-confine: combine sc_make_slave_mount_ns into caller
  5018   - cmd/snap-update-ns: use "none" for propagation changes
  5019   - cmd/snap-confine: don't pass MS_SLAVE along with MS_BIND
  5020   - cmd/snap, api, snapstate: implement "snap remove --purge"
  5021   - tests: new hotplug test executed on ubuntu core
  5022   - tests: running tests on fedora 30
  5023   - gadget: offset-write: fix validation, calculate absolute position
  5024   - data/selinux: allow snap-confine to do search on snappy_var_t
  5025     directories
  5026   - daemon, o/snapstate, store: support for installing from cohorts
  5027   - cmd/snap-confine: do not mount over non files/directories
  5028   - tests: validates snapd from ppa
  5029   - overlord/configstate: don't panic on invalid configuration
  5030   - gadget: improve device lookup, add helper for mount point lookup
  5031   - cmd/snap-update-ns: add tests for executeMountProfileUpdate
  5032   - overlord/hookstate: don't run handler unless hooksup.Always
  5033   - cmd/snap-update-ns: allow changing mount propagation
  5034   - systemd: workaround systemctl show quirks on older systemd
  5035     versions
  5036   - cmd/snap: allow option descriptions to start with the command
  5037   - many: introduce a gadget helper for locating device matching given
  5038     structure
  5039   - cmd/snap-update-ns: fix golint complaints about variable names
  5040   - cmd/snap: unit tests for debug timings
  5041   - testutil: support sharing-related mount flags
  5042   - packaging/fedora: Merge changes from Fedora Dist-Git and drop EOL
  5043     Fedora releases
  5044   - cmd/snap: support for --ensure argument for snap debug timings
  5045   - cmd,sandbox: tweak seccomp version info handling
  5046   - gadget: record sector size in positioned volume
  5047   - tests: make create-user test support managed devices
  5048   - packaging: build empty package on powerpc
  5049   - overlord/snapstate: perform hard refresh check
  5050   - gadget: add volume level update checks
  5051   - cmd/snap: mangle descriptions that have indent > terminal width
  5052   - cmd/snap-update-ns: rename applyFstab to executeMountProfileUpdate
  5053   - cmd/snap-confine: unshare per-user mount ns once
  5054   - tests: retry govendor sync
  5055   - tests: avoid removing snaps which are cached to speed up the
  5056     prepare on boards
  5057   - tests: fix how the base snap are deleted when there are multiple
  5058     to deleted on reset
  5059   - cmd/snap-update-ns: merge apply functions
  5060   - many: introduce assertstest.SigningAccounts and AddMany test
  5061     helpers
  5062   - interfaces: special-case "snapd" in sanitizeSlotReservedForOS*
  5063     helpers
  5064   - cmd/snap-update-ns: make apply{User,System}Fstab identical
  5065   - gadget: introduce checkers for sanitizing structure updates
  5066   - cmd/snap-update-ns: move apply{Profile,{User,System}Fstab} to same
  5067     file
  5068   - overlord/devicestate: introduce registrationContext
  5069   - cmd/snap-update-ns: add no-op load/save current user profile logic
  5070   - devicestate: set "new-model" on the remodel change
  5071   - devicestate: use deviceCtx in checkGadgetOrKernel
  5072   - many: use a fake assertion model in the device contexts for tests
  5073   - gadget: fix handling of positioning constrains for structures of
  5074     MBR role
  5075   - snap-confine: improve error when running on a not /home homedir
  5076   - devicestate: make Remodel() return a state.Change
  5077   - many: make which store to use contextualThis reworks
  5078     snapstate.Store instead of relying solely on DeviceContext,
  5079     because:
  5080   - tests: enable tests on centos 7 again
  5081   - interfaces: add login-session-control interface
  5082   - tests: extra debug for snapshot-basic test
  5083   - overlord,overlord/devicestate: do without GadgetInfo/KernelInfo in
  5084     devicestate
  5085   - gadget: more validation checks for legacy MBR structure type &
  5086     role
  5087   - osutil: fix TestReadBuildGo test in sbuild
  5088   - data: update XDG_DATA_DIRS via the systemd environment.d mechanism
  5089     too
  5090   - many: do without device state/assertions accessors based on state
  5091     only outside of devicestate/tests
  5092   - interfaces/dbus: fix unit tests when default snap mount dir is not
  5093     /snap
  5094   - tests: add security-seccomp to verify seccomp with arg filtering
  5095   - snapshotstate: disable automatic snapshots on core for now
  5096   - snapstate: auto-install snapd when needed
  5097   - overlord/ifacestate: update static attributes of "content"
  5098     interface
  5099   - interfaces: add support for the snapd snap in the dbus backend*
  5100   - overlord/snapstate: tweak autorefresh logic if network is not
  5101     available
  5102   - snapcraft: also include ld.so.conf from libc in the snapcraft.yml
  5103   - snapcraft.yaml: fix links ld-linux-x86-64.so.2/ld64.so.2
  5104   - overlord: pass a DeviceContext to the checkSnap implementations
  5105   - daemon: add RootOnly flag to commands
  5106   - many:  make access to the device model assertion etc contextual
  5107     via a DeviceCtx hook/DeviceContext interface
  5108   - snapcraft.yaml: include libc6 in snapd
  5109   - tests: reduce snapcraft leftovers from PROJECT_PATH,  temp disable
  5110     centos
  5111   - overlord: make the store context composably backed by separate
  5112     backends for device asserts/info etc.
  5113   - snapstate: revert "overlord/snapstate: remove PlugsOnly"
  5114   - osutil,cmdutil: move CommandFromCore and make it use the snapd
  5115     snap (if available)
  5116   - travis: bump Go version to 1.10.x
  5117   - cmd/snap-update-ns: remove instanceName argument from applyProfile
  5118   - gadget: embed volume in positioned volume, rename fields
  5119   - osutil: use go build-id when no gnu build-id is available
  5120   - snap-seccomp: add 4th field to version-info for golang-seccomp
  5121     features
  5122   - cmd/snap-update-ns: merge computeAndSaveSystemChanges into
  5123     applySystemFstab
  5124   - cmd/snap, client, daemon, store: create-cohort
  5125   - tests: give more time until nc returns on appstream test
  5126   - tests: run spread tests on ubuntu 19.04
  5127   - gadget: layout, smaller fixes
  5128   - overlord: update static attrs when reloading connections
  5129   - daemon: verify snap instructions for multi-snap requests
  5130   - overlord/corecfg: make expiration of automatic snapshots
  5131     configurable (4/4)
  5132   - cmd/snap-update-ns: pass MountProfileUpdate to
  5133     apply{System,User}Fstab
  5134   - snap: fix interface bindings on implicit hooks
  5135   - tests: improve how snaps are cached
  5136   - cmd/snap-update-ns: formatting tweaks
  5137   - data/selinux: policy tweaks
  5138   - cmd/snap-update-ns: move locking to the common layer
  5139   - overlord: use private YAML inside several tests
  5140   - cmd/snap, store, image: support for cohorts in "snap download"
  5141   - overlord/snapstate: add timings to critical task handlers and the
  5142     backend
  5143   - cmd: add `snap debug validate-seed <path>` cmd
  5144   - state: add possible error return to TaskSet.Edge()
  5145   - snap-seccomp: use username regex as defined in osutil/user.go
  5146   - osutil: make IsValidUsername public and fix regex
  5147   - store: serialize the acquisition of device sessions
  5148   - interfaces/builtin/desktop: fonconfig v6/v7 cache handling on
  5149     Fedora
  5150   - many: move Device/SetDevice to devicestate, start of making them
  5151     pluggable in storecontext
  5152   - overlord/snapstate: remove PlugsOnly
  5153   - interfaces/apparmor: allow running /usr/bin/od
  5154   - spread: add qemu:fedora-29-64
  5155   - tests: make test parallel-install-interfaces work for boards with
  5156     pre-installed snaps
  5157   - interfaces/builtin/intel_mei: fix /dev/mei* AppArmor pattern
  5158   - spread.yaml: add qemu:centos-7-64
  5159   - overlord/devicestate: extra measurements related to
  5160     populateStateFromSeed
  5161   - cmd/snap-update-ns: move Assumption to {System,User}ProfileUpdate
  5162   - cmd/libsnap: remove fringe error function
  5163   - gadget: add validation of cross structure overlap and offset
  5164     writes
  5165   - cmd/snap-update-ns: refactor of profile application (3/N)
  5166   - data/selinux: tweak the policy for runuser and s-c, interpret
  5167     audit entries
  5168   - tests: fix spaces issue in the base snaps names to remove during
  5169     reset phase
  5170   - tests: wait for man db cache is updated before after install snapd
  5171     on Fedora
  5172   - tests: extend timeout of sbuild test
  5173  
  5174  * Fri Jun 21 2019 Michael Vogt <mvo@ubuntu.com>
  5175  - New upstream release 2.39.3
  5176    - daemon: increase `shutdownTimeout` to 25s to deal with slow HW
  5177    - spread: run tests against openSUSE 15.1
  5178    - data/selinux: fix policy for snaps with bases and classic snaps
  5179  
  5180  * Wed Jun 05 2019 Michael Vogt <mvo@ubuntu.com>
  5181  - New upstream release 2.39.2
  5182   - debian: rework how we run autopkgtests
  5183   - interfaces/docker-support: add overlayfs accesses for ubuntu core
  5184   - data/selinux: permit init_t to remount snappy_snap_t
  5185   - strutil/shlex: fix ineffassign
  5186   - packaging: fix build-depends on powerpc
  5187  
  5188  * Wed May 29 2019 Michael Vogt <mvo@ubuntu.com>
  5189  - New upstream release 2.39.1
  5190   - spread: enable Fedora 30
  5191   - cmd/snap-confine, data/selinux: cherry pick Fedora 30 fixes
  5192   - tests/unit/spread-shellcheck: temporary workaround for SC2251
  5193   - packaging: build empty package on powerpc
  5194   - interfaces: special-case "snapd" in sanitizeSlotReservedForOS*
  5195     helper
  5196   - cmd/snap: mangle descriptions that have indent > terminal width
  5197   - cmd/snap-confine: unshare per-user mount ns once
  5198   - tests: avoid adding spaces to the base snaps names
  5199   - systemd: workaround systemctl show quirks on older systemd
  5200     versions
  5201  
  5202  * Mon May 06 2019 Neal Gompa <ngompa13@gmail.com> - 2.39-1
  5203  - Release 2.39 to Fedora (RH#1699087)
  5204  - Enable basic SELinux integration
  5205  - Fix changelog entry to fix build for EPEL 7
  5206  - Exclude bash and POSIX sh shebangs from mangling (LP:1824158)
  5207  - Drop some old pre Fedora 28 logic
  5208  
  5209  * Fri May 03 2019 Michael Vogt <mvo@ubuntu.com>
  5210  - New upstream release 2.39
  5211   - overlord/ifacestate: update static attributes of "content"
  5212     interface
  5213   - data/selinux: tweak the policy for runuser and s-c, interpret
  5214     audit entries
  5215   - snapshotstate: disable automatic snapshots on core for now
  5216   - overlord/corecfg: make expiration of automatic snapshots
  5217     configurable
  5218   - snapstate: auto-install snapd when needed
  5219   - interfaces: add support for the snapd snap in the dbus backend
  5220   - overlord/snapstate: tweak autorefresh logic if network is not
  5221     available
  5222   - interfaces/apparmor: allow running /usr/bin/od
  5223   - osutil,cmdutil: move CommandFromCore and make it use the snapd
  5224     snap (if available)
  5225   - daemon: also verify snap instructions for multi-snap requests
  5226   - data/selinux: allow snap-confine to mount on top of bin
  5227   - data/selinux: auto transition /var/snap to snappy_var_t
  5228   - cmd: add `snap debug validate-seed <path>` cmd
  5229   - interfaces/builtin/desktop: fonconfig v6/v7 cache handling on
  5230     Fedora
  5231   - interfaces/builtin/intel_mei: fix /dev/mei* AppArmor pattern
  5232   - tests: make snap-connections test work on boards with snaps pre-
  5233     installed
  5234   - tests: check for /snap/core16/current in core16-provided-by-core
  5235   - tests: run livepatch test on 18.04 as well
  5236   - devicestate: deal correctly with the "required" flag on Remodel
  5237   - snapstate,state: add TaskSet.AddAllWithEdges() and use in doUpdate
  5238   - snapstate: add new NoReRefresh flag and use in Remodel()
  5239   - many: allow core as a fallback for core16
  5240   - snapcraft: build static fontconfig in the snapd snap
  5241   - cmd/snap-confine: remove unused sc_open_snap_{update,discard}_ns
  5242   - data/selinux: allow snapd to execute runuser under snappy_t
  5243   - spread, tests: do not leave mislabeled files in restorecon test,
  5244     attempt to catch similar files
  5245   - interfaces: cleanup internal tool lookup in system-key
  5246   - many: move auth.AuthContext to store.DeviceAndAuthContext, the
  5247     implemention to a separate storecontext packageThis:
  5248   - overlord/devicestate: measurements around ensure and related tasks
  5249   - cmd: tweak internal tool lookup to accept more possible locations
  5250   - overlord/snapstate,snapshotstate: create snapshot on snap removal
  5251   - tests: run smoke tests on (almost) pristine systems
  5252   - tests: system disable ssh for config defaults in gadget
  5253   - cmd/debug: integrate new task timings with "snap debug timings"
  5254   - tests/upgrade/basic, packaging/fedoar: restore SELinux context of
  5255     /var/cache/fontconfig, patch pre-2.39 mount units
  5256   - image: simplify prefer local logic  and fixes
  5257   - tests/main/selinux-lxd: make sure LXD from snaps works cleanly
  5258     with enforcing SELinux
  5259   - tests: deny ioctl - TIOCSTI with garbage in high bits
  5260   - overlord: factor out mocking of device service and gadget w.
  5261     prepare-device for registration tests
  5262   - data/selinux, tests/main/selinux-clean: fine tune the policy, make
  5263     sure that no denials are raised
  5264   - cmd/libsnap,osutil: fix parsing of mountinfo
  5265   - ubuntu: disable -buildmode=pie on armhf to fix memory issue
  5266   - overlord/snapstate: inhibit refresh for up to a week
  5267   - cmd/snap-confine: prevent cwd restore permission bypass
  5268   - overlord/ifacestate: introduce HotplugKey type use short key in
  5269     change summaries
  5270   - many: make Remodel() download everything first before installing
  5271   - tests: fixes discovered debugging refresh-app-awareness
  5272   - overlord/snapstate: track time of postponed refreshes
  5273   - snap-confine: set rootfs_dir in sc_invocation struct
  5274   - tests: run create-user on core devices
  5275   - boot: add flag file "meta/force-kernel-extraction"
  5276   - tests: add regression test for systemctl race fix
  5277   - overlord/snapshotstate: helpers for snapshot expirations
  5278   - overlord,tests: perform soft refresh check in doInstall
  5279   - tests: enable tests that write /etc/{hostname,timezone} on core18
  5280   - overlord/ifacestate: implement String() method of
  5281     HotplugDeviceInfo for better logs/messages
  5282   - cmd/snap-confine: move ubuntu-core fallback checks
  5283   - testutil: fix MockCmd for shellcheck 0.5
  5284   - snap, gadget: move gadget read/validation into separate package,
  5285     tweak naming
  5286   - tests: split travis spread execution in 2 jobs for ubuntu and non
  5287     ubuntu systems
  5288   - testutil: make mocked command work with shellcheck from snaps
  5289   - packaging/fedora, tests/upgrade/basic: patch existing mount units
  5290     with SELinux context on upgrade
  5291   - metautil, snap: extract yaml value normalization to a helper
  5292     package
  5293   - tests: use apt via eatmydata
  5294   - dirs,overlord/snapstate: add Soft and Hard refresh checks
  5295   - cmd/snap-confine: allow using tools from snapd snap
  5296   - cmd,interfaces: replace local helpers with cmd.InternalToolPath
  5297   - tweak: fix "make hack" on Fedora
  5298   - snap: add validation of gadget.yaml
  5299   - cmd/snap-update-ns: refactor of profile application
  5300   - cmd/snap,client,daemon,store: layout and sanity tweaks for
  5301     find/search options
  5302   - tests: add workaround for missing cache reset on older snapd
  5303   - interfaces: deal with the snapd snap correctly for apparmor 2.13
  5304   - release-tools: add debian-package-builder
  5305   - tests: enable opensuse 15 and add force-resolution installing
  5306     packages
  5307   - timings: AddTag helper
  5308   - testutil: run mocked commands through shellcheck
  5309   - overlord/snapshotstate: support auto flag
  5310   - client, daemon, store: search by common-id
  5311   - tests: all the systems for google backend with 6 workers
  5312   - interfaces: hotplug nested vm test, updated serial-port interface
  5313     for hotplug.
  5314   - sanity: use proper SELinux context when mounting squashfs
  5315   - cmd/libsnap: neuter variables in cleanup functions
  5316   - interfaces/adb-support: account for hubs on sysfs path
  5317   - interfaces/seccomp: regenerate changed profiles only
  5318   - snap: reject layouts to /lib/{firmware,modules}
  5319   - cmd/snap-confine, packaging: support SELinux
  5320   - selinux, systemd: support mount contexts for snap images
  5321   - interfaces/builtin/opengl: allow access to Tegra X1
  5322   - cmd/snap: make 'snap warnings' output yamlish
  5323   - tests: add check to detect a broken snap on reset
  5324   - interfaces: add one-plus devices to adb-support
  5325   - cmd: prevent umask from breaking snap-run chain
  5326   - tests/lib/pkgdb: allow downgrade when installing packages in
  5327     openSUSE
  5328   - cmd/snap-confine: use fixed private tmp directory
  5329   - snap: tweak parsing errors of gadget updates
  5330   - overlord/ifacemgr: basic measurements
  5331   - spread: refresh metadata on openSUSE
  5332   - cmd/snap-confine: pass sc_invocation instead of numerous args
  5333     around
  5334   - snap/gadget: introduce volume update info
  5335   - partition,bootloader: rename 'partition' package to 'bootloader'
  5336   - interfaces/builtin: add dev/pts/ptmx access to docker_support
  5337   - tests: restore sbuild test
  5338   - strutil: make SplitUnit public, allow negative numbers
  5339   - overlord/snapstate,: retry less for auto-stuff
  5340   - interfaces/builtin: add add exec "/" to docker-support
  5341   - cmd/snap: fix regression of snap saved command
  5342   - cmd/libsnap: rename C enum for feature flag
  5343   - cmd: typedef mountinfo structures
  5344   - tests/main/remodel: clean up before reverting the state
  5345   - cmd/snap-confine: umount scratch dir using UMOUNT_NOFOLLOW
  5346   - timings: add new helpers, Measurer interface and DurationThreshold
  5347   - cmd/snap-seccomp: version-info subcommand
  5348   - errortracker: fix panic in Report if db cannot be opened
  5349   - sandbox/seccomp: a helper package wrapping calls to snap-seccomp
  5350   - many: add /v2/model API, `snap remodel` CLI and spread test
  5351   - tests: enable opensuse tumbleweed back
  5352   - overlord/snapstate, store: set a header when auto-refreshing
  5353   - data/selinux, tests: refactor SELinux policy, add minimal tests
  5354   - spread: restore SELinux context when we mess with system files
  5355   - daemon/api: filter connections with hotplug-gone=true
  5356   - daemon: support returning assertion information as JSON with the
  5357     "json" query parameter
  5358   - cmd/snap: hide 'interfaces' command, show deprecation notice
  5359   - timings: base API for recording timings in state
  5360   - cmd/snap-confine: drop unused dependency on libseccomp
  5361   - interfaces/apparmor: factor out test boilerplate
  5362   - daemon: extract assertions api endpoint implementation into
  5363     api_asserts.go
  5364   - spread.yaml: bump delta reference
  5365   - cmd/snap-confine: track per-app and per-hook processes
  5366   - cmd/snap-confine: make sc_args helpers const-correct
  5367   - daemon: move a function that was between an other struct and its
  5368     methods
  5369   - overlord/snapstate: fix restoring of "old-current" revision config
  5370     in undoLinkSnap
  5371   - cmd/snap, client, daemon, ifacestate: show a leading attribute of
  5372     a connection
  5373   - cmd/snap-confine: call sc_should_use_normal_mode once
  5374   - cmd/snap-confine: populate enter_non_classic_execution_environment
  5375   - daemon: allow downloading snaps blobs via .../file
  5376   - cmd/snap-confine: introduce sc_invocation
  5377   - devicestate: add initial Remodel support
  5378   - snap: remove obsolete license-* fields in the yaml
  5379   - cmd/libsnap: add cgroup-pids-support module
  5380   - overlord/snapstate/backend: make LinkSnap clean up more
  5381   - snapstate: only keep 2 snaps on classic
  5382   - ctlcmd/tests: tests tweaks (followup to #6322)
  5383  
  5384  * Tue Apr 23 2019 Robert-André Mauchin <zebob.m@gmail.com> - 2.38-3
  5385  - Rebuilt for fix in golang-github-seccomp-libseccomp-golang
  5386  
  5387  * Fri Apr 05 2019 Neal Gompa <ngompa13@gmail.com> - 2.38-2
  5388  - Readd snapd-login-service Provides for gnome-software for F29 and older
  5389  
  5390  * Thu Mar 21 2019 Neal Gompa <ngompa13@gmail.com> - 2.38-1
  5391  - Release 2.38 to Fedora (RH#1691296)
  5392  - Switch to officially released main source tarball
  5393  - Drop obsolete snapd-login-service Provides
  5394  
  5395  * Thu Mar 21 2019 Michael Vogt <mvo@ubuntu.com>
  5396  - New upstream release 2.38
  5397   - overlord/snapstate,: retry less for auto-stuff
  5398   - cmd/snap: fix regression of snap saved command
  5399   - interfaces/builtin: add dev/pts/ptmx access to docker_support
  5400   - overlord/snapstate, store: set a header when auto-refreshing
  5401   - interfaces/builtin: add add exec "/" to docker-support
  5402   - cmd/snap, client, daemon, ifacestate: show a leading attribute of
  5403     a connection
  5404   - interface: avahi-observe: Fixing socket permissions on 4.15
  5405     kernels
  5406   - tests: check that apt works before using it
  5407   - apparmor: support AppArmor 2.13
  5408   - snapstate: restart into the snapd snap on classic
  5409   - overlord/snapstate: during refresh, re-refresh on epoch bump
  5410   - cmd, daemon: split out the common bits of mapLocal and mapRemote
  5411   - cmd/snap-confine: chown private /tmp to root.root
  5412   - cmd/snap-confine: drop uid from random /tmp name
  5413   - overlord/hookstate: apply pending transaction changes onto
  5414     temporary configuration for snapctl get
  5415   - cmd/snap: `snap connections` command
  5416   - interfaces/greengrass_support: update accesses for GGC 1.8
  5417   - cmd/snap, daemon: make the connectivity check use GET
  5418   - interfaces/builtin,/udev: add spec support to disable udev +
  5419     device cgroup and use it for greengrass
  5420   - interfaces/intel-mei: small follow up tweaks
  5421   - ifacestate/tests: fix/improve udev mon test
  5422   - interfaces: add multipass-support interface
  5423   - tests/main/high-user-handling: fix the test for Go 1.12
  5424   - interfaces: add new intel-mei interface
  5425   - systemd: decrease the checker counter before unlocking otherwise
  5426     we can get spurious panics
  5427   - daemon/tests: fix race in the disconnect conflict test
  5428   - cmd/snap-confine: allow moving tasks to pids cgroup
  5429   - tests: enable opensuse tumbleweed on spread
  5430   - cmd/snap: fix `snap services` completion
  5431   - ifacestate/hotplug: integration with udev monitor
  5432   - packaging: build snapctl as a static binary
  5433   - packaging/opensuse: move most logic to snapd.mk
  5434   - overlord: fix ensure before slowness on Retry
  5435   - overlord/ifacestate: fix migration of connections on upgrade from
  5436     ubuntu-core
  5437   - daemon, client, cmd/snap: debug GETs ask aspects, not actions
  5438   - tests/main/desktop-portal-*: fix handling of python dependencies
  5439   - interfaces/wayland: allow wayland server snaps function on classic
  5440     too
  5441   - daemon, client, cmd/snap: snap debug base-declaration
  5442   - tests: run tests on opensuse leap 15.0 instead of 42.3
  5443   - cmd/snap: fix error messages for snapshots commands if ID is not
  5444     uint
  5445   - interfaces/seccomp: increase filter precision
  5446   - interfaces/network-manager: no peer label check for hostname1
  5447   - tests: add a tests for xdg-desktop-portal integration
  5448   - tests: not checking 'tracking channel' after refresh core on
  5449     nested execution
  5450   - tests: remove snapweb from tests
  5451   - snap, wrappers: support StartTimeout
  5452   - wrappers: Add an X-SnapInstanceName field to desktop files
  5453   - cmd/snap: produce better output for help on subcommands
  5454   - tests/main/nfs-support: use archive mode for creating fstab backup
  5455   - many: collect time each task runs and display it with `snap debug
  5456     timings <id>`
  5457   - tests: add attribution to helper script
  5458   - daemon: make ucrednetGet not loop
  5459   - squashfs: unset SOURCE_DATE_EPOCH in the TestBuildDate test
  5460   - features,cmd/libsnap: add new feature "refresh-app-awareness"
  5461   - overlord: fix random typos
  5462   - interfaces/seccomp: generate global seccomp profile
  5463   - daemon/api: fix error case for disconnect conflict
  5464   - overlord/snapstate: add some randomness to the catalog refresh
  5465   - tests: disable trusty-proposed for now
  5466   - tests: fix upgrade-from-2.15 with kernel 4.15
  5467   - interfaces/apparmor: allow sending and receiving signals from
  5468     ourselves
  5469   - tests: split the test interfaces-many in 2 and remove snaps on
  5470     restore
  5471   - tests: use snap which takes 15 seconds to install on retryable-
  5472     error test
  5473   - packaging: avoid race in snapd.postinst
  5474   - overlord/snapstate: discard mount namespace when undoing 1st link
  5475     snap
  5476   - cmd/snap-confine: allow writes to /var/lib/**
  5477   - tests: stop catalog-update test for now
  5478   - tests/main/auto-refresh-private: make sure to actually download
  5479     with the expired macaroon
  5480   - many: save media info when installing, show it when listing
  5481   - userd: handle help urls which requires prepending XDG_DATA_DIRS
  5482   - tests: fix NFS home mocking
  5483   - tests: improve snaps-system-env test
  5484   - tests: pre-cache core on core18 systems
  5485   - interfaces/hotplug: renamed RequestedSlotSpec to ProposedSlot,
  5486     removed Specification
  5487   - debian: ensure leftover usr.lib.snapd.snap-confine is gone
  5488   - image,cmd/snap,tests: introduce support for modern prepare-image
  5489     --snap <snap>[=<channel>]
  5490   - overlord/ifacestate: tweak logic for generating unique slot names
  5491   - packaging: import debian salsa packaging work, add sbuild test and
  5492     use in spead
  5493   - overlord/ifacestate: hotplug-add-slot handler
  5494   - image,cmd/snap:  simplify --classic-arch to --arch, expose
  5495     prepare-image
  5496   - tests: run test snap as user in the smoke test
  5497   - cmd/snap: tweak man output to have no doubled up .TP lines
  5498   - cmd/snap, overlord/snapstate: silently ignore classic flag when a
  5499     snap is strictly confined
  5500   - snap-confine: remove special handling of /var/lib/jenkins
  5501   - cmd/snap-confine: handle death of helper process
  5502   - packaging: disable systemd environment generator on 18.04
  5503   - snap-confine: fix classic snaps for users with /var/lib/* homedirs
  5504   - tests/prepare: prevent console-conf from running
  5505   - image: bootstrapToRootDir => setupSeed
  5506   - image,cmd/snap,tests:  introduce prepare-image --classic
  5507   - tests: update smoke/sandbox test for armhf
  5508   - client, daemon: introduce helper for querying snapd API for the
  5509     list of slot/plug connections
  5510   - cmd/snap-confine: refactor and cleanup of seccomp loading
  5511   - snapstate, snap: allow update/switch requests with risk only
  5512     channel to DTRT
  5513   - interfaces: add network-manager-observe interface
  5514   - snap-confine: increase locking timeout to 30s
  5515   - snap-confine: fix incorrect "sanity timeout 3s" message
  5516   - snap-confine: provide proper error message on sc_sanity_timeout
  5517   - snapd,state: improve error message on state reading failure
  5518   - interfaces/apparmor: deny inet/inet6 in snap-update-ns profile
  5519   - snap: fix reexec from the snapd snap for classic snaps
  5520   - snap: fix hook autodiscovery for parallel installed snaps
  5521   - overlord/snapstate: format the refresh time for the log
  5522   - cmd/snap-confine: add special case for Jenkins
  5523   - snapcraft.yaml: fix XBuildDeb PATH for go-1.10
  5524   - overlord/snapstate: validate instance names early
  5525   - overlord/ifacestate: handler for hotplug-update-slot tasks
  5526   - polkit: cast pid to uint32 to keep polkit happy for now
  5527   - snap/naming: move various name validation helpers to separate
  5528     package
  5529   - tests: iterate getting journal logs to support delay on boards on
  5530     daemon-notify test
  5531   - cmd/snap: fix typo in cmd_wait.go
  5532   - snap/channel: improve channel parsing
  5533   - daemon, polkit: pid_t is signed
  5534   - daemon: introduce /v2/connections snapd API endpoint
  5535   - cmd/snap: small refactor of cmd_info's channel handling
  5536   - overlord/snapstate: use an ad-hoc error when no results
  5537   - cmd/snap: wrap "summary" better
  5538   - tests: workaround missing go dependencies in debian-9
  5539   - daemon: try to tidy up the icon stuff a little
  5540   - interfaces: add display-control interface
  5541   - snapcraft.yaml: fix snap building in launchpad
  5542   - tests: update fedora 29 workers to speed up the whole testing time
  5543   - interfaces: add u2f-devices interface and allow reading udev
  5544     +power_supply:* in hardware-observe
  5545   - cmd/snap-update-ns: save errno from strtoul
  5546   - tests: interfaces tests normalization
  5547   - many: cleanup golang.org/x/net/context
  5548   - tests: add spread test for system dbus interface
  5549   - tests: remove -o pipefail
  5550   - interfaces: add block-devices interface
  5551   - spread: enable upgrade suite on fedora
  5552   - tests/main/searching: video section got renamed to photo-and-video
  5553   - interfaces/home: use dac_read_search instead of dac_override with
  5554     'read: all'
  5555   - snap: really run the RunSuite
  5556   - interfaces/camera: allow reading vendor/etc info from
  5557     /run/udev/data/+usb:*
  5558   - interfaces/dbus: be less strict about alternations for well-known
  5559     names
  5560   - interfaces/home: allow dac_override with 'read:
  5561     all'
  5562   - interfaces/pulseaudio: allow reading subdirectories of
  5563     /etc/pulse
  5564   - interfaces/system-observe: allow read on
  5565     /proc/locks
  5566   - run-checks: ensure we use go-1.10 if available
  5567   - tests: get test-snapd-dbus-{provider,consumer} from the beta
  5568     channel
  5569   - interfaces/apparmor: mock presence of overlayfs root
  5570   - spread: increase default kill-timeout to 30min
  5571   - tests: simplify interfaces-contacts-service test
  5572   - packaging/ubuntu: build with golang 1.10
  5573   - ifacestate/tests: extra test for hotplug-connect handler
  5574   - packaging: make sure that /var/lib/snapd/lib/glvnd is accounted
  5575     for
  5576   - overlord/snapstate/backend: call fontconfig helpers from the new
  5577     'current'
  5578   - kvm: load required kernel modules if necessary
  5579   - cmd/snap: use a fake user for 'run' tests
  5580   - tests: update systems for google sru backend
  5581   - tests: fix install-snaps test by changing the snap info regex
  5582   - interfaces: helpers for sorting plug/slot/connection refs
  5583   - tests: moving core-snap-refresh-on-core test from main to nested
  5584     suite
  5585   - tests: fix daemon-notify test checking denials considering all the
  5586     log lines
  5587   - tests: skip lp-1802591 on "official" images
  5588   - tests: fix listing tests to match "snap list --unicode=never"
  5589   - debian: fix silly typo in the spread test invocation
  5590   - interface: raw-usb: Adding ttyACM ttyACA permissions
  5591   - tests: fix enable-disable-unit-gpio test on external boards
  5592   - overlord/ifacestate: helper API to obtain the state of connections
  5593   - tests: define new "tests/smoke" suite and use that for
  5594     autopkgtests
  5595   - cmd/snap-update-ns: explicitly check for return value from
  5596     parse_arg_u
  5597   - interfaces/builtin/opengl: allow access to NVIDIA VDPAU library
  5598   - tests: auto-clean the test directory
  5599   - cmd/snap: further tweak messaging; add a test
  5600   - overlord/ifacestate: handler for hotplug-connect task
  5601   - cmd/snap-confine: join freezer only after setting up user mount
  5602   - cmd/snap-confine: don't preemptively create .mnt files
  5603   - cmd/snap-update-ns: manually implement isspace
  5604   - cmd/snap-update-ns: let the go parser know we are parsing -u
  5605   - cmd/snap-discard-ns: fix name of user fstab files
  5606   - snapshotstate: don't task.Log without the lock
  5607   - tests: exclude some more slow tests from runs in autopkgtest
  5608   - many: remove .user-fstab files from /run/snapd/ns
  5609   - cmd/libsnap: pass --from-snap-confine when calling snap-update-ns
  5610     as user
  5611   - cmd/snap-update-ns: make freezer mockable
  5612   - cmd/snap-update-ns: move XDG code to dedicated file
  5613   - osutil: add helper for loading fstab from string
  5614   - cmd/snap-update-ns: move existing code around, renaming some
  5615     functions
  5616   - overlord/configstate/configcore: support - and _ in cloud init
  5617     field names
  5618   - * cmd/snap-confine: use makedev instead of MKDEV
  5619   - tests: review/fix the autopkgtest failures in disco
  5620   - overlord: drop old v1 store api support from managers test
  5621   - tests: new test for snapshots with more than 1 user
  5622  
  5623  * Thu Feb 28 2019 Neal Gompa <ngompa13@gmail.com> - 2.37.4-2
  5624  - Fix accidentally corrupted changelog merge
  5625  
  5626  * Thu Feb 28 2019 Zygmunt Bazyli Krynicki <me@zygoon.pl> - 2.37.4-1
  5627  - Release 2.37.4 to Fedora (RH#1683795)
  5628  - Fix RPM macro in changelog (rpmlint)
  5629  - Fix non-break space in changelog (rpmlint)
  5630  
  5631  * Wed Feb 27 2019 Michael Vogt <mvo@ubuntu.com>
  5632  - New upstream release 2.37.4
  5633   - squashfs: unset SOURCE_DATE_EPOCH in the TestBuildDate test
  5634   - overlord/ifacestate: fix migration of connections on upgrade from
  5635     ubuntu-core
  5636   - tests: fix upgrade-from-2.15 with kernel 4.15
  5637   - interfaces/seccomp: increase filter precision
  5638   - tests: remove snapweb from tests
  5639  
  5640  * Tue Feb 19 2019 Zygmunt Bazyli Krynicki <me@zygoon.pl> - 2.37.3-1
  5641  - Release 2.37.3 to Fedora (RH#1678603)
  5642  
  5643  * Mon Feb 18 2019 Michael Vogt <mvo@ubuntu.com>
  5644  - New upstream release 2.37.3
  5645   - interfaces/seccomp: generate global seccomp profile
  5646   - overlord/snapstate: add some randomness to the catalog refresh
  5647   - tests: add upgrade test from 2.15.2ubuntu1 -> current snapd
  5648   - snap-confine: fix fallback to ubuntu-core
  5649   - packaging: avoid race in snapd.postinst
  5650   - overlord/snapstate: discard mount namespace when undoing 1st link
  5651     snap
  5652   - cmd/snap-confine: allow writes to /var/lib/** again
  5653   - tests: stop catalog-update/apt-hooks test until the catlog refresh
  5654     is randomized
  5655   - debian: ensure leftover usr.lib.snapd.snap-confine is gone
  5656  
  5657  * Wed Feb 06 2019 Neal Gompa <ngompa13@gmail.com> - 2.37.2-1
  5658  - Release 2.37.2 to Fedora (RH#1667460)
  5659  
  5660  * Wed Feb 06 2019 Michael Vogt <mvo@ubuntu.com>
  5661  - New upstream release 2.37.2
  5662   - cmd/snap, overlord/snapstate: silently ignore classic flag when a
  5663     snap is strictly confined
  5664   - snap-confine: remove special handling of /var/lib/jenkins
  5665   - cmd/snap-confine: handle death of helper process gracefully
  5666   - snap-confine: fix classic snaps for users with /var/lib/* homedirs
  5667     like jenkins/postgres
  5668   - packaging: disable systemd environment generator on 18.04
  5669   - tests: update smoke/sandbox test for armhf
  5670   - cmd/snap-confine: refactor and cleanup of seccomp loading
  5671   - snap-confine: increase locking timeout to 30s
  5672   - snap-confine: fix incorrect "sanity timeout 3s" message
  5673   - snap: fix hook autodiscovery for parallel installed snaps
  5674   - tests: iterate getting journal logs to support delay on boards on
  5675     daemon-notify test
  5676   - interfaces/apparmor: deny inet/inet6 in snap-update-ns profile
  5677   - interfaces: add u2f-devices interface
  5678  
  5679  * Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.36.3-2
  5680  - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
  5681  
  5682  * Tue Jan 29 2019 Michael Vogt <mvo@ubuntu.com>
  5683  - New upstream release 2.37.1
  5684   - cmd/snap-confine: add special case for Jenkins
  5685   - tests: workaround missing go dependencies in debian-9
  5686   - daemon, polkit: pid_t is signed
  5687   - interfaces: add display-control interface
  5688   - interfaces: add block-devices interface
  5689   - tests/main/searching: video section got renamed to photo-and-video
  5690   - interfaces/camera: allow reading vendor/etc info from
  5691     /run/udev/data/+usb
  5692   - interfaces/dbus: be less strict about alternations for well-known
  5693     names
  5694   - interfaces/home: allow dac_read_search with 'read: all'
  5695   - interfaces/pulseaudio: allow reading subdirectories of
  5696     /etc/pulse
  5697   - interfaces/system-observe: allow read on
  5698     /proc/locks
  5699   - tests: get test-snapd-dbus-{provider,consumer} from the beta
  5700     channel
  5701   - interfaces/apparmor: mock presence of overlayfs root
  5702   - packaging/{fedora,opensuse,ubuntu}: add /var/lib/snapd/lib/glvnd
  5703  
  5704  * Wed Jan 16 2019 Michael Vogt <mvo@ubuntu.com>
  5705  - New upstream release 2.37
  5706   - snapd: fix race in TestSanityFailGoesIntoDegradedMode test
  5707   - cmd: fix snap-device-helper to deal correctly with hooks
  5708   - tests: various fixes for external backend
  5709   - interface: raw-usb: Adding ttyACM[0-9]* as many serial devices
  5710     have device node /dev/ttyACM[0-9]
  5711   - tests: fix enable-disable-unit-gpio test on external boards
  5712   - tests: define new "tests/smoke" suite and use that for
  5713     autopkgtests
  5714   - interfaces/builtin/opengl: allow access to NVIDIA VDPAU
  5715     library
  5716   - snapshotstate: don't task.Log without the lock
  5717   - overlord/configstate/configcore: support - and _ in cloud init
  5718     field names
  5719   - cmd/snap-confine: use makedev instead of MKDEV
  5720   - tests: review/fix the autopkgtest failures in disco
  5721   - systemd: allow only a single daemon-reload at the same time
  5722   - cmd/snap: only auto-enable unicode to a tty
  5723   - cmd/snap: right-align revision and size in info's channel map
  5724   - dirs, interfaces/builtin/desktop: system fontconfig cache path is
  5725     different on Fedora
  5726   - tests: fix "No space left on device" issue on amazon-linux
  5727   - store: undo workaround for timezone-less released-at
  5728   - store, snap, cmd/snap: channels have released-at
  5729   - snap-confine: fix incorrect use "src" var in mount-support.c
  5730   - release: support probing SELinux state
  5731   - release-tools: display self-help
  5732   - interface: add new `{personal,system}-files` interface
  5733   - snap: give Epoch an Equal method
  5734   - many: remove unused interface code
  5735   - interfaces/many: use 'unsafe' with docker-support change_profile
  5736     rules
  5737   - run-checks: stop running HEAD of staticcheck
  5738   - release: use sync.Once around lazy intialized state
  5739   - overlord/ifacestate: include interface name in the hotplug-
  5740     disconnect task summary
  5741   - spread: show free space in debug output
  5742   - cmd/snap: attempt to restore SELinux context of snap user
  5743     directories
  5744   - image: do not write empty etc/cloud
  5745   - tests: skip snapd snap on reset for core systems
  5746   - cmd/snap-discard-ns: fix umount(2) typo
  5747   - overlord/ifacestate: hotplug-remove-slot task handler
  5748   - overlord/ifacestate: handler for hotplug-disconnect task
  5749   - ifacestate/hotplug: updateDevice helper
  5750   - tests: reset snapd state on tests restore
  5751   - interfaces: return security setup errors
  5752   - overlord: make InstallMany work like UpdateMany, issuing a single
  5753     request to get candidates
  5754   - systemd/systemd.go: add missing tests for systemd.IsActive
  5755   - overlord/ifacestate: addHotplugSeqWaitTask helper
  5756   - cmd/snap-confine: refactor call to snap-update-ns --user-mounts
  5757   - tests: new backend used to run upgrade test suite
  5758   - travis: short circuit failures in static and unit tests travis job
  5759   - cmd: automatically fix localized <option>s to <option>
  5760   - overlord/configstate,features: expose features to snapd tools
  5761   - selinux: package to query SELinux status and verify/restore file
  5762     contexts
  5763   - wrappers: use new systemd.IsActive in core18 early boot
  5764   - cmd: add tests for lintArg and lintDesc
  5765   - httputil: retry on temporary net errors
  5766   - cmd/snap-confine: remove unused sc_discard_preserved_mount_ns
  5767   - wrappers: only restart service in core18 when they are active
  5768   - overlord/ifacestate: helpers for serializing hotplug changes
  5769   - packaging/{fedora,opensuse}: own /var/lib/snapd/cookie
  5770   - systemd: start snapd.autoimport.service in --no-block mode
  5771   - data/selinux: fix syntax error in definition of snappy_admin
  5772     interface
  5773   - snap/info: bind global plugs/slots to implicit hooks
  5774   - cmd/snap-confine: remove SC_NS_MNT_FILE
  5775   - spread: record each tests/upgrade job
  5776   - osutil: do not import dirs
  5777   - cmd/snap-confine: fix typo "a pipe"
  5778   - tests: make security-device-cgroups-{devmode,jailmode} work on arm
  5779     devices
  5780   - tests: force test-snapd-daemon-notify exit 0 when the interface is
  5781     not connected
  5782   - overlord/snapstate: run 'remove' hook before 'auto-disconnect'
  5783   - centos: enable SELinux support on CentOS 7
  5784   - apparmor: allow hard link to snap-specific semaphore files
  5785   - tests/lib/pkgdb: disable weak deps on Fedora
  5786   - release: detect too old apparmor_parser
  5787   - tests: improve how the log is checked to see if the system is
  5788     waiting for a reboot
  5789   - cmd, dirs, interfaces/apparmor: update distro identification to
  5790     support ID="archlinux"
  5791   - spread, tests: add Fedora 29
  5792   - cmd/snap-confine: refactor calling snapd tools into helper module
  5793   - apparmor: allow snap-update-ns access to common devices
  5794   - cmd/snap-confine: capture initialized per-user mount ns
  5795   - tests: reduce verbosity around package installation
  5796   - data: set KillMode=process for snapd
  5797   - cmd/snap: handle DNS error gracefully
  5798   - spread, tests: use checkpoints when dumping audit log
  5799   - tests/lib/prepare: make sure that SELinux context of repacked core
  5800     snap is controlled
  5801   - testutils: split checkers, tweak tests
  5802   - tests: fix for tests test-*-cgroup
  5803   - spread: show AVC audits when debugging, start auditd on Fedora
  5804   - spread: drop Fedora 27, add Fedora 29
  5805   - tests/lib/reset: restore context of removed snapd directories
  5806   - testutil: add File{Present,Absent} checkers
  5807   - snap: add new `snap run --trace-exec`
  5808   - tests: fix for failover test on how logs are checked
  5809   - snapctl: add "services"
  5810   - overlord/snapstate: use file timestamp to initialize timer
  5811   - cmd/libsnap: introduce and use sc_strdup
  5812   - interfaces: let NM access ifindex/ifupdown files
  5813   - overlord/snapstate: on refresh, check new rev can read current
  5814   - client, store: don't use store from client (use client from store)
  5815   - tests/main/parallel-install-store: verify installation of more
  5816     than one instance at a time
  5817   - overlord: don't write system key if security setup fails
  5818   - packaging/fedora/snapd.spec: fix bogus date in changelog
  5819   - snapstate: update fontconfig caches on install
  5820   - interfaces/apparmor/backend.go:411:38: regular expression does not
  5821     contain any meta characters (SA6004)
  5822   - asserts/header_checks.go:199:35: regular expression does not
  5823     contain any meta characters (SA6004)
  5824   - run staticcheck every time :-)
  5825   - tests/lib/systemd-escape/main.go:46:14: printf-style function with
  5826     dynamic first argument and no further arguments should use print-
  5827     style function instead (SA1006)
  5828   - tests/lib/fakestore/cmd/fakestore/cmd_run.go:66:15: the channel
  5829     used with signal.Notify should be buffered (SA1017)
  5830   - tests/lib/fakedevicesvc/main.go:55:15: the channel used with
  5831     signal.Notify should be buffered (SA1017)
  5832   - spdx/parser.go:30:1: only the first constant has an explicit type
  5833     (SA9004)
  5834   - overlord/snapstate/snapmgr.go:553:21: printf-style function with
  5835     dynamic first argument and no further arguments should use print-
  5836     style function instead (SA1006)
  5837   - overlord/patch/patch3.go:44:70: printf-style function with dynamic
  5838     first argument and no further arguments should use print-style
  5839     function instead (SA1006)
  5840   - cmd/snap/cmd_advise.go:200:2: empty branch (SA9003)
  5841   - osutil/udev/netlink/conn.go:120:5: ineffective break statement.
  5842     Did you mean to break out of the outer loop? (SA4011)
  5843   - daemon/api.go:992:22: printf-style function with dynamic first
  5844     argument and no further arguments should use print-style function
  5845     instead (SA1006)
  5846   - cmd/snapd/main.go:94:5: ineffective break statement. Did you mean
  5847     to break out of the outer loop? (SA4011)
  5848   - cmd/snap/cmd_userd.go:73:15: the channel used with signal.Notify
  5849     should be buffered (SA1017)
  5850   - cmd/snap/cmd_help.go:102:7: io.Writer.Write must not modify the
  5851     provided buffer, not even temporarily (SA1023)
  5852   - release: probe apparmor features lazily
  5853   - overlord,daemon: mock security backends for testing
  5854   - cmd/libsnap: move apparmor-support to libsnap
  5855   - cmd: drop cruft from snap-discard-ns build rules
  5856   - cmd/snap-confine: use snap-discard-ns ns to discard stale
  5857     namespaces
  5858   - cmd/snap-confine: handle mounted shared /run/snapd/ns
  5859   - many: fix composite literals with unkeyed fields
  5860   - dirs, wrappers, overlord/snapstate: make completion + bases work
  5861   - tests: revert "tests: restore in restore, not prepare"
  5862   - many: validate title
  5863   - snap: make description maximum in runes, not bytes
  5864   - tests: discard mount namespaces in reset.sh
  5865   - tests/lib: sync cla check back from snapcraft
  5866   - Revert "cmd/snap, tests/main/snap-info: highlight the current
  5867     channel"
  5868   - daemon: remove enableInternalInterfaceActions
  5869   - mkversion: use "test -n" rather than "! test -z"
  5870   - run-checks: assorted fixes
  5871   - tests: restore in restore, not in prepare
  5872   - cmd/snap: fix missing newline in "snap keys" error message
  5873   - snap: epoch lists must contain no duplicate entries
  5874   - interfaces/avahi_observe: Fix typo in comment
  5875   - tests: add SPREAD_JOB to the description of
  5876     systemd_create_and_start_unit
  5877   - daemon, vendor: bump github.com/coreos/go-systemd/activation,
  5878     handle API changes
  5879   - Revert "cmd/snap-confine: don't allow mapping lib{uuid,blkid}"
  5880   - packaging/fedora: use %%_sysctldir macro
  5881   - cmd/snap-confine: remove unneeded unshare
  5882   - sanity: extend the kernel version check to cover CentOS/RHEL
  5883     kernels
  5884   - wrappers: remove all desktop files from a snap on removal
  5885   - snap: add an explicit check for `epoch: null` loading
  5886   - snap: check max description length in validate
  5887   - spread, tests: add CentOS support
  5888   - cmd/snap-confine: allow mapping more libc shards
  5889   - cmd/snap-discard-ns: add support for --from-snap-confine
  5890   - tests: make tinyproxy support systemd notify
  5891   - tests: fix shellcheck
  5892   - snap, store: rename `snap.Epoch`'s `Unset` to `IsZero`
  5893   - store: add a test for a non-zero epoch refresh (with epoch bump)
  5894   - store: v1 search doesn't send epoch, stop pretending it does
  5895   - snap: make any "0" epoch be Unset, and marshalled to {[0],[0]}
  5896   - overlord/snapstate: amend test should send local revision
  5897   - tests: use mock-gpio.py in enable-disable-units-gpio test
  5898   - snap: enforce minimal snap name len of 2
  5899   - cmd/libsnap: add sc_verify_snap_lock
  5900   - cmd/snap-update-ns: extra debugging of trespassing events
  5901   - userd: force zenity width if the text displayed is long
  5902   - overlord/snapstate, store: always send epochs
  5903   - cmd/snap-confine,snap-update-ns: discard quirks
  5904   - cmd/snap: add nanosleep to blacklisted syscalls when running with
  5905     --strace
  5906   - cmd/snap-update-ns, tests: clean trespassing paths
  5907   - nvidia, interfaces/builtin: OpenCL fixes
  5908   - ifacestate/hotplug: removeDevice helper
  5909   - cmd: install snap-discard-ns in "make hack"
  5910   - overlord/ifacestate: setup security backends phased by backends
  5911     first
  5912   - ifacestate/helpers: added SystemSnapName mapper helper method
  5913   - overlord/ifacestate: set hotplug-key of the connection when
  5914     connecting hotplug slots
  5915   - snapd: allow snap-update-ns to read /proc/version
  5916   - cmd: handle tumbleweed and leap in autogen.sh
  5917   - interfaces/tests: MockHotplugSlot test helper
  5918   - store,daemon: make UserInfo,LoginUser part of the store interface
  5919   - overlord/ifacestate: use remapper when checking if system snap is
  5920     installed
  5921   - tests: fix how pinentry is prepared for new gpg v 2.1 and 2.2
  5922   - packaging/arch: fix bash completions path
  5923   - interfaces/builtin: add device-buttons interface for accessing
  5924     events
  5925   - tests, fakestore: extend refresh tests with parallel installed
  5926     snaps
  5927   - snap, store, overlord/snapshotstate: drop epoch pointers
  5928   - snap: make Epoch default to {[0],[0]} on load from yaml
  5929   - data/completion: pass documented arguments to completion functions
  5930   - tests: skip opensuse from interfaces-openvswitch-support test
  5931   - tests: simple reproducer for snap try and hooks bug
  5932   - snapstate: do not allow classic mode for strict snaps
  5933   - snap: make Epoch's MarshalJSON not simplify
  5934   - store: remove unused currentSnap and currentSnapJSON
  5935   - many: some small doc comment fixes in recent hotplug code
  5936   - ifacestate/udevmonitor: added callback to signal end of
  5937     enumeration
  5938   - cmd/libsnap: add simplified feature flag checker
  5939   - interfaces/opengl: add additional accesses for cuda
  5940   - tests: add core18 only hooks test and fix running core18 only on
  5941     classic
  5942   - sanity, release, cmd/snap: refuse to try to do things on WSL.
  5943   - cmd: make coreSupportsReExec faster
  5944   - overlord/ifacestate: don't remove the dash when generating unique
  5945     slot name
  5946   - cmd/snap-seccomp: add full complement of ptrace constants
  5947   - cmd: update autogen.sh for opensuse
  5948   - interfaces/apparmor: allow access to /run/snap.$SNAP_INSTANCE_NAME
  5949   - spread.yaml: add more systems to the autopkgtest and qemu backends
  5950   - daemon: spool sideloaded snap into blob dir
  5951     overlord/snapstate: address review feedback
  5952   - packaging/opensuse: stop using golang-packaging
  5953   - overlord/snapshots: survive an unknown user
  5954   - wrappers: fix generating of service units with multiple `before`
  5955     dependencies
  5956   - data: run snapd.autoimport.service only after seeding
  5957   - cmd/snap: unhide --name parameter to snap install, tweak help
  5958     message
  5959   - packaging/fedora: Merge changes from Fedora Dist-Git
  5960   - tests/main/snap-service-after-before-install: verify after/before
  5961     in snap install
  5962   - overlord/ifacestate: mark connections disconnected by hotplug with
  5963     hotplug-gone
  5964   - ifacestate/ifacemgr: don't reload hotplug-gone connections on
  5965     startup
  5966   - tests: install dependencies during prepare
  5967   - tests,store,daemon: ensure proxy settings are honored in
  5968     auth/userinfo too
  5969   - tests: core 18 does not support classic confinement
  5970   - tests: add debug output for degraded test
  5971   - strutil: make VersionCompare faster
  5972   - overlord/snapshotstate/backend: survive missing directories
  5973   - overlord/ifacestate: use map[string]*connState when passing conns
  5974     around
  5975   - tests: move fedora 28 to manual
  5976   - overlord/snapshotstate/backend: be more verbose when
  5977     SNAPPY_TESTING=1
  5978   - tests: removing fedora 26 system from spread.yaml
  5979   - tests: linode execution is not needed anymore
  5980   - tests/lib: adjust to changed systemctl behaviour on debian-9
  5981   - tests: fixes and new backend for tests on nested suite
  5982   - strutil: let MatchCounter work with a nil regexp
  5983   - ifacestate/helpers: findConnsForHotplugKey helper
  5984   - many: move regexp.(Must)Compile out of non-init functions into
  5985     variables
  5986   - store: also make snaps downloaded via deltas 0600
  5987   - snap: use Lstat to determine snap size, remove
  5988     ReadSnapInfoExceptSize
  5989   - interfaces/builtin: add adb-support interface
  5990   - tests: fail if install_snap_local fails
  5991   - strutil: add extra test to CommaSeparatedList as suggested by
  5992     mborzecki
  5993   - cmd/snap, daemon, strutil: use CommaSeparatedList to split a CSL
  5994   - ifacestate: optimize disconnect hooks
  5995   - cmd/snap-update-ns: parse the -u <uid> command line option
  5996   - cmd/snap, tests: snapshots for all
  5997   - client, cmd/daemon: allow disabling keepalive, improve degraded
  5998     mode unit tests
  5999   - snap: only show "next" refresh time if its after the hold time
  6000   - overlord/snapstate: run tests for classic snaps even on systems
  6001     that don't support classic
  6002   - overlord/standby: fix a race between standby goroutine and stop
  6003   - cmd/snap-exec: don't fail on some try mode snaps
  6004   - cmd/snap, userd, testutil: tweak DBus tests to use private session
  6005     bus connection
  6006   - cmd: remove remnants of sc_should_populate_mount_ns
  6007   - client, daemon, cmd/snap: indicate that services are socket/timer
  6008     activated
  6009   - cmd/snap-seccomp: only look for PTRACE_GETFPX?REGS where available
  6010   - cmd/snap-confine: remove SC_NS_FAIL_GRACEFULLY
  6011   - snap/pack, cmd/snap: allow specifying the filename of 'snap pack'
  6012   - cmd/snap-discard-ns: add support for per-user mount namespaces
  6013   - cmd/snap-confine: remove stale mount profile along stale namespace
  6014   - data/apt: close stderr when calling snap in the apt install hook.
  6015   - tests/main: fixes for the new shellcheck
  6016   - testutil, cmd/snap: introduce and use testutil.EqualsWrapped and
  6017     fly
  6018   - tests: initial setup for testing current branch on nested vm and
  6019     hotplug management
  6020   - cmd: refactor IPC and lifecycle of the helper process
  6021   - tests/main/parallel-install-store: the store has caught up, do not
  6022     expect failures
  6023   - overlord/snapstate, snap, wrappers: start services in the right
  6024     order during install
  6025   - interfaces/browser-support, cmd/snap-seccomp: Allow read-only
  6026     ptrace, for the Breakpad crash reporter
  6027   - snap,client: use a different exit code for retryable errors
  6028   - overlord/ifacestate: don't conflict on own discard-snap tasks when
  6029     refreshing & doing garbage collection
  6030   - cmd/snap: tweak `snap services` output when there is no services
  6031   - interfaces/many: updates to support k8s worker nodes
  6032   - cmd/snap: gnome-software install via snap:// handler
  6033   - overlord/many: cleanup use of snapName vs. instanceName
  6034   - snapstate: add command-chain to supported featureset
  6035   - daemon, snap: mark screenshots as deprecated
  6036   - interfaces: fix decoding of json numbers for static/dynamic
  6037     attributes* ifstate: fix decoding of json numbers
  6038   - cmd/snap: try not to panic on error from "snap try"
  6039   - tests: new cosmic image for spread tests on gce
  6040   - interfaces/system-key: add parser mtime and only discover features
  6041     on write
  6042   - overlord/snapshotstate/backend: detect path to tar in unit tests
  6043   - tests/unit/gccgo: drop gccgo unit tests
  6044   - cmd: use relative file names in locking APIs
  6045   - interfaces: fix NormalizeInterfaceAttributes, add tests
  6046   - overlord/snapshotstate/backend: fall back on sudo when no runuser
  6047   - cmd/snap-confine: reduce verbosity of debug and error messages
  6048   - systemd: extend Status() to work for socket and timer units
  6049   - interfaces: typo 'allows' for consistency with other ifaces
  6050   - systemd,wrappers: don't start disabled services
  6051   - ifacestate: simplify task chaining in ifacestate.Connect
  6052   - tests: ensure that goa-daemon is off
  6053   - snap/pack, snap/squashfs: remove extra copy before mksquashfs
  6054   - cmd/snap: block 'snap help <cmd> --all'
  6055   - asserts, image: ensure kernel, gadget, base and required-snaps use
  6056     valid snap names
  6057   - apparmor: add unit test for probeAppArmorParser and simplify code
  6058   - interfaces/apparmor: conditionally add explicit deny rules for
  6059     ptrace
  6060   - po: sync translations from launchpad
  6061   - osutil: tweak handling of error adduser errors
  6062   - cmd: rename ns_group to mount_ns
  6063   - tests/main/interfaces-accounts-service: more debugging
  6064   - snap/pack, snap/squashfs: use type to determine mksquashfs args
  6065   - data/systemd, wrappers: tweak system-shutdown helper for core18
  6066   - tests: show list of processes when ifaces-accounts-service fails
  6067   - tests: do not run degraded test in autopkgtest env
  6068   - snap: overhaul validation error messages
  6069   - ifacestate/hooks: only create interface hook tasks if hooks exist
  6070   - osutil: workaround overlayfs on ubuntu 18.10
  6071   - interfaces/home: don't allow snaps to write to $HOME/bin
  6072   - interfaces: improve Attr error further
  6073   - snapstate: tweak GetFeatureFlagBool() to have a default argument
  6074   - many: cleanup remaining parallel installs TODOs
  6075   - image: improve validation of extra snaps
  6076  
  6077  * Tue Dec 18 2018 Neal Gompa <ngompa13@gmail.com> - 2.36.3-1
  6078  - Release 2.36.3 to Fedora
  6079  - Remove merged patch
  6080  
  6081  * Fri Dec 14 2018 Michael Vogt <mvo@ubuntu.com>
  6082  - New upstream release 2.36.3
  6083   - wrappers: use new systemd.IsActive in core18 early boot
  6084   - httputil: retry on temporary net errors
  6085   - wrappers: only restart service in core18 when they are active
  6086   - systemd: start snapd.autoimport.service in --no-block mode
  6087   - data/selinux: fix syntax error in definition of snappy_admin
  6088     interfacewhen installing selinux-policy-devel package.
  6089   - centos: enable SELinux support on CentOS 7
  6090   - cmd, dirs, interfaces/apparmor: update distro identification to
  6091     support ID="archlinux"
  6092   - apparmor: allow hard link to snap-specific semaphore files
  6093   - overlord,apparmor: new syskey behaviour + non-ignored snap-confine
  6094     profile errors
  6095   - snap: add new `snap run --trace-exec` call
  6096   - interfaces/backends: detect too old apparmor_parser
  6097  
  6098  * Thu Nov 29 2018 Michael Vogt <mvo@ubuntu.com>
  6099  - New upstream release 2.36.2
  6100   - daemon, vendor: bump github.com/coreos/go-systemd/activation,
  6101     handle API changes
  6102   - snapstate: update fontconfig caches on install
  6103   - overlord,daemon: mock security backends for testing
  6104   - sanity, spread, tests: add CentOS
  6105   - Revert "cmd/snap, tests/main/snap-info: highlight the current
  6106     channel"
  6107   - cmd/snap: add nanosleep to blacklisted syscalls when running with
  6108     --strace
  6109   - tests: add regression test for LP: #1803535
  6110   - snap-update-ns: fix trailing slash bug on trespassing error
  6111   - interfaces/builtin/opengl: allow reading /etc/OpenCL/vendors
  6112   - cmd/snap-confine: nvidia: pick up libnvidia-opencl.so
  6113   - interfaces/opengl: add additional accesses for cuda
  6114  
  6115  * Wed Nov 21 2018 Neal Gompa <ngompa13@gmail.com> - 2.36-4
  6116  - Fix backport patch
  6117  
  6118  * Wed Nov 21 2018 Neal Gompa <ngompa13@gmail.com> - 2.36-3
  6119  - Backport fixes for EL7 support
  6120  
  6121  * Wed Nov 14 2018 Neal Gompa <ngompa13@gmail.com> - 2.36-2
  6122  - Fix runtime dependency for selinux subpackage for EL7
  6123  
  6124  * Fri Nov 09 2018 Michael Vogt <mvo@ubuntu.com>
  6125  - New upstream release 2.36.1
  6126   - tests,snap-confine: add core18 only hooks test and fix running
  6127     core18 only hooks on classic
  6128   - interfaces/apparmor: allow access to
  6129     /run/snap.$SNAP_INSTANCE_NAME
  6130   - spread.yaml: add more systems to the autopkgtest and qemu backends
  6131   - daemon: spool sideloaded snap into blob dir
  6132   - wrappers: fix generating of service units with multiple `before`
  6133     dependencies
  6134   - data: run snapd.autoimport.service only after seeding
  6135   - tests,store,daemon: ensure proxy settings are honored in
  6136     auth/userinfo too
  6137   - packaging/fedora: Merge changes from Fedora Dist-Git
  6138   - tests/lib: adjust to changed systemctl behaviour on debian-9
  6139   - tests/main/interfces-accounts-service: switch to busctl, more
  6140     debugging
  6141   - store: also make snaps downloaded via deltas 0600
  6142   - cmd/snap-exec: don't fail on some try mode snaps
  6143   - cmd/snap, userd, testutil: tweak DBus tests to use private session
  6144     bus connection
  6145   - tests/main: fixes for the new shellcheck
  6146   - cmd/snap-confine: remove stale mount profile along stale namespace
  6147   - data/apt: close stderr when calling snap in the apt install hook
  6148  
  6149  * Sun Nov 04 2018 Neal Gompa <ngompa13@gmail.com> - 2.36-1
  6150  - Release 2.36 to Fedora
  6151  
  6152  * Wed Oct 24 2018 Michael Vogt <mvo@ubuntu.com>
  6153  - New upstream release 2.36
  6154   - overlord/snapstate, snap, wrappers: start services in the right
  6155     order during install
  6156   - tests: the store has caught up, drop gccgo test, update cosmic
  6157     image
  6158   - cmd/snap: try not to panic on error from "snap try"`--devmode`
  6159   - overlord/ifacestate: don't conflict on own discard-snap tasks when
  6160     refreshing & doing garbage collection
  6161   - snapstate: add command-chain to supported featureset
  6162   - daemon, snap: mark screenshots as deprecated
  6163   - interfaces: fix decoding of json numbers for static/dynamic
  6164     attributes
  6165   - data/systemd, wrappers: tweak system-shutdown helper for core18
  6166   - interfaces/system-key: add parser mtime and only discover features
  6167     on write
  6168   - interfaces: fix NormalizeInterfaceAttributes, add tests
  6169   - systemd,wrappers: don't start disabled services
  6170   - ifacestate/hooks: only create interface hook tasks if hooks exist
  6171   - tests: do not run degraded test in autopkgtest env
  6172   - osutil: workaround overlayfs on ubuntu 18.10
  6173   - interfaces: include invalid type in Attr error
  6174   - many: enable layouts by default
  6175   - interfaces/default: don't scrub with change_profile with classic
  6176   - cmd/snap: speed up unit tests
  6177   - vendor, cmd/snap: refactor to accommodate the new less buggy go-
  6178     flags
  6179   - daemon: expose snapshots to the API
  6180   - interfaces: updates for default, screen-inhibit-control, tpm,
  6181     {hardware,system,network}-observe
  6182   - interfaces/hotplug: rename HotplugDeviceKey method to HotplugKey,
  6183     update test interface
  6184   - interfaces/tests: use TestInterface instead of a custom local
  6185     helper
  6186   - overlord/snapstate: export getFeatureFlagBool.
  6187   - osutil,asserts,daemon: support force password change in system-
  6188     user assertion
  6189   - snap, wrappers: support restart-delay, generate RestartSec=<value>
  6190     in service units
  6191   - tests/ifacestate: moved asserts-related mocking into helper
  6192   - image: fetch device store assertion if available
  6193   - many: enable AppArmor on Arch
  6194   - interfaces/repo: two helper methods for hotplug
  6195   - overlord/ifacestate: add hotplug slots with implicit slots
  6196   - interfaces/hotplug: helpers and struct updates
  6197   - tests: run the snapd tests on Ubuntu 18.10
  6198   - snapstate: only report errors if there is an actual error
  6199   - store: speedup unit tests
  6200   - spread-shellcheck: fix interleaved error messages, tweaks
  6201   - apparmor: create SnapAppArmorDir in setupSnapConfineReexec
  6202   - ifacestate: implementation of defaultDeviceKey function for
  6203     hotplug
  6204   - cmd/snap-update-ns: remove empty placeholders used for mounting
  6205   - snapshotstate: restore to current revision
  6206   - tests/lib: rework the CLA checker
  6207   - many: support and consider store friendly-stores when checking
  6208     device scope constraints
  6209   - overlord/snapstate: block parallel installs of snapd, core, base,
  6210     kernel, gadget snaps
  6211   - overlord/patch: patch for static plug/slot attributes
  6212   - interfaces: honor static attributes when reloading conns
  6213   - osutils: unit tests speedup; introduce «run-checks --short-
  6214     unit».
  6215   - systemd, wrappers: speed up wrappers unit tests
  6216   - client: speedup unit tests
  6217   - spread-shellcheck: use threads to parallelise
  6218   - snap: validate plug and slot names
  6219   - osutil, interfaces/apparmor: add and use of osutil.UnlinkMany
  6220   - wrappers: do not depend on network.taget in socket units, tweak
  6221     generated units
  6222   - interfaces/apparmor: (un)load profiles in one apparmor_parser call
  6223   - store: gracefully handle unexpected errors in 'action'
  6224     response
  6225   - cmd: put our manpages in section 8
  6226   - overlord: don't make become-operational interfere with user
  6227     requests
  6228   - store: tweak unmatched refresh result error log
  6229   - snap, client, daemon, store: use and expose "media" more
  6230   - tests,cmd/snap-update-ns: add test showing mount update bug
  6231     cmd/snap-update-ns: better detection of snapd-made tmpfs
  6232   - tests: spread tests for aliases with parallel installed snaps
  6233   - interfaces/seccomp: allow using statx by default
  6234   - store: gracefully handle unexpected errors in 'action' response
  6235   - overlord/snapshotstate: chown the tempdir
  6236   - cmd/snap: attempt to start the document portal if running with a
  6237     session bus
  6238   - snap: detect layouts vs layout in snap.yaml
  6239   - interfaces/apparmor: handle overlayfs snippet for snap-update-ns
  6240   - snapcraft.yaml: set grade to stable
  6241   - tests: shellchecks, final round
  6242   - interfaces/apparmor: handle overlayfs snippet for snap-update-ns
  6243   - snap: detect layouts vs layout in snap.yaml
  6244   - overlord/snapshotstate: store epoch in snapshot, check on restore
  6245   - cmd/snap: tweak UX of snap refresh --list
  6246   - overlord/snapstate: improve consistency, use validateInfoAndFlags
  6247     also in InstallPath
  6248   - snap: give Epoch a CanRead helper
  6249   - overlord/snapshotstate: small refactor of internal helpers
  6250   - interfaces/builtin: adding missing permission to create
  6251     /run/wpa_supplicant directory
  6252   - interfaces/builtin: avahi interface update
  6253   - client, daemon: support passing of 'unaliased' option when
  6254     installing from local files
  6255   - selftest: rename selftest.Run() to sanity.Check()
  6256   - interfaces/apparmor: report apparmor support level and policy
  6257   - ifacestate: helpers for generating slot names for hotplug
  6258   - overlord/ifacestate: make sure to pass in the Model assertion when
  6259     enforcing policies
  6260   - overlord/snapshotstate: store the SnapID in snapshot, block
  6261     restore if changed
  6262   - interfaces: generalize writable mimic profile
  6263   - asserts,interfaces/policy: add support for on-store/on-brand/on-
  6264     model plug/slot rule constraints
  6265   - many: fetch the device store assertion together and in the context
  6266     of interpreting snap-declarations
  6267   - tests: disable gccgo tests on 18.04 for now, until dh-golang vs
  6268     gccgo is fixed
  6269   - tests/main/parallel-install-services: add spread test for snaps
  6270     with services
  6271   - tests/main/snap-env: extend to cover parallel installations of
  6272     snaps
  6273   - tests/main/parallel-install-local: rename from *-sideload, extend
  6274     to run snaps
  6275   - cmd/snapd,daemon,overlord: without snaps, stop and wait for socket
  6276   - cmd/snap: tame the help zoo
  6277   - tests/main/parallel-install-store: run installed snap
  6278   - cmd/snap: add a bunch of TRANSLATORS notes (and a little more
  6279     i18n)
  6280   - cmd: fix C formatting
  6281   - tests: remove unneeded cleanup from layout tests
  6282   - image: warn on missing default-providers
  6283   - selftest: add test to ensure selftest.checks is up-to-date
  6284   - interfaces/apparmor, interfaces/builtin: tweaks for parallel snap
  6285     installs
  6286   - userd: extend the list of supported XDG Desktop properties when
  6287     autostarting user applications
  6288   - cmd/snap-update-ns: enforce trespassing checks
  6289   - selftest: actually run the kernel version selftest
  6290   - snapd: go into degraded mode when the selftest fails
  6291   - tests: add test that runs snapctl with a core18 snap
  6292   - tests: add snap install hook with base: core18
  6293   - overlord/{snapstate,assertstate}: parallel instances and
  6294     refresh validation
  6295   - interfaces/docker-support: add rules to read apparmor macros
  6296   - tests: make nfs test available for more systems
  6297   - tests: cleanup copy/paste dup in interfaces-network-setup-control
  6298   - tests: using single sh snap in interface tests
  6299   - overlord/snapstate: improve cleaup in mount-snap handler
  6300   - tests: don't fail interfaces-bluez test if bluez is already
  6301     installed
  6302   - tests: find snaps just for edge and beta channels
  6303   - daemon, snapstate: consistent snap list [--all] output with broken
  6304     snaps
  6305   - tests: fix listing to allow extra things in the notes column
  6306   - cmd/snap: improve UX when removing specific snap revision
  6307   - cmd/snap, tests/main/snap-info: highlight the current channel
  6308   - interfaces/testiface: added TestHotplugInterface
  6309   - snap: tweak commands
  6310   - interfaces/hotplug: hotplug spec takes one slot definition
  6311   - overlord/snapstate, snap: handle shared snap directories when
  6312     installing/remove snaps with instance key
  6313   - interfaces/opengl: misc accesses for VA-API
  6314   - client, cmd/snap: expose warnings to the world
  6315   - cmd/snap-update-ns: introduce trespassing state tracking
  6316   - cmd/snap: commands no longer build their own client
  6317   - tests: try to build cmd/snap for darwin
  6318   - daemon: make error responders not printf when called with 1
  6319     argument
  6320   - many: return real snap name in API response
  6321   - overlord/state: return latest LastAdded time in WarningsSummary
  6322   - many: mount namespace mapping for parallel installs of snaps
  6323   - ifacestate/autoconnect: do not self-conflict on setup-profiles if
  6324     core-phase-2
  6325   - client, cmd/snap: on !linux, exit when the client tries to Do
  6326     something
  6327   - tests: refactor for nested suite and tests fixed
  6328   - tests: use lxd's waitready instead of polling lxd socket
  6329   - ifacestate: don't initialize udev monitor until we have a system
  6330     snap
  6331   - interfaces: extra argument for static attrs in
  6332     NewConnectedPlug/NewConnectedSlot
  6333   - packaging/arch: sync packaging with AUR
  6334   - snapstate/tests: serialize all appends in fake backend
  6335   - snap-confine: make /lib/modules optional
  6336   - cmd/snap: handle "snap interfaces core" better
  6337   - store: move download tests into downloadSuite
  6338   - tests,interfaces: run interfaces-account-control on UC18
  6339   - tests: fix install snaps test by adding link to /snap
  6340   - tests: fix for nested test suite
  6341   - daemon: fix snap list --all with parallel snap instances
  6342   - snapstate: refactor tests to use SetModel*
  6343   - wrappers: fix snap services order in tests
  6344   - many: provide salt for generating instance-key in store requests
  6345   - ifacestate: fix hang when retrying content providers
  6346   - snapd-env-generator: fix when PATH is empty or unset
  6347   - overlord/assertstate: propagate TaskSnapSetup error
  6348   - client: catch and expose logs errors
  6349   - overlord: integrate device enumeration with udev monitor
  6350   - daemon, overlord/state: warnings pipeline
  6351   - tests: add publisher regex to fix the snap-info test pass on sru
  6352   - cmd: use systemdsystemgeneratorsdir, cleanup automake complaints,
  6353     tweaks
  6354   - cmd/snap-update-ns: remove the unused Secure type
  6355   - osutil, o/snapshotstate, o/sss/backend: quick fixes
  6356   - tests: update the listing expression to support core from
  6357     different channels
  6358   - store: use stable instance key in store refresh requests
  6359   - cmd/snap-update-ns: detach Mk{Prefix,{File,Dir,Symlink{,All}}}
  6360   - overlord/patch: support for sublevel patches
  6361   - tests: update prepare/restore for nightly suite
  6362   - cmd/snap-update-ns: detach BindMount from the Secure type
  6363   - cmd/snap-update-ns: re-factor pair of helpers to call fstatfs once
  6364   - ifacestate: retry on "discard-snap" in autoconnect conflict check
  6365   - cmd/snap-update-ns: separate OpenPath from the Secure struct
  6366   - wrappers: remove Wants=network-online.target
  6367   - tests: add new core16-base test
  6368   - store: refactor tests so that they work as store_test package
  6369   - many: add refresh.rate-limit core option
  6370   - tests: run account-control test with different bases
  6371   - tests: port proxy test to use python tinyproxy
  6372   - overlord: introduce snapshotstate.
  6373   - testutil: allow Fstatfs results to vary over time
  6374   - snap-update-ns: add comments about the "deadcode" in bootstrap.go
  6375   - overlord: add chg.Err() in testUpdateWithAutoconnectRetry
  6376   - many: remove deadcode
  6377   - tests: also run unit/gccgo in 18.04
  6378   - tests: introduce a helper for installing local snaps with --name
  6379   - tests: avoid removing core snap on reset
  6380   - snap: use snap.SideInfo in test to fix build with gccgo
  6381   - partition: remove unused runCommand
  6382   - image: fix incorrect error when using local bases
  6383   - overlord/snapstate: fix format
  6384   - cmd: fix format
  6385   - tests: setting "storage: preserve-size" just for amazon-linux
  6386     system
  6387   - tests: test for the hostname interface
  6388   - interfaces/modem-manager: allow access to more USB strings
  6389   - overlord: instantiate UDevMonitor
  6390   - interfaces/apparmor: tweak naming, rename to AddLayout()
  6391   - interfaces: take instance name in ifacetest.InstallSnap
  6392   - snapcraft: do not use --dirty in mkversion
  6393   - cmd: add systemd environment generator
  6394   - devicestate: support getting (http) proxy from core config
  6395   - many: rename ClientOpts to ClientOptions
  6396   - prepare-image-grub-core18: remove image root in restore
  6397   - overlord/ifacestate: remove "old-conn" from connect/undo connect
  6398     handlers
  6399   - packaging/fedora: Merge changes from Fedora Dist-Git
  6400   - image: handle errors when downloadedSnapsInfoForBootConfig has no
  6401     data
  6402   - tests: use official core18 model assertion in tests
  6403   - snap-confine: map /var/lib/extrausers into snaps mount-namespace
  6404   - overlord,store: support proxy settings internally too
  6405   - cmd/snap: bring back 'snap version'
  6406   - interfaces/mount: tweak naming of things
  6407   - strutil: fix MatchCounter to also work with buffer reuse
  6408   - cmd,interfaces,tests: add /mnt to removable-media interface
  6409   - systemd: do not run "snapd.snap-repair.service.in on firstboot
  6410     bootstrap
  6411   - snap/snapenv: drop some instance specific variables, use instance-
  6412     specific ones for user locations
  6413   - firstboot: sort by type when installing the firstboot snaps
  6414   - cmd, cmd/snap: better support for non-linux
  6415   - strutil: add new ParseByteSize
  6416   - image: detect and error if bases are missing
  6417   - interfaces/apparmor: do not downgrade confinement on arch with
  6418     linux-hardened 4.17.4+
  6419   - daemon: add pokeStateLock helper to the daemon tests
  6420   - snap/squashfs: improve error message from Build on mksquashfs
  6421     failure
  6422   - tests: remove /etc/alternatives from dirs-not-shared-with-host
  6423   - cmd: support re-exec into the "snapd" snap
  6424   - spdx: remove "Other Open Source" from the support licenses
  6425   - snap: add new type "TypeSnapd" and attach to the snapd snap
  6426   - interfaces: retain order of inserted security backends
  6427   - tests: spread test for parallel-installs desktop file handling
  6428   - overlord/devicestate: use OpenSSL's PEM format when generating
  6429     keys
  6430   - cmd: remove --skip-command-chain from snap run and snap-exec
  6431   - selftest: detect if apparmor is unusable and error
  6432   - snap,snap-exec: support command-chain for hooks
  6433   - tests: significantly reduce execution time for managers test
  6434   - snapstate: use new "snap.ByType" sorting
  6435   - overlord/snapstate: fix UpdateMany() to work with parallel
  6436     instances
  6437   - testutil: have File* checker produce more useful error output
  6438   - overlord/ifacestate: introduce connectOpts
  6439   - interfaces: parallel instances support, extend unit tests
  6440   - tests: normalize tests
  6441   - snapstate: make InstallPath() return *snap.Info too
  6442   - snap: add ByType sorting
  6443   - interfaces: add cifs-mount interface
  6444   - tests: use file based markers in snap-service-stop-mode
  6445   - osutil: reorg and stub out things to get it building on darwin
  6446   - tests/main/layout: cleanup after the test
  6447   - osutil/sys: small tweaks to let it build on darwin
  6448   - daemon, overlord/snapstate: set instance name when installing from
  6449     snap file
  6450   - many: move Uname to osutil, for more DRY and easier porting.
  6451   - cmd/snap: create snap user directory when running parallel
  6452     installed snaps
  6453   - cmd/snap-confine: switch to validation of SNAP_INSTANCE_NAME
  6454   - tests: basic test for parallel installs from the store
  6455   - image: download the gadget from the model.GadgetTrack()
  6456   - snapstate: add support for gadget tracks in model assertion
  6457   - image: add support for "gadget=track"
  6458   - overlord: handle sigterm during shutdown better
  6459   - tests: add the original function to fix the errors on new kernels
  6460   - tests/main/lxd: pull lxd from candidate; reënable i386
  6461   - wayland: add extra sockets that are used by older toolkits (e.g.
  6462     gtk3)
  6463   - asserts: add support for gadget tracks in the model assertion
  6464   - overlord/snapstate: improve feature flag validation
  6465   - tests/main/lxd: run ubuntu-16.04 only on 64 bit variant
  6466   - interfaces: workaround for activated services and newer DBus
  6467   - tests: get the linux-image-extra available for the current kernel
  6468   - interfaces: add new "sysfs-name" to i2c interfaces code
  6469   - interfaces: disconnect hooks
  6470   - cmd/libsnap: unify detection of core/classic with go
  6471   - tests: fix autopkgtest failures in cosmic
  6472   - snap: fix advice json
  6473   - overlord/snapstate: parallel snap install
  6474   - store: backward compatible instance-key handling for non-instance
  6475     snaps
  6476   - interfaces: add screencast-legacy for video and audio recording
  6477   - tests: skip unsupported architectures for fedora-base-smoke test
  6478   - tests: avoid using the journalctl cursor when it has not been
  6479     created yet
  6480   - snapstate: ensure normal snaps wait for the "snapd" snap on
  6481     refresh
  6482   - tests: enable lxd again everywhere
  6483   - tests: new test for udisks2 interface
  6484   - interfaces: add cpu-control for setting CPU tunables
  6485   - overlord/devicestate: fix tests, set seeded in registration
  6486     through proxy tests
  6487   - debian: add missing breaks on cosmic
  6488   - devicestate: only run device-hook when fully seeded
  6489   - seccomp: conditionally add socketcall() based on system and base
  6490   - tests: new test for juju client observe interface
  6491   - overlord/devicestate: DTRT w/a snap proxy to reach a serial vault
  6492   - snapcraft: set version information for the snapd snap
  6493   - cmd/snap, daemon: error out if trying to install a snap using
  6494     empty name
  6495   - hookstate: simplify some hook tests
  6496   - cmd/snap-confine: extend security tag validation to cover instance
  6497     names
  6498   - snap: fix mocking of systemkey in snap-run tests
  6499   - packaging/opensuse: fix static build of snap-update-ns and snap-
  6500     exec
  6501   - interfaces/builtin: addtl network-manager resolved DBus fix
  6502   - udev: skip TestParseUdevEvent on ppc
  6503   - interfaces: miscellaneous policy updates
  6504   - debian: add tzdata to build-dep to ensure snapd builds correctly
  6505   - cmd/libsnap-confine-private: intoduce helpers for validating snap
  6506     instance name and instance key
  6507   - snap,snap-exec: support command-chain for app
  6508   - interfaces/builtin: network-manager resolved DBus changes
  6509   - snap: tweak `snap wait` command
  6510   - cmd/snap-update-ns: introduce validation of snap instance names
  6511   - cmd/snap: fix some corner-case test setup weirdness
  6512   - cmd,dirs: fix various issues discovered by a Fedora base snap
  6513   - tests/lib/prepare: fix extra snaps test
  6514  
  6515  * Mon Oct 15 2018 Michael Vogt <mvo@ubuntu.com>
  6516  - New upstream release 2.35.5
  6517   - interfaces/home: don't allow snaps to write to $HOME/bin
  6518   - osutil: workaround overlayfs on ubuntu 18.10
  6519  
  6520  * Fri Oct 05 2018 Michael Vogt <mvo@ubuntu.com>
  6521  - New upstream release 2.35.4
  6522    - wrappers: do not depend on network.taget in socket units, tweak
  6523      generated units
  6524  
  6525  * Fri Oct 05 2018 Michael Vogt <mvo@ubuntu.com>
  6526  - New upstream release 2.35.3
  6527   - overlord: don't make become-operational interfere with user
  6528     requests
  6529   - docker_support.go: add rules to read apparmor macros
  6530   - interfaces/apparmor: handle overlayfs snippet for snap-update-
  6531     nsFixes:
  6532   - snapcraft.yaml: add workaround to fix snapcraft build
  6533   - interfaces/opengl: misc accesses for VA-API
  6534  
  6535  * Wed Sep 12 2018 Michael Vogt <mvo@ubuntu.com>
  6536  - New upstream release 2.35.2
  6537   - cmd,overlord/snapstate: go 1.11 format fixes
  6538   - ifacestate: fix hang when retrying content providers
  6539   - snap-env-generator: do nothing when PATH is unset
  6540   - interfaces/modem-manager: allow access to more USB strings
  6541  
  6542  * Mon Sep 03 2018 Michael Vogt <mvo@ubuntu.com>
  6543  - New upstream release 2.35.1
  6544   - packaging/fedora: Merge changes from Fedora Dist-Git
  6545   - snapcraft: do not use --diry in mkversion.sh
  6546   - cmd: add systemd environment generator
  6547   - snap-confine: map /var/lib/extrausers into snaps mount-namespace
  6548   - tests: cherry-pick test fixes from master for 2.35
  6549   - systemd: do not run "snapd.snap-repair.service.in on firstboot
  6550     bootstrap
  6551   - interfaces: retain order of inserted security backends
  6552   - selftest: detect if apparmor is unusable and error
  6553  
  6554  * Sat Aug 25 2018 Neal Gompa <ngompa13@gmail.com> - 2.35-1
  6555  - Release 2.35 to Fedora (RH#1598946)
  6556  
  6557  * Mon Aug 20 2018 Michael Vogt <mvo@ubuntu.com>
  6558  - New upstream release 2.35
  6559   - snapstate: add support for gadget tracks in model assertion
  6560   - image: add support for "gadget=track"
  6561   - asserts: add support for gadget tracks in the model assertion
  6562   - interfaces: add new "sysfs-name" to i2c interfaces code
  6563   - overlord: handle sigterm during shutdown better
  6564   - wayland: add extra sockets that are used by older toolkits
  6565   - snap: fix advice json
  6566   - tests: fix autopkgtest failures in cosmic
  6567   - store: backward compatible instance-key handling for non-instance
  6568     snaps
  6569   - snapstate: ensure normal snaps wait for the "snapd" snap on
  6570     refresh
  6571   - interfaces: add cpu-control for setting CPU tunables
  6572   - debian: add missing breaks on comisc
  6573   - overlord/devicestate: DTRT w/a snap proxy to reach a serial vault
  6574   - devicestate: only run device-hook when fully seeded
  6575   - seccomp: conditionally add socketcall() based on system and base
  6576   - interfaces/builtin: addtl network-manager resolved DBus fix
  6577   - hookstate: simplify some hook tests
  6578   - udev: skip TestParseUdevEvent on ppc
  6579   - interfaces: miscellaneous policy updates
  6580   - debian: add tzdata to build-dep to ensure snapd builds correctly
  6581   - interfaces/builtin: network-manager resolved DBus changes
  6582   - tests: add spread test for fedora29 base snap
  6583   - cmd/libsnap: treat distributions with VARIANT_ID=snappy as "core"
  6584   - dirs: fix SnapMountDir inside a Fedora base snap
  6585   - tests: fix snapd-failover for core18 with external backend
  6586   - overlord/snapstate: always clean SnapState when doing Get()
  6587   - overlod/ifacestate: always use a new SnapState when fetching the
  6588     snap state
  6589   - overlord/devicestate: have the serial request talk to the proxy if
  6590     set
  6591   - interfaces/hotplug: udevadm output parser
  6592   - tests: New test for daemon-notify interface
  6593   - image: ensure "core" is ordered early if base: and core is used
  6594   - cmd/snap-confine: snap-device-helper parallel installs support
  6595   - tests: enable interfaces-framebuffer everywhere
  6596   - tests: reduce nc wait time from 2 to 1 second
  6597   - snap/snapenv: add snap instance specific variables
  6598   - cmd/snap-confine: add minimal test for snap-device-helper
  6599   - tests: enable snapctl test on core18
  6600   - overlord: added UDevMonitor for future hotplug support
  6601   - wrappers: do not glob when removing desktop files
  6602   - tests: add dbus monitor log to interfaces-accounts-service
  6603   - tests: add core-18 systems to external backend
  6604   - wrappers: account for changed app wrapper in parallel installed
  6605     snaps
  6606   - wrappers: make sure that the tests pass on non-Ubuntu too
  6607   - many: add snapd snap failure handling
  6608   - tests: new test for dvb interface
  6609   - configstate: accept refresh.timer=managed
  6610   - tests: new test for snap logs command
  6611   - wrapper: generate all the snapd unit files when generating
  6612     wrappers
  6613   - store: keep all files with link-count > 1 in the cache
  6614   - store: be less verbose in the common refresh case of "no updates"
  6615   - snap-confine: update snappy-app-dev path
  6616   - debian: ensure dependency on fixed apt on 18.04
  6617   - snapd: add initial software watchdog for snapd
  6618   - daemon, systemd: change journalctl -n=all to --no-tail
  6619   - systemd: fix snapd.apparmor.service.in dependencies
  6620   - snapstate: refuse to remove bases or core if snaps need them
  6621   - snap: introduce package-level helpers for building snap related
  6622     directory/file paths
  6623   - overlord/devicestate: deny parallel install of kernel or gadget
  6624     snaps
  6625   - store: clean up parallel-install TODOs in store tests
  6626   - timeutil: fix first weekday of the month schedule
  6627   - interfaces: match all possible tty but console
  6628   - tests: shellchecks part 5
  6629   - cmd/snap-confine: allow ptrace read for 4.18 kernels
  6630   - advise: make the bolt database do the atomic rename dance
  6631   - tests/main/apt-hooks: debug dump of commands.db
  6632   - tests/lib/prepare-restore: update Arch Linux kernel LOCALVERSION
  6633     handling
  6634   - snap: validate instance name as part of Validate()
  6635   - daemon: if a snap is inactive, don't ask systemd about its
  6636     services.
  6637   - udev: skip TestParseUdevEvent on s390x
  6638   - tests: switch core-amd64-18 to use `kernel: pc-kernel=18`
  6639   - asserts,image: add support for new kernel=track syntax
  6640   - tests: new gce image for fedora 27
  6641   - interfaces/apparmor: use the cache in mtime-resilient way
  6642   - store, overlord/snapstate: introduce instance name in store APIs
  6643   - tests: drive-by cleanup of redudant pkgname matching
  6644   - tests: ensure apt-hook is only run after catalog update ran
  6645   - tests: use pkill instead of kilall
  6646   - tests/main: another bunch of updates for Amazon Linux 2
  6647   - tests/lib/snaps: avoid using relative command paths that go up in
  6648     the  directory tree
  6649   - tests: disable/fix more tests for Amazon Linux 2
  6650   - overlord: introduce InstanceKey to SnapState and SnapSetup,
  6651     renames
  6652   - daemon: make sure most change generating handlers can produce
  6653     errors with kinds
  6654   - tests/main/interfaces-calendar-service: skip the test on AMZN2
  6655   - tests/lib/snaps: avoid using relative command paths that go up in
  6656     the directory tree
  6657   - cmd/snap: add a green check mark to verified publishers
  6658   - cmd/snap: fix two issues in the cmd/snap unit tests
  6659   - packaging/fedora: fix target path of /snap symlink
  6660   - cmd/snap: support `--last=<type>?` to mean "no error on empty"
  6661   - cmd/snap-confine: (nvidia) pick up libnvidia-glvkspirv.so
  6662   - strutil: detect and bail out of Unmarshal on duplicate key
  6663   - packaging/fedora(amzn2): disable SELinux, drop dependency on
  6664     squashfuse for AMZN2
  6665   - spread, tests: add support for Amazon Linux 2
  6666   - packaging/fedora: Add Amazon Linux 2 support
  6667   - many: make Wait/Stop optional on StateManagers
  6668   - snap/squashfs: stop printing unsquashfs info to stderr
  6669   - snap: add support for `snap advise-snap --from-apt`
  6670   - overlord/ifacestate: ignore connect if already connected
  6671   - tests: change the service snap used instead of network-bind-
  6672     consumer
  6673   - interfaces/network-control: update for wpa-supplicant and ifupdown
  6674   - tests: fix raciness in stop mode tests
  6675   - logger: try to not have double dates
  6676   - debian: use deb-systemd-invoke instead of systemctl directly
  6677   - tests: run all main tests on core18
  6678   - many: finish sharing a single TaskRunner with all the the managers
  6679   - interfaces/repo: added AllHotplugInterfaces helper
  6680   - snapstate: ensure kernel-track is honored on switch/refresh
  6681   - overlord/ifacestate: support implicit slots on snapd
  6682   - image: add support for "kernel-track" in `snap prepare-image`
  6683   - tests: add test that ensures we do not boot any system in degraded
  6684     state
  6685   - tests: update tests to work on core18
  6686   - cmd/snap: check for typographic dashes in command
  6687   - tests: fix tests expecting old email address
  6688   - client: add some existing error kinds that were not listed in
  6689     client.go
  6690   - tests: add missing slots in classic and core provider test snaps
  6691   - overlord,daemon,cmd: re-map snap names around the edges of snapd
  6692   - tests: use install_local in snap-run-hooks
  6693   - coreconfig: add support for `snap set system network.disable-
  6694     ipv6`
  6695   - overlord/snapstate: dedupe default content providers
  6696   - osutil/udev: sync with upstream
  6697   - debian: do not ship snapd.apparmor.service on ubuntu
  6698   - overlord: have SnapManager use a passed in TaskRunner created by
  6699     Overlord
  6700   - many: streamline the generic conflict check mechanisms
  6701   - tests: remove unneeded setup code in snap-run-symlink
  6702   - cmd/snap: print unset license as "unset", instead of "unknown"
  6703   - asserts: add (optional) kernel-track to model assertion
  6704   - snap/squashfs, tests: pass -n[o-progress] to {mk,un}squashfs
  6705   - interfaces/pulseaudio: be clear that the interface allows playback
  6706     and record
  6707   - snap: support hook environment
  6708   - interfaces: fix typo "daemonNotify" (add missing "n")
  6709   - interfaces: tweak tests of daemon-notify, use common naming
  6710   - interfaces: allow invoking systemd-notify when daemon-notify is
  6711     connected
  6712   - store: make snap blobs be 0600
  6713   - interfaces,daemon: move JSON types to the daemon
  6714   - tests: prepare needs to handle bin/snapctl being a symlink
  6715   - tests: do not mask errors in interfaces-timezone-control (#5405)
  6716   - packaging: put snapctl into /usr/lib/snapd and symlink in usr/bin
  6717   - tests: add basic integration test for spread hold
  6718   - overlord/snapstate: improve PlugsOnly comment
  6719   - many: assorted shellcheck fixes
  6720   - store, daemon, client, cmd/snap: expose "scope", default to wide
  6721   - snapstate: allow setting "refresh.timer=managed"
  6722   - cmd/snap: display a link to data privacy notice for interactive
  6723     snap login
  6724   - client, cmd/snap: pass snap instance name when installing from
  6725     file
  6726   - cmd/snap: add 'debug paths' command
  6727   - snapstate: make sure all *link-*snap tasks carry a snap type and
  6728     further hints
  6729   - devicestate: fix race when refreshing a snap with snapd-control
  6730   - tests: fix tests on arch
  6731   - tests: start active system units on reset
  6732   - tests: new test for joystick interface
  6733   - tests: moving install of dependencies to pkgdb helper
  6734   - tests: enable new fedora image with test dependencies installed
  6735   - tests: start using the new opensuse image with test dependencies
  6736   - tests: check catalog refresh before and after restart snapd
  6737   - tests: stop restarting journald service on prepare
  6738   - interfaces: make core-support a no-op interface
  6739   - interfaces: prefer "snapd" when resolving implicit connections
  6740   - interfaces/hotplug: add hotplug Specification and
  6741     HotplugDeviceInfo
  6742   - many: lessen the use of core-support
  6743   - tests: fixes for the autopkgtest failures in cosmic
  6744   - tests: remove extra ' which breaks interfaces-bluetooth-control
  6745     test
  6746   - dirs: fix antergos typo
  6747   - tests: use grep to avoid non-matching messages from MATCH
  6748   - dirs: improve distro detection for Antegros
  6749   - vendor: switch to latest bson
  6750   - interfaces/builtin: create can-bus interface
  6751   - tests: "snap connect" is idempotent so just connect
  6752   - many: use extra "releases" information on store "revision-not-
  6753     found" errors to produce better errors
  6754   - interfaces: treat "snapd" snap as type:os
  6755   - interfaces: tweak tests to have less repetition of "core" and
  6756     "ubuntu…
  6757   - tests: simplify econnreset test
  6758   - snap: add helper for renaming slots
  6759   - devicestate: fix panic in firstboot code when no snaps are seeded
  6760   - tests: add artful for sru validation on google backend
  6761   - snap,interfaces: move interface name validation to snap
  6762   - overlord/snapstate: introduce path to fake backend ops
  6763   - cmd/snap-confine: fix snaps running on core18
  6764   - many: expose publisher's validation throughout the API
  6765  
  6766  * Fri Jul 27 2018 Michael Vogt <mvo@ubuntu.com>
  6767  - New upstream release 2.34.3
  6768   - interfaces/apparmor: use the cache in mtime-resilient way
  6769   - cmd/snap-confine: (nvidia) pick up libnvidia-glvkspirv.so
  6770   - snapstate: allow setting "refresh.timer=managed"
  6771   - spread: switch Fedora and openSUSE images
  6772  
  6773  * Thu Jul 19 2018 Michael Vogt <mvo@ubuntu.com>
  6774  - New upstream release 2.34.2
  6775   - packaging: fix bogus date in fedora snapd.spec
  6776   - tests: fix tests expecting old email address
  6777  
  6778  * Tue Jul 17 2018 Michael Vogt <mvo@ubuntu.com>
  6779  - New upstream release 2.34.1
  6780   - tests: cherry-pick test fixes from master for 2.34
  6781   - coreconfig: add support for `snap set system network.disable-
  6782     ipv6`
  6783   - debian: do not ship snapd.apparmor.service on ubuntu
  6784   - overlord/snapstate: dedupe default content providers
  6785   - interfaces/builtin: create can-bus interface
  6786  
  6787  * Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.33.1-2
  6788  - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
  6789  
  6790  * Fri Jul 06 2018 Michael Vogt <mvo@ubuntu.com>
  6791  - New upstream release 2.34
  6792   - store, daemon, client, cmd/snap: expose "scope", default to wide*
  6793   - tests: fix arch tests
  6794   - snapstate: make sure all *link-*snap tasks carry a snap type and
  6795     further hints
  6796   - snapstate: allow setting "refresh.timer=managed"
  6797   - cmd/snap: display a link to data privacy notice for interactive
  6798     snap login
  6799   - devicestate: fix race when refreshing a snap with snapd-control
  6800   - tests: skip interfaces-framebuffer when no /dev/fb0 is found
  6801   - tests: run interfaces-contacts-service only where test-snapd-eds
  6802     is available
  6803   - many: expose publisher's validation throughout the API
  6804   - many: use extra "releases" information on store "revision-not-
  6805     found" errors to produce better errors
  6806   - dirs: improve distro detection for Antegros
  6807   - Revert "dirs: improve identification of Arch Linux like systems"
  6808   - devicestate: fix panic in firstboot code when no snaps are seeded
  6809   - i18n: use xgettext-go --files-from to avoid running into cmdline
  6810     size limits
  6811   - interfaces: move ValidateName helper to utils
  6812   - snapstate,ifstate: wait for pending restarts before auto-
  6813     connecting
  6814   - snap: account for parallel installs in wrappers, place info and
  6815     tests
  6816   - configcore: fix incorrect handling of keys with numbers (like
  6817     gpu_mem_512)
  6818   - tests: fix tests when no keyboard input detected
  6819   - overlord/configstate: add watchdog options
  6820   - snap-mgmt: fix for non-existent dbus system policy dir,
  6821     shellchecks
  6822   - tests/main/snapd-notify: use systemd's service properties rater
  6823     than the journal
  6824   - snapstate: allow removal of snap.TypeOS when using a model with a
  6825     base
  6826   - interfaces: make findSnapdPath smarter
  6827   - tests: run "arp" tests only if arp is available
  6828   - spread: increase the number of auto retries for package downloads
  6829     in opensuse
  6830   - cmd/snap-confine: fix nvidia support under lxd
  6831   - corecfg: added experimental.hotplug feature flag
  6832   - image: block installation of parallel snap instances
  6833   - interfaces: moved normalize method to interfaces/utils and made it
  6834     public
  6835   - api/snapctl: allow -h and --help for regular users.
  6836   - interfaces/udisks2: also implement implicit classic slot
  6837   - cmd/snap-confine: include CUDA runtime libraries
  6838   - tests: disable auto-refresh test on core18
  6839   - many: switch to account validation: unproven|verified
  6840   - overlord/ifacestate: get/set connection state only via helpers
  6841   - tests: adding extra check to validate journalctl is showing
  6842     current test data
  6843   - data: add systemd environment configuration
  6844   - i18n: handle write errors in xgettext-go
  6845   - snap: helper for validating snap instance names
  6846   - snap{/snaptest}: set instance key based on snap name
  6847   - userd: fix running unit tests on KDE
  6848   - tests/main/econnreset: limit ingress traffic to 512kB/s
  6849   - snap: introduce a struct Channel to represent store channels, and
  6850     helpers to work with it
  6851   - tests: add fedora to distro_clean_package_cache function
  6852   - many: rename snap.Info.StoreName() to snap.Info.SnapName()
  6853   - tests: add spread test to ensure snapd/core18 are not removable
  6854   - tests: tweaks for running the main tests on core18
  6855   - overlord/{config,snap}state: introduce experimental.parallel-
  6856     instances feature flag
  6857   - strutil: support iteration over almost clean paths
  6858   - strutil: add PathIterator.Rewind
  6859   - tests: update interfaces-timeserver-control to core18
  6860   - tests: add halt-timeout to google backend
  6861   - tests: skip security-udev-input-subsystem without /dev/input/by-
  6862     path
  6863   - snap: introduce the instance key field
  6864   - packaging/opensuse: remaining packaging updates for 2.33.1
  6865   - overlord/snapstate: disallow installing snapd on baseless models
  6866   - tests: disable core tests on all core systems (16 and 18)
  6867   - dirs: improve identification of Arch Linux like systems
  6868   - many: expose full publisher info over the snapd API
  6869   - tests: disable core tests on all core systems (16 and 18)
  6870   - tests/main/xdg-open: restore or clean up xdg-open
  6871   - tests/main/interfaces-firewall-control: shellcheck fix
  6872   - snapstate: sort "snapd" first
  6873   - systemd: require snapd.socket in snapd.seeded.service; make sure
  6874     snapd.seeded
  6875   - spread-shellcheck: use the latest shellcheck available from snaps
  6876   - tests: use "ss" instead of "netstat" (netstat is not available in
  6877     core18)
  6878   - data/complete: fix three out of four shellcheck warnings in
  6879     data/complete
  6880   - packaging/opensuse: fix typo, missing assignment
  6881   - tests: initial core18 spread image building
  6882   - overlord: introduce a gadget-connect task and use it at first boot
  6883   - data/completion: fix inconsistency in +x and shebang
  6884   - firstboot: mark essential snaps as "Required" in the state
  6885   - spread-shellcheck: use a whitelist of files that are allowed to
  6886     fail validation
  6887   - packaging/opensuse: build position-independent binaries
  6888   - ifacestate: prevent running interface hooks twice when self-
  6889     connecting on autoconnect
  6890   - data: remove /bin/sh from snapd.sh
  6891   - tests: fix shellcheck 0.5.0 warnings
  6892   - packaging/opensuse: snap-confine should be 06755
  6893   - packaging/opensuse: ship apparmor integration if enabled
  6894   - interfaces/udev,misc: only trigger udev events on input subsystem
  6895     as needed
  6896   - packaging/opensuse: add missing bits for snapd.seeded.service
  6897   - packaging/opensuse: don't use %-macros in comments
  6898   - tests: shellchecks part 4
  6899   - many: rename snap.Info.Name() to snap.Info.InstanceName(), leave
  6900     parallel-install TODOs
  6901   - store: drop unused: channel map types, and details fixture.
  6902   - store: have a basic test about the unmarshalling of /search
  6903     results
  6904   - tests: show executed tests on current system when a test fails
  6905   - tests: fix for the download of the big snap
  6906   - interfaces/apparmor: add chopTree
  6907   - tests: remove double debug: | entry in tests and add more checks
  6908   - cmd/snap-update-ns: introduce mimicRequired helper
  6909   - interfaces: move assertions around for better failure line number
  6910   - store: log a nice clear "download succeeded" message
  6911   - snap: run snap-confine from the re-exec location
  6912   - snapstate: support restarting snapd from the snapd snap on core18
  6913   - tests: show status of the partial test-snapd-huge snap in
  6914     econnreset test
  6915   - tests: fix interfaces-calendar-service test when gvfsd-metadata
  6916     loks the xdg dirctory
  6917   - store: switch store.SnapInfo to use the new v2/info endpoint
  6918   - interfaces: add Repository.AllInterfaces
  6919   - snapstate: stop using evolving SnapSpec internally, use an
  6920     internal-only snapSpec instead
  6921   - cmd/libsnap-confine-private: introduce a helper for splitting snap
  6922     name
  6923   - tests: econnreset/retry tweaks
  6924   - store, et al: kill dead code that uses the bulk endpoint
  6925   - tests/lib/prepare-restore: fix upgrade/reboot handling on arch
  6926   - cmd/snap-update-ns,strutil: move PathIterator to strutil, add
  6927     Depth helper
  6928   - data/systemd/snapd.run-from-snap: ensure snapd tooling is
  6929     available
  6930   - store: switch connectivity check to use v2/info
  6931   - devicestate: support seeding from a base snap instead of core
  6932   - snapstate,ifacestate: remove core-phase-2 handling
  6933   - interfaces/docker-support: update for docker 18.05
  6934   - tests: enable fedora 28 again
  6935   - overlord/ifacestate:  simplify checkConnectConflicts and also
  6936     connect signature
  6937   - snap: parse connect instructions in gadget.yaml
  6938   - tests: fix snapd-repair.timer on ubuntu-core-snapd-run- from-snap
  6939     test
  6940   - interfaces/apparmor: allow killing snap-update-ns
  6941   - tests: skip "try" test on s390x
  6942   - store, image: have 'snap download' use v2/refresh action=download
  6943   - interfaces/policy: test that base policy can be parsed
  6944   - tests: publish test-snapd-appstreamid for any architecture
  6945   - snap: don't include newline in hook environment
  6946   - cmd/snap-update-ns: use RCall with SyscallsEqual
  6947   - cmd/snap-update-ns: add IsSnapdCreatedPrivateTmpfs and tests
  6948   - tests: skip security-dev-input-event-denied on s390x/arm64
  6949   - interfaces: add the dvb interface
  6950   - daemon: paging is not a thing.
  6951   - cmd/snap-mgmt: remove system key on purge
  6952   - testutil: syscall sequence checker
  6953   - cmd/snap-update-ns: fix a leaking file descriptor in MkSymlink
  6954   - packaging: use official bolt in the errtracker on fedora
  6955   - many: add `snap debug connectivity` command* many: add `snap debug
  6956     connectivity` command
  6957   - configstate: deny configuration of base snaps and for the "snapd"
  6958     snap
  6959   - interfaces/raw-usb: also allow usb serial devices
  6960   - snap: reject more layout locations
  6961   - errtracker: do not send duplicated reports
  6962   - httputil: extra debug if an error is not retried
  6963   - cmd/snap-update-ns: improve wording in many errors
  6964   - cmd/snap: use snaptest.MockSnapCurrent in `snap run` tests
  6965   - cmd/snap-update-ns: add helper for checking for read-only
  6966     filesystems
  6967   - interfaces/builtin/docker: use commonInterface over specific
  6968     struct
  6969   - testutil: add test support for Fstatfs
  6970   - cmd/snap-update-ns: discard the concept of segments
  6971   - cmd/libsnap-confine-private: helper for extracting store snap name
  6972     from local-name
  6973   - tests: fix flaky test for hooks undo
  6974   - interfaces: add {contacts,calendar}-service interfaces
  6975   - tests: retry 'restarting into..' match in the snap-confine-from-
  6976     core test
  6977   - systemd: adjust TestWriteMountUnitForDirs() to use
  6978     squashfs.MockUseFuse(false)
  6979   - data: add helper that can generate/start/stop the snapd service
  6980   - sefltest: advise reboot into 4.4 on trusty running 3.13
  6981   - selftest: add new selftest package that tests squashfs mounting
  6982   - store, jsonutil: move store.getStructFields to
  6983     jsonutil.StructFields
  6984   - ifacestate: improved conflict and error handling when creating
  6985     autoconnect tasks
  6986   - cmd/snap-confine: applied make fmt
  6987   - interfaces/udev: call 'udevadm settle --timeout=10' after
  6988     triggering events
  6989   - tests: wait more time until snap start to be downloaded on
  6990     econnreset test
  6991   - snapstate: ensure fakestore returns TypeOS for the core snap
  6992   - tests: fix lxd test which hangs on restore
  6993   - cmd/snap-update-ns: add PathIterator
  6994   - asserts,image: add support for models with bases
  6995   - tests: shellchecks part 3
  6996   - overlord/hookstate: support undo for hooks
  6997   - interfaces/tpm: Allow access to the kernel resource manager
  6998   - tests: skip appstream-id test for core systems 32 bits
  6999   - interfaces/home: remove redundant common interface assignment
  7000   - tests: reprioritise a few tests that are known to be slow
  7001   - cmd/snap: small help tweaks and fixes
  7002   - tests: add test to ensure /dev/input/event* for non-joysticks is
  7003     denied
  7004   - spread-shellcheck: silly fix & pep8
  7005   - spread: switch fedora 28 to manual
  7006   - client,cmd/snap,daemon,tests: expose base of a snap over API, show
  7007     it in snap info --verbose
  7008   - tests: fix lxd test - --auto now sets up networking
  7009   - tests: adding fedora-28 to spread.yaml
  7010   - interfaces: add juju-client-observe interface
  7011   - client, daemon: add a "mounted-from" entry to local snaps' JSON
  7012   - image: set model.DisplayName() in bootenv as "snap_menuentry"
  7013   - packaging/opensuse: Refactor packaging to support all openSUSE
  7014     targets
  7015   - interfaces/joystick: force use of the device cgroup with joystick
  7016     interface
  7017   - interfaces/hardware-observe: allow access to /etc/sensors* for
  7018     libsensors
  7019   - interfaces: remove Plug/Slot types
  7020   - interface hooks: update old AutoConnect methods
  7021   - snapcraft: run with DEB_BUILD_OPTIONS=nocheck
  7022   - overlord/{config,snap}state: the number of inactive revisions is
  7023     config
  7024   - cmd/snap: check with snapd for unknown sections
  7025   - tests: moving test helpers from sh to bash
  7026   - data/systemd: add snapd.apparmor.service
  7027   - many: expose AppStream IDs (AKA common ID)
  7028   - many: hold refresh when on metered connections
  7029   - interfaces/joystick: also support modern evdev joysticks and
  7030     gamepads
  7031   - xdgopenproxy: skip TestOpenUnreadableFile when run as root
  7032   - snapcraft: use dpkg-buildpackage options that work in xenial
  7033   - spread: openSUSE LEAP 42.2 was EOLd in January, remove it
  7034   - get-deps: work with an unset GOPATH too
  7035   - interfaces/apparmor: use strict template on openSUSE tumbleweed
  7036   - packaging: filter out verbose flags from "dh-golang"
  7037   - packaging: fix description
  7038   - snapcraft.yaml: add minimal snapcraft.yaml with custom build
  7039  
  7040  * Fri Jun 22 2018 Neal Gompa <ngompa13@gmail.com> - 2.33.1-1
  7041  - Release 2.33.1 to Fedora (RH#1567916)
  7042  
  7043  * Thu Jun 21 2018 Michael Vogt <mvo@ubuntu.com>
  7044  - New upstream release 2.33.1
  7045   - many: improve udev trigger on refresh experience
  7046   - systemd: require snapd.socket in snapd.seeded.service
  7047   - snap: don't include newline in hook environment
  7048   - interfaces/apparmor: allow killing snap-update-ns
  7049   - tests: skip "try" test on s390x
  7050   - tests: skip security-dev-input-event-denied when /dev/input/by-
  7051     path/ is missing
  7052   - tests: skip security-dev-input-event-denied on s390x/arm64
  7053  
  7054  * Fri Jun 08 2018 Michael Vogt <mvo@ubuntu.com>
  7055  - New upstream release 2.33
  7056   - packaging: use official bolt in the errtracker on fedora
  7057   - many: add `snap debug connectivity` command
  7058   - interfaces/raw-usb: also allow usb serial devices
  7059   - errtracker: do not send duplicated reports
  7060   - selftest: add new selftest package that tests squashfs mounting
  7061   - tests: backport lxd force stop and econnreset fixes
  7062   - tests: add test to ensure /dev/input/event* for non-joysticks is
  7063     denied
  7064   - interfaces/joystick: support modern evdev joysticks
  7065   - interfaces: add juju-client-observe
  7066   - interfaces/hardware-observe: allow access to /etc/sensors* for
  7067     libsensors
  7068   - many: holding refresh on metered connections
  7069   - many: expose AppStream IDs (AKA common ID)
  7070   - tests: speed up save/restore snapd state for all-snap systems
  7071     during tests execution
  7072   - interfaces/apparmor: use helper to load stray profile
  7073   - tests: ubuntu core abstraction
  7074   - overlord/snapstate: don't panic in a corner case interaction of
  7075     cleanup tasks and pruning
  7076   - interfaces/apparmor: add 'mediate_deleted' profile flag for all
  7077     snaps
  7078   - tests: new parameter for the journalctl rate limit
  7079   - spread-shellcheck: port to python
  7080   - interfaces/home: add 'read' attribute to allow non-owner read to
  7081     @{HOME}
  7082   - testutil: import check.v1 differently to workaround gccgo error
  7083   - interfaces/many: miscellaneous updates for default, desktop,
  7084     desktop-legacy, system-observe, hardware-observe, opengl and gpg-
  7085     keys
  7086   - snapstate/hooks: reorder autoconnect and reconnect hooks
  7087   - daemon: update unit tests to match current master
  7088   - overlord/snapshotstate/backend: introducing the snapshot backend
  7089   - many: support 'system' nickname in interfaces
  7090   - userd: add the "snap" scheme to the whitelist
  7091   - many: make rebooting of core on refresh immediate, refactor logic
  7092     around it
  7093   - tests/main/snap-service-timer: account for service timer being in
  7094     the 'running' state
  7095   - interfaces/builtin: allow access to libGLESv* too for opengl
  7096     interface
  7097   - daemon: fix unit tests on arch
  7098   - interfaces/default,process-control: miscellaneous signal policy
  7099     fixes
  7100   - interfaces/bulitin: add write permission to optical-drive
  7101   - configstate: validate known core.* options
  7102   - snap, wrappers: systemd WatchdogSec support
  7103   - ifacestate: do not auto-connect manually disconnected interfaces
  7104   - systemd: mock useFuse() so testsuite passes in container via lxd
  7105     snap
  7106   - snap/env: fix env duplication logic
  7107   - snap: some doc comments fixes and additions
  7108   - cmd/snap-confine, interfaces/opengl: allow access to glvnd EGL
  7109     vendor files
  7110   - ifacestate: unify reconnect and autoconnect methods
  7111   - tests: fix user mounts test for external systems
  7112   - overlord/snapstate,overlord/auth,store: coalesce no auth user
  7113     refresh requests
  7114   - boot,partition: improve tests/docs around SetNextBoot()
  7115   - many: improve `snap wait` command
  7116   - snap: fix `snap interface --attrs` output when numbers are used
  7117   - cmd/snap-update-ns: poke holes when creating source paths for
  7118     layouts
  7119   - snapstate: support getting new bases/default-providers on refresh
  7120   - ifacemgr: remove stale connections on startup
  7121   - asserts: use Attrer in policy checks
  7122   - testutil: record system call errors / return values
  7123   - tests: increase timeouts to make tests reliable on slow boards
  7124   - repo: pass and return ConnRef via pointers
  7125   - interfaces: add xdg-document-portal support to desktop interface
  7126   - debian: add a zenity|kdialog suggests
  7127   - snapstate: make TestDoPrereqRetryWhenBaseInFlight less brittle
  7128   - tests: go must be installed as a classic snap
  7129   - tests: use journalctl cursors instead rotating logs
  7130   - daemon: add confinement-options to /v2/system-info
  7131     daemon: refactor classic support flag to be more structured
  7132   - tests: build spread in the autopkgtests with a more recent go
  7133   - cmd/snap: fix the message when snap.channel != snap.tracking
  7134   - overlord/snapstate: allow core defaults configuration via 'system'
  7135     key
  7136   - many: add "snap debug sandbox-features" and needed bits
  7137   - interfaces: interface hooks for refresh
  7138   - snapd.core-fixup.sh: add workaround for corrupted uboot.env
  7139   - boot: clear "snap_mode" when needed
  7140   - many: add wait command and `snapd.seeded` service
  7141   - interfaces: move host font update-ns AppArmor rules to desktop
  7142     interface
  7143   - jsonutil/safejson: introducing safejson.String &
  7144     safejson.Paragraph
  7145   - cmd/snap-update-ns: use Secure.BindMount to bind mount files
  7146   - cmd/snap-update-ns,tests: mimic the mode and ownership of
  7147     directories
  7148   - cmd/snap-update-ns: add support for ignoring mounts with missing
  7149     source/target
  7150   - interfaces: interface hooks implementation
  7151   - cmd/libsnap: fix compile error on more restrictive gcc
  7152     cmd/libsnap: fix compilation errors on gcc 8
  7153   - interfaces/apparmor: allow bash and dash to be in /usr/bin/
  7154   - cmd/snap-confine: allow any base snap to provide /etc/alternatives
  7155   - tests: fix interfaces-network test for systems with partial
  7156     confinement
  7157   - spread.yaml: add cosmic (18.10) to autopkgtest/qemu
  7158   - tests: ubuntu 18.04 or higher does not need linux-image-extra-
  7159   - configcore: validate experimental.layouts option
  7160   - interfaces:minor autoconnect cleanup
  7161   - HACKING: fix typos
  7162   - spread: add adt for ubuntu 18.10
  7163   - tests: skip test lp-1721518 for arch, snapd is failing to start
  7164     after reboot
  7165   - interfaces/x11: allow X11 slot implementations
  7166   - tests: checking interfaces declaring the specific interface
  7167   - snap: improve error for snaps not available in the given context
  7168   - cmdstate: add missing test for default timeout handling
  7169   - tests: shellcheck spread tasks
  7170   - cmd/snap: update install/refresh help vs --revision
  7171   - cmd/snap-confine: add support for per-user mounts
  7172   - snap: do not use overly short timeout in `snap
  7173     {start,stop,restart}`
  7174   - tests: adding google-sru backend replacing linode-sur
  7175   - interfaces/apparmor: fix incorrect apparmor profile glob
  7176   - systemd: replace ancient paths with 16.04+ standards
  7177   - overlord,systemd: store snap revision in mount units
  7178   - testutil: add test helper for SysLstat
  7179   - testutil,cmd: rename test helper of Lstat to OsLstat
  7180   - testutil: document all fake syscall/os functions
  7181   - osutil,interfaces,cmd: use less hardcoded strings
  7182   - testutil: rename UNMOUNT_NOFOLLOW to umountNoFollow
  7183   - testutil: don't dot-import check.v1
  7184   - store: getStructFields takes pointers now
  7185   - tests: drop `linux-image-extra-$(uname -r)` install in 18.04
  7186   - many: fix false negatives reported by vet
  7187   - osutil,interfaces: use uint32 for uid, gid
  7188   - many: fix various issues reported by shellcheck
  7189   - tests: add pending shutdown detection
  7190   - image: support refreshing soft-expired user macaroons in tooling
  7191   - interfaces/builtin, daemon: cleanup mocked builtin interfaces in
  7192     daemon tests
  7193   - interfaces/builtin: add support for software-watchdog interface
  7194   - spread: auto accept key changes when calling dnf
  7195   - snap,overlord/snapstate: introduce and use BrokenSnapError
  7196   - tests: detect kernel oops during tests and abort tests in this
  7197     case
  7198   - tests: bring back one missing test in snap-service-stop-mode
  7199   - debian: update LP bug for the 2.32.5 SRU
  7200   - userd: set up journal logging streams for autostarted apps
  7201   - snap,tests : don't fail if we cannot stat MountFile
  7202   - tests: smaller fixes for Arch tests
  7203   - tests: run interfaces-broadcom-asic-control early
  7204   - client: support for snapshot sets, snapshots, and snapshot actions
  7205   - tests: skip interfaces-content test on core devices
  7206   - cmd: generalize locking to global, snap and per-user locks
  7207   - release-tools: handle the snapd-x.y.z version
  7208   - packaging: fix incorrectly auto-generated changelog entry for
  7209     2.32.5
  7210   - tests: add arch to CI
  7211   - systemd: add helper for opening stream file descriptors to the
  7212     journal
  7213   - cmd/snap: handle distros with no version ID
  7214   - many: add "stop-mode: sig{term,hup,usr[12]}{,-all}" instead of
  7215     conflating that with refresh-mode
  7216   - tests: removing linode-sru backend
  7217   - tests: updating bionic version for spread tests on google
  7218   - overlord/snapstate: poll for up to 10s if a snap is unexpectedly
  7219     not mounted in doMountSnap
  7220   - overlord/snapstate: allow to get an error from readInfo instead of
  7221     a broken stub, use it in doMountSnap
  7222   - snap: snap.AppInfo is now a fmt.Stringer
  7223   - tests: move fedora 27 to google backend
  7224   - many: add `core.problem-reports.disabled` option
  7225   - cmd/snap-update-ns: remove the need for stash directory in secure
  7226     bind mount implementation
  7227   - errtracker: check for whoopsie.service instead of reading
  7228     /etc/whoopsie
  7229   - cmd/snap: user session application autostart v3
  7230   - tests: add test to ensure `snap refresh --amend` works with
  7231     different channels
  7232   - tests: add check for OOM error after each test
  7233   - cmd/snap-seccomp: graceful handling of non-multilib host
  7234   - interfaces/shutdown: allow calling SetWallMessage
  7235   - cmd/snap-update-ns: add secure bind mount implementation for use
  7236     with user mounts
  7237   - snap: fix `snap advise-snap --command` output to match spec
  7238   - overlord/snapstate: on multi-snap refresh make sure bases and core
  7239     are finished before dependent snaps
  7240   - overlord/snapstate: introduce envvars to control the channels for
  7241     based and prereqs
  7242   - cmd/snap-confine: ignore missing cgroups in snap-device-helper
  7243   - debian: add gbp.conf script to build snapd via `gbp buildpackage`
  7244   - daemon,overlord/hookstate: stop/wait for running hooks before
  7245     closing the snapctl socket
  7246   - advisor: use json for package database
  7247   - interfaces/hostname-control: allow setting the hostname via
  7248     syscall and systemd
  7249   - tests/main/interfaces-opengl-nvidia: verify access to 32bit
  7250     libraries
  7251   - interfaces: misc updates for default, firewall-control, fuse-
  7252     support and process-control
  7253   - data/selinux: Give snapd access to more aspects of the system
  7254   - many: use the new install/refresh API by switching snapstate to
  7255     use store.SnapAction
  7256   - errtracker: make TestJournalErrorSilentError work on gccgo
  7257   - ifacestate: add to the repo also snaps that are pending being
  7258     activated but have a done setup-profiles
  7259   - snapstate, ifacestate: inject auto-connect tasks try 2
  7260   - cmd/snap-confine: allow creating missing gl32, gl, vulkan dirs
  7261   - errtracker: add more fields to aid debugging
  7262   - interfaces: make system-key more robust against invalid fstab
  7263     entries
  7264   - overlord,interfaces: be more vocal about broken snaps and read
  7265     errors
  7266   - ifacestate: injectTasks helper
  7267   - osutil: fix fstab parser to allow for # in field values
  7268   - cmd/snap-mgmt: remove timers, udev rules, dbus policy files
  7269   - release-tools: add repack-debian-tarball.sh
  7270   - daemon,client: add build-id to /v2/system-info
  7271   - cmd: make fmt (indent 2.2.11)
  7272   - interfaces/content: add rule so slot can access writable files at
  7273     plug's mountpoint
  7274   - interfaces: add /var/lib/snapd/snap to @{INSTALL_DIR}
  7275   - ifacestate: don't surface errors from stale connections
  7276   - cmd/snap-update-ns: convert Secure* family of functions into
  7277     methods
  7278   - tests: adjust canonical-livepatch test on GCE
  7279   - tests: fix quoting issues in econnreset test
  7280   - cmd/snap-confine: make /run/media an alias of /media
  7281   - cmd/snap-update-ns: rename i to segNum
  7282   - interfaces/serial: change pattern not to exclude /dev/ttymxc*
  7283   - spread: disable StartLimitInterval option on opensuse-42.3
  7284   - configstate: give a chance to immediately recompute the next
  7285     refresh time when schedules are set
  7286   - cmd/snap-confine: attempt to detect if multiarch host uses
  7287     arch triplets
  7288   - store: add Store.SnapAction to support the new install/refresh API
  7289     endpoint
  7290   - tests: adding test for removable-media interface
  7291   - tests: update interface tests to remove extra checks and normalize
  7292     tests
  7293   - timeutil: in Human, count days with fingers
  7294   - vendor: update gopkg.in/yaml.v2 to the latest version
  7295   - cmd/snap-confine: fix Archlinux compatibility
  7296   - cmd/snapd: make sure signal handlers are established during early
  7297     daemon startup
  7298   - cmd/snap-confine: apparmor: allow creating prefix path for
  7299     gl/vulkan
  7300   - osutil: use tilde suffix for temporary files used for atomic
  7301     replacement
  7302   - tests: copy or sanity check core users using usernames
  7303   - tests: disentangle etc vs extrausers in core tests
  7304   - tests: fix snap-run tests when snapd is not running
  7305   - overlord/configstate: change how ssh is stopped/started
  7306   - snap: make `snap run` look at the system-key for security profiles
  7307   - strutil, cmd/snap: drop strutil.WordWrap, first pass at
  7308     replacement
  7309   - tests: adding opensuse-42.3 to google
  7310   - cmd/snap: fix one issue with noWait error handling logic, add
  7311     tests plus other cleanups
  7312   - cmd/snap-confine: nvidia: preserve globbed file prefix
  7313   - advisor: add comment why osutil.FileExists(dirs.SnapCommandsDB) is
  7314     needed
  7315   - interfaces,release: probe seccomp features lazily
  7316   - tests: change debug for layout test
  7317   - advisor: deal with missing commands.db file
  7318   - interfaces/apparmor: simplify UpdateNS internals
  7319   - polkit: Pass caller uid to PolicyKit authority
  7320   - tests: moving debian 9 from linode to google backend
  7321   - cmd/snap-confine: nvidia: add tls/libnvidia-tls.so* glob
  7322   - po: specify charset in po/snappy.pot
  7323   - interfaces: harden snap-update-ns profile
  7324   - snap: Call SanitizePlugsSlots from InfoFromSnapYaml
  7325   - tests: update tests to deal with s390x quirks
  7326   - debian: run snap.mount upgrade fixup *before* debhelper
  7327   - tests: move xenial i386 to google backend
  7328   - snapstate: add compat mode for default-provider
  7329   - tests: a bunch of test fixes for s390x from looking at the
  7330     autopkgtest logs
  7331   - packaging: recommend "gnupg" instead of "gnupg1 | gnupg"
  7332   - interfaces/builtin: let MM change qmi device attributes
  7333   - tests: add workaround for s390x failure
  7334   - snap/pack, cmd/snap: add `snap pack --check-skeleton`
  7335   - daemon: support 'system' as nickname of the core snap
  7336   - cmd/snap-update-ns: use x-snapd.{synthetic,needed-by} in practice
  7337   - devicestate: add DeviceManager.Registered returning a channel
  7338     closed when the device is known to be registered
  7339   - store: Sections and WriteCatalogs need to strictly send device
  7340     auth only if the device has a custom store
  7341   - tests: add bionic system to google backend
  7342   - many: fix shellcheck warnings in bionic
  7343   - cmd/snap-update-ns: don't fail on existing symlinks
  7344   - tests: make autopkgtest tests more targeted
  7345   - cmd/snap-update-ns: fix creation of layout symlinks
  7346   - spread,tests: move suite-level prepare/restore to central script
  7347   - many: propagate contexts enough to be able to mark store
  7348     operations done from the Ensure loop
  7349   - snap: don't create empty Change with "Hold" state on disconnect
  7350   - snap: unify snap name validation w/python; enforce length limit.
  7351   - cmd/snap: use shlex when parsing `snap run --strace` arguments
  7352   - osutil,testutil: add symlinkat(2) and readlinkat(2)
  7353   - tests: autopkgtest may have non edge core too
  7354   - tests: adding checks before stopping snapd service to avoid job
  7355     canceled on ubuntu 14.04
  7356   - errtracker: respect the /etc/whoopsie configuration
  7357   - overlord/snapstate:  hold refreshes for 2h after seeding on
  7358     classic
  7359   - cmd/snap: tweak and polish help strings
  7360   - snapstate: put layout feature behind feature flag
  7361   - tests: force profile re-generation via system-key
  7362   - snap/squashfs: when installing from seed, try symlink before cp
  7363   - wrappers: services which are socket or timer activated should not
  7364     be started during boot
  7365   - many: go vet cleanups
  7366   - tests: define MATCH from spread
  7367   - packaging/fedora: Merge changes from Fedora Dist-Git plus trivial
  7368     fix
  7369   - cmd/snap: use timeutil.Human to show times in `snap refresh
  7370     --time`
  7371   - cmd/snap: in changes and tasks, default to human-friendly times
  7372   - many: support holding refreshes by setting refresh.hold
  7373   - Revert "cmd/snap: use timeutil.Human to show times in `snap
  7374     refresh -…-time`"
  7375   - cmd/snap: use timeutil.Human to show times in `snap refresh
  7376     --time`
  7377   - tests/main/snap-service-refresh-mode: refactor the test to rely on
  7378     comparing PIDs
  7379   - tests/main/media-sharing: improve the test to cover /media and
  7380     /run/media
  7381   - store: enable deltas for core devices too
  7382   - cmd/snap: unhide --no-wait; make wait use go via waitMixin
  7383   - strutil/shlex: import github.com/google/shlex into the tree
  7384   - vendor: update github.com/mvo5/libseccomp-golang
  7385   - overlord/snapstate: block install of "system"
  7386   - cmd/snap: "current"→"installed"; "refreshed"→"refresh-date"
  7387   - many: add the snapd-generator
  7388   - cmd/snap-seccomp: Cancel the atomic file on error, not just Close
  7389   - polkit: ensure error is properly set if dialog is dismissed
  7390   - snap-confine, snap-seccomp: utilize new seccomp logging features
  7391   - progress: tweak ansimeter cvvis use to no longer confuse minicom
  7392   - xdgopenproxy: integrate xdg-open implementation into snapctl
  7393   - tests: avoid removing preinstalled snaps on core
  7394   - tests: chroot into core to run xdg-open there
  7395   - userd: add an OpenFile method for launching local files with xdg-
  7396     open
  7397   - tests: moving ubuntu core from linode to google backend
  7398   - run-checks: remove accidental bashism
  7399   - i18n: simplify NG usage by doing the modulo math in-package.
  7400   - snap/squashfs: set timezone when calling unsquashfs to get the
  7401     build date
  7402   - timeutil: timeutil.Human(t) gives a human-friendly string for t
  7403   - snap: add autostart app property
  7404   - tests: add support for external backend executions on listing test
  7405   - tests: make interface-broadcom-asic-control test work on rpi
  7406   - configstate: when disable "ssh" we must disable the "sshd" service
  7407   - interfaces/apparmor,system-key: add upperdir snippets for strict
  7408     snaps on livecd
  7409   - snap/squashfs: add BuildDate
  7410   - store: parse the JSON format used by the coming new store API to
  7411     convey snap information
  7412   - many: remove snapd.refresh.{timer,service}
  7413   - tests: adding ubuntu-14.04-64 to the google backend
  7414   - interfaces: add xdg-desktop-portal support to desktop interface
  7415   - packaging/arch: sync with snapd/snapd-git from AUR
  7416   - wrappers, tests/main/snap-service-timer: restore missing commit,
  7417     add spread test for timer services
  7418   - store: don't ask for snap_yaml_raw except on the details endpoint
  7419   - many: generate and use per-snap snap-update-ns profile
  7420   - tests: add debug for layout test
  7421   - wrappers: detect whether systemd-analyze can be used in unit tests
  7422   - osutil: allow creating strings out of MountInfoEntry
  7423   - servicestate: use systemctl enable+start and disable+stop instead
  7424     of --now flag
  7425   - osutil: handle file being matched by multiple patterns
  7426   - daemon, snap: fix InstallDate, make a method of *snap.Info
  7427   - wrappers: timer services
  7428   - wrappers: generator for systemd OnCalendar schedules
  7429   - asserts: fix flaky storeSuite.TestCheckAuthority
  7430   - tests: fix dependency for ubuntu artful
  7431   - spread: start moving towards google backend
  7432   - tests: add a spread test for layouts
  7433   - ifacestate: be consistent passing Retry.After as named field
  7434   - cmd/snap-update-ns: use recursive bind mounts for writable mimic
  7435   - testutil: allow mocking syscall.Fstat
  7436   - overlord/snapstate: verify that default schedule is randomized and
  7437     is  not a single time
  7438   - many: simplify mocking of home-on-NFS
  7439   - cmd/snap-update-ns: use syscall.Symlink instead of os.Symlink
  7440   - store: move infoFromRemote into details.go close to snapDetails
  7441   - userd/tests: Test kdialog calls and mock kdialog too to make tests
  7442     work in KDE
  7443   - cmd/snap: tweaks to 'snap info' (feat. installed->current rename)
  7444   - cmd/snap: add self-strace to `snap run`
  7445   - interfaces/screen-inhibit-control,network-status: fix dbus path
  7446     and interface typos
  7447   - update-pot: Force xgettext() to return true
  7448   - store: cleanup test naming, dropping remoteRepo  and
  7449     UbuntuStore(Repository)? references
  7450   - store: reorg auth refresh
  7451  
  7452  * Wed May 16 2018 Michael Vogt <mvo@ubuntu.com>
  7453  - New upstream release 2.32.9
  7454   - tests: run all spread tests inside GCE
  7455   - tests: build spread in the autopkgtests with a more recent go
  7456  
  7457  * Fri May 11 2018 Michael Vogt <mvo@ubuntu.com>
  7458  - New upstream release 2.32.8
  7459   - snapd.core-fixup.sh: add workaround for corrupted uboot.env
  7460  
  7461  * Fri May 11 2018 Michael Vogt <mvo@ubuntu.com>
  7462  - New upstream release 2.32.7
  7463   - many: add wait command and seeded target (2
  7464   - snapd.core-fixup.sh: add workaround for corrupted uboot.env
  7465   - boot: clear "snap_mode" when needed
  7466   - cmd/libsnap: fix compile error on more restrictive gcc
  7467   - tests: cherry-pick commits to move spread to google backend
  7468   - spread.yaml: add cosmic (18.10) to autopkgtest/qemu
  7469   - userd: set up journal logging streams for autostarted apps
  7470  
  7471  * Sun Apr 29 2018 Michael Vogt <mvo@ubuntu.com>
  7472  - New upstream release 2.32.6
  7473   - snap: do not use overly short timeout in `snap
  7474     {start,stop,restart}`
  7475   - interfaces/apparmor: fix incorrect apparmor profile glob
  7476   - tests: detect kernel oops during tests and abort tests in this
  7477     case
  7478   - tests: run interfaces-boradcom-asic-control early
  7479   - tests: skip interfaces-content test on core devices
  7480  
  7481  * Mon Apr 16 2018 Michael Vogt <mvo@ubuntu.com>
  7482  - New upstream release 2.32.5
  7483   - many: add "stop-mode: sig{term,hup,usr[12]}{,-all}" instead of
  7484     conflating that with refresh-mode
  7485   - overlord/snapstate:  poll for up to 10s if a snap is unexpectedly
  7486     not mounted in doMountSnap
  7487   - daemon: support 'system' as nickname of the core snap
  7488  
  7489  * Thu Apr 12 2018 Neal Gompa <ngompa13@gmail.com> - 2.32.4-1
  7490  - Release 2.32.4 to Fedora (RH#1553734)
  7491  
  7492  * Wed Apr 11 2018 Michael Vogt <mvo@ubuntu.com>
  7493  - New upstream release 2.32.4
  7494   - cmd/snap: user session application autostart
  7495   - overlord/snapstate: introduce envvars to control the channels for
  7496     bases and prereqs
  7497   - overlord/snapstate: on multi-snap refresh make sure bases and core
  7498     are finished before dependent snaps
  7499   - many: use the new install/refresh /v2/snaps/refresh store API
  7500  
  7501  * Wed Apr 11 2018 Michael Vogt <mvo@ubuntu.com>
  7502  - New upstream release 2.32.3.2
  7503   - errtracker: make TestJournalErrorSilentError work on
  7504     gccgo
  7505   - errtracker: check for whoopsie.service instead of reading
  7506     /etc/whoopsie
  7507  
  7508  * Wed Apr 11 2018 Michael Vogt <mvo@ubuntu.com>
  7509  - New upstream release 2.32.3.1
  7510   - debian: add gbp.conf script to build snapd via `gbp
  7511     buildpackage`
  7512   - tests: add check for OOM error after each test
  7513   - cmd/snap-seccomp: graceful handling of non-multilib host
  7514   - interfaces/shutdown: allow calling SetWallMessage
  7515   - data/selinux: Give snapd access to more aspects of the system
  7516   - daemon,overlord/hookstate: stop/wait for running hooks before
  7517     closing the snapctl socket
  7518   - cmd/snap-confine: ignore missing cgroups in snap-device-helper
  7519   - interfaces: misc updates for default, firewall-control, fuse-
  7520     support and process-control
  7521   - overlord: test fix, address corner case
  7522  
  7523  * Thu Apr 05 2018 Michael Vogt <mvo@ubuntu.com>
  7524  - New upstream release 2.32.3
  7525   - ifacestate: add to the repo also snaps that are pending being
  7526     activated but have a done setup-profiles
  7527   - snapstate: inject autoconnect tasks in doLinkSnap for regular
  7528     snaps
  7529   - cmd/snap-confine: allow creating missing gl32, gl, vulkan dirs
  7530   - errtracker: add more fields to aid debugging
  7531   - interfaces: make system-key more robust against invalid fstab
  7532     entries
  7533   - cmd/snap-mgmt: remove timers, udev rules, dbus policy files
  7534   - overlord,interfaces: be more vocal about broken snaps and read
  7535     errors
  7536   - osutil: fix fstab parser to allow for # in field values
  7537  
  7538  * Sat Mar 31 2018 Michael Vogt <mvo@ubuntu.com>
  7539  - New upstream release 2.32.2
  7540   - interfaces/content: add rule so slot can access writable files at
  7541     plug's mountpoint
  7542   - tests: adjust canonical-livepatch test on GCE
  7543   - interfaces/serial: change pattern not to exclude /dev/ttymxc
  7544   - spread.yaml: switch Fedora 27 tests to manual
  7545   - store: Sections and WriteCatalogs need to strictly send device
  7546     auth only if the device has a custom store
  7547   - configstate: give a chance to immediately recompute the next
  7548     refresh time when schedules are set
  7549   - cmd/snap-confine: attempt to detect if multiarch host uses arch
  7550     triplets
  7551   - vendor: update gopkg.in/yaml.v2 to the latest version (#4945)
  7552  
  7553  * Mon Mar 26 2018 Michael Vogt <mvo@ubuntu.com>
  7554  - New upstream release 2.32.1
  7555   - cmd/snapd: make sure signal handlers are established during early
  7556     daemon startup
  7557   - osutil: use tilde suffix for temporary files used for atomic
  7558     replacement
  7559   - cmd/snap-confine: apparmor: allow creating prefix path for
  7560     gl/vulkan
  7561   - tests: disentangle etc vs extrausers in core tests
  7562   - packaging: fix changelogs' typo
  7563  
  7564  * Sat Mar 24 2018 Michael Vogt <mvo@ubuntu.com>
  7565  - New upstream release 2.32
  7566   - snap: make `snap run` look at the system-key for security profiles
  7567   - overlord/configstate: change how ssh is stopped/started
  7568   - cmd/snap-confine: nvidia: preserve globbed file prefix
  7569   - advisor: deal with missing commands.db file
  7570   - interfaces,release: probe seccomp features lazily
  7571   - interfaces: harden snap-update-ns profile
  7572   - polkit: Pass caller uid to PolicyKit authority
  7573   - tests: change debug for layout test
  7574   - cmd/snap-confine: don't use per-snap s-u-n profile
  7575   - many: backported fixes for layouts and symlinks
  7576   - cmd/snap-confine: nvidia: add tls/libnvidia-tls.so* glob
  7577   - cmd/snap-update-ns: use x-snapd.{synthetic,needed-by} in practice
  7578   - snap: Call SanitizePlugsSlots from InfoFromSnapYaml
  7579   - cmd/snap-confine: fix ptrace rule with snap-confine peer
  7580   - tests: update tests to deal with s390x quirks
  7581   - snapstate: add compat mode for default-provider"snapname:ifname"
  7582   - snap-confine: fallback to /lib/udev/snappy-app-dev if the core is
  7583     older
  7584   - tests: a bunch of test fixes for s390x from looking at the
  7585     autopkgtest logs
  7586   - packaging: recommend "gnupg" instead of "gnupg1 | gnupg"
  7587   - interfaces/builtin: let MM change qmi device attributes
  7588   - debian: undo snap.mount system unit removal
  7589   - snap: don't create empty Change with "Hold" state on disconnect
  7590   - tests: add workaround for s390x failure
  7591   - tests: make autopkgtest tests more targeted
  7592   - many: propagate contexts enough to be able to mark store
  7593     operations done from the Ensure loop
  7594   - store: cleanup test naming, dropping remoteRepo and
  7595     UbuntuStore(Repository)? references
  7596   - store: reorg auth refresh
  7597   - tests: autopkgtest may have non edge core too
  7598   - data: translate polkit strings
  7599   - snapstate: put layout feature behind feature flag
  7600   - errtracker: respect the /etc/whoopsie configuration
  7601   - overlord/snapstate: hold refreshes for 2h after seeding on classic
  7602   - many: cherry-pick relevant `go vet` 1.10 fixes to 2.32
  7603   - snap/squashfs: when installing from seed, try symlink before cp
  7604   - wrappers: services which are socket or timer activated should not
  7605     be started during boot
  7606   - many: generate and use per-snap snap-update-ns profile
  7607   - many: support holding refreshes by setting refresh.hold
  7608   - snap-confine, snap-seccomp: utilize new seccomp logging features
  7609   - many: remove snapd.refresh.{timer,service}
  7610   - many: add the snapd-generator
  7611   - polkit: do not shadow dbus errors, avoid panic in case of errors
  7612   - polkit: ensure error is properly set if dialog is dismissed
  7613   - xdgopenproxy: integrate xdg-open implementation into snapctl
  7614   - userd: add an OpenFile method for launching local files with xdg-
  7615     open
  7616   - asserts:  use a timestamp for the assertion after the signing key
  7617     has been created
  7618   - ifacestate: be consistent passing Retry.After as named field
  7619   - interfaces/apparmor,system-key: add upperdir snippets for strict
  7620     snaps on livecd
  7621     interfaces/apparmor,system-key: add upperdir snippets for strict
  7622     snaps
  7623   - configstate: when disable "ssh" we must disable the "sshd"
  7624     service
  7625   - store: don't ask for snap_yaml_raw except on the details endpoint
  7626   - osutil: handle file being matched by multiple patterns
  7627   - cmd/snap-update-ns: use recursive bind mounts for writable mimic
  7628   - cmd/snap-update-ns: use syscall.Symlink instead of os.Symlink
  7629   - interfaces/screen-inhibit-control,network-status: fix dbus path
  7630     and interface typos
  7631   - interfaces/network-status: fix use of '/' in interface in DBus
  7632     rule
  7633   - interfaces/screen-inhibit-control: fix use of '.' in path in DBus
  7634     rule
  7635   - overlord/snapstate: fix task iteration order in
  7636     TestDoPrereqRetryWhenBaseInFlight
  7637   - interfaces: add an interface for gnome-online-accounts D-Bus
  7638     service
  7639   - snap: pass full timer spec in `snap run --timer`
  7640   - cmd/snap: introduce `snap run --timer`
  7641   - snapstate: auto install default-providers for content snaps
  7642   - hooks/strutil: limit the number of data read from the hooks to
  7643     avoid oom
  7644   - osutil: aggregate mockable symbols
  7645   - tests: make sure snapd is running before attempting to remove
  7646     leftover snaps
  7647   - timeutil: account for 24h wrap when flattening clock spans
  7648   - many: send  new Snap-CDN header with none or with cloud instance
  7649     placement info as needed
  7650   - cmd/snap-update-ns,testutil: move syscall testing helpers
  7651   - tests: disable interfaces-location-control on s390x
  7652   - tests: new spread test for gpio-memory-control interface
  7653   - tests: spread test for broadcom-asic-control interface
  7654   - tests: make restore of interfaces-password-manager-service more
  7655     robust
  7656   - tests/lib/prepare-restore: sync journal before rotating and
  7657     vacuuming
  7658   - overlord/snapstate: use spread in the default refresh schedule
  7659   - tests: fixes for autopkgtest in bionic
  7660   - timeutil: introduce helpers for checking it time falls inside the
  7661     schedule
  7662   - cmd/snap-repair,httputil: set snap-repair User-Agent on requests
  7663   - vendor: resync formatting of vendor.json
  7664   - snapstate/ifacestate: auto-connect tasks
  7665   - cmd/snap: also include tracking channel in list output.
  7666   - interfaces/apparmor: use snap revision with surrounding '.' when
  7667     replacing in glob
  7668   - debian,vendor: import github.com/snapcore/squashfs and use
  7669   - many: implement "refresh-mode: {restart,endure,...}" for services
  7670   - daemon: make the ast-inspecting test smarter; drop 'exceptions'
  7671   - tests: new spread test for kvm interface
  7672   - cmd/snap: tweaks to 'snap info' output
  7673   - snap: remove underscore from version validator regexp
  7674   - testutil: add File{Matches,Equals,Contains} checkers.
  7675   - snap: improve the version validator's error messages.
  7676   - osutil: refactor EnsureFileState to separate out the comparator
  7677   - timeutil: fix scheduling on nth weekday of the month
  7678   - cmd/snap-update-ns: small refactor for upcoming per-user mounts
  7679   - many: rename snappy-app-dev to snap-device-helper
  7680   - systemd: add default target for timers
  7681   - interfaces: miscellaneous policy updates for home, opengl, time-
  7682     control, network, et al
  7683   - cmd/snap: linter cleanups
  7684   - interfaces/mount: generate per-user mount profiles
  7685   - cmd/snap: use proper help strings for `snap userd --help`
  7686   - packaging: provide a compat symlink for snappy-app-dev
  7687   - interfaces/time-control,netlink-audit: adjust for util-linux
  7688     compiled with libaudit
  7689   - tests: adding new test to validate the raw-usb interface
  7690   - snap: add support for `snap run --gdb`
  7691   - interfaces/builtin: allow MM to access login1
  7692   - packaging: fix build on sbuild
  7693   - store: revert PR#4532 and do not display displayname
  7694   - interfaces/mount: add support for per-user mount entries
  7695   - cmd/system-shutdown: move sync to be even more pessimistic
  7696   - osutil: reimplement IsMounted with LoadMountInfo
  7697   - tests/main/ubuntu-core-services: enable snapd.refresh.timer for
  7698     the test
  7699   - many: don't allow layout construction to silently fail
  7700   - interfaces/apparmor: ensure snap-confine profile for reexec is
  7701     current
  7702   - interfaces/apparmor: generalize apparmor load and unload helpers
  7703   - tests: removing packages which are not needed anymore to generate
  7704     random data
  7705   - snap: improve `snap run` comments/naming
  7706   - snap: allow options for --strace, e.g. `snap run --strace="-tt"`
  7707   - tests: fix spread test failures on 18.04
  7708   - systemd: update comment on SocketsTarget
  7709   - osutil: add and update docstrings
  7710   - osutil: parse mount entries without options field
  7711   - interfaces: mock away real mountinfo/fstab
  7712   - many: move /lib/udev/snappy-app-dev to /usr/lib/snapd/snappy-app-
  7713     dev
  7714   - overlord/snapstate/backend: perform cleanup if snap setup fails
  7715   - tests/lib/prepare: disable snapd.refresh.timer
  7716   - daemon: remove redundant UserOK markings from api commands
  7717   - snap: introduce  timer service data types and validation
  7718   - cmd/snap: fix UX of snap services
  7719   - daemon: allow `snapctl get` from any uid
  7720   - debian, snap: only static link libseccomp in snap-seccomp on
  7721     ubuntu
  7722   - all: snap versions are now validated
  7723   - many: add nfs-home flag to system-key
  7724   - snap: disallow layouts in various special directories
  7725   - cmd/snap: add help for service commands.
  7726   - devicestate: fix autopkgtest failure in
  7727     TestDoRequestSerialErrorsOnNoHost
  7728   - snap,interfaces: allow using bind-file layouts
  7729   - many: move mount code to osutil
  7730   - snap: understand directories in layout blacklist
  7731   - snap: use custom unsquashfsStderrWriter for unsquashfs error
  7732     detection
  7733   - tests/main/user-data-handling: get rid of ordering bug
  7734   - snap: exclude `gettimeofday` from `snap run --strace`
  7735   - tests: check if snapd.socket is active before stoping it
  7736   - snap: sort layout elements before validating
  7737   - strutil: introducing MatchCounter
  7738   - snap: detect unsquashfs write failures
  7739   - spread: add missing ubuntu-18.04-arm64 to available autopkgtest
  7740     machines
  7741   - cmd/snap-confine: allow mounting anywhere, effectively
  7742   - daemon: improve ucrednet code for the snap.socket
  7743   - release, interfaces: add new release.AppArmorFeatures helper
  7744   - snap: apply some golint suggestions
  7745   - many: add interfaces.SystemKey() helper
  7746   - tests: new snaps to test installs nightly
  7747   - tests: skip alsa interface test when the system does not have any
  7748     audio devices
  7749   - debian/rules: workaround for
  7750     https://github.com/golang/go/issues/23721
  7751   - interfaces/apparmor: early support for snap-update-ns snippets
  7752   - wrappers: cleanup enabled service sockets
  7753   - cmd/snap-update-ns: large refactor / update of unit tests
  7754   - interfaces/apparmor: remove leaked future layout code
  7755   - many: allow constructing layouts (phase 1)
  7756   - data/systemd: for debugging/testing use /etc/environment also for
  7757     snap-repair runs
  7758   - cmd/snap-confine: create lib/{gl,gl32,vulkan} under /var/lib/snapd
  7759     and chown as root:root
  7760   - overlord/configstate/config: make [GS]etSnapConfig use *RawMessage
  7761   - daemon: refactor snapFooMany helpers a little
  7762   - cmd/snap-confine: allow snap-update-ns to chown things
  7763   - interfaces/apparmor: use a helper to set the scope
  7764   - overlord/configstate/config: make SetSnapConfig delete on empty
  7765   - osutil: make MkdirAllChown clean the path passed in
  7766   - many: at seeding try to capture cloud information into core config
  7767     under "cloud"
  7768   - cmd/snap: add completion conversion helper to increase DRY
  7769   - many: remove "content" argument from snaptest.MockSnap()
  7770   - osutil: allow using many globs in EnsureDirState
  7771   - cmd/snap-confine: fix read-only filesystem when mounting nvidia
  7772     files in biarch
  7773   - tests: use root path to /home/test/tmp to avoid lack of space
  7774     issue
  7775   - packaging: create /var/lib/snapd/lib/{gl,gl32,vulkan} as part of
  7776     packaging
  7777   - tests: update kill-timeout focused on making tests pass on boards
  7778   - advisor: ensure commands.db has mode 0644 and add test
  7779   - snap: improve validation of snap layouts
  7780   - tests: ensure disabled services are masked
  7781   - interfaces/desktop-legacy,unity7: support gtk2/gvfs gtk_show_uri()
  7782   - systemd, wrappers: start all snap services in one systemctl call
  7783   - mir: software clients need access to shared memory /dev/shm/#*
  7784   - snap: add support for `snap advise-snap pkgName`
  7785   - snap: fix command-not-found on core devices
  7786   - tests: new spead test for openvswitch-support interface
  7787   - tests: add integration for local snap licenses
  7788   - config: add (Get|Set)SnapConfig to do bulk config e.g. from
  7789     snapshots
  7790   - cmd/snap: display snap license information
  7791   - tests: enable content sharing test for $SNAP
  7792   - osutil: add ContextWriter and RunWithContext helpers.
  7793   - osutil: add DirExists and IsDirNotExist
  7794  
  7795  * Fri Mar 09 2018 Michael Vogt <mvo@ubuntu.com>
  7796  - New upstream release 2.31.2
  7797   - many: add the snapd-generator
  7798   - polkit: ensure error is properly set if dialog is dismissed
  7799   - xdgopenproxy: integrate xdg-open implementation into snapctl
  7800   - userd: add an OpenFile method for launching local files with xdg-
  7801     open
  7802   - configstate: when disable "ssh" we must disable the "sshd"
  7803     service
  7804   - many: remove snapd.refresh.{timer,service}
  7805   - interfaces/builtin: allow MM to access login1
  7806   - timeutil: account for 24h wrap when flattening clock spans
  7807   - interfaces/screen-inhibit-control,network-status: fix dbus path
  7808     and interface typos
  7809   - systemd, wrappers: start all snap services in one systemctl
  7810     call
  7811   - tests: disable interfaces-location-control on s390x
  7812  
  7813  * Mon Mar 05 2018 Neal Gompa <ngompa13@gmail.com> - 2.31.1-2
  7814  - Fix dependencies for devel subpackage
  7815  
  7816  * Sun Mar 04 2018 Neal Gompa <ngompa13@gmail.com> - 2.31.1-1
  7817  - Release 2.31.1 to Fedora (RH#1542483)
  7818  - Drop all backported patches as they're part of this release
  7819  
  7820  * Tue Feb 20 2018 Michael Vogt <mvo@ubuntu.com>
  7821  - New upstream release 2.31.1
  7822   - tests: multiple autopkgtest related fixes for 18.04
  7823   - overlord/snapstate: use spread in the default refresh schedule
  7824   - timeutil: fix scheduling on nth weekday of the month
  7825   - interfaces: miscellaneous policy updates for home, opengl, time-
  7826     control, network, et al
  7827   - cmd/snap: use proper help strings for `snap userd --help`
  7828   - interfaces/time-control,netlink-audit: adjust for util-linux
  7829     compiled with libaudit
  7830   - rules: do not static link on powerpc
  7831   - packaging: revert LDFLAGS rewrite again after building snap-
  7832     seccomp
  7833   - store: revert PR#4532 and do not display displayname
  7834   - daemon: allow `snapctl get` from any uid
  7835   - debian, snap: only static link libseccomp in snap-seccomp on
  7836     ubuntu
  7837   - daemon: improve ucrednet code for the snap.socket
  7838  
  7839  * Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.30-2
  7840  - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
  7841  
  7842  * Tue Feb 06 2018 Michael Vogt <mvo@ubuntu.com>
  7843  - New upstream release 2.31
  7844   - cmd/snap-confine: allow snap-update-ns to chown things
  7845   - cmd/snap-confine: fix read-only filesystem when mounting nvidia
  7846     files in biarch
  7847   - packaging: create /var/lib/snapd/lib/{gl,gl32,vulkan} as part of
  7848     packaging
  7849   - advisor: ensure commands.db has mode 0644 and add test
  7850   - interfaces/desktop-legacy,unity7: support gtk2/gvfs gtk_show_uri()
  7851   - snap: improve validation of snap layoutsRules for validating
  7852     layouts:
  7853   - snap: fix command-not-found on core devices
  7854   - cmd/snap: display snap license information
  7855   - tests: enable content sharing test for $SNAP
  7856   - userd: add support for a simple UI that can be used from userd
  7857   - snap-confine/nvidia: Support legacy biarch trees for GLVND systems
  7858   - tests: generic detection of gadget and kernel snaps
  7859   - cmd/snap-update-ns: refactor and improve Change.Perform to handle
  7860     EROFS
  7861   - cmd/snap: improve output when snaps were found in a section or the
  7862     section is invalid
  7863   - cmd/snap-confine,tests: hide message about stale base snap
  7864   - cmd/snap-mgmt: fix out of source tree build
  7865   - strutil/quantity: new package that exports formatFoo (from
  7866     progress)
  7867   - cmd/snap: snap refresh --time with new and legacy schedules
  7868   - state: unknown tasks handler
  7869   - cmd/snap-confine,data/systemd: fix removal of snaps inside LXD
  7870   - snap: add io.snapcraft.Settings to `snap userd`
  7871   - spread: remove more EOLed releases
  7872   - snap: tidy up top-level help output
  7873   - snap: fix race in `snap run --strace`
  7874   - tests: update "searching" test to match store changes
  7875   - store: use the "publisher" when populating the "publisher" field
  7876   - snap: make `snap find --section` show all sections
  7877   - tests: new test to validate location control interface
  7878   - many: add new `snap refresh --amend <snap>` command
  7879   - tests/main/kernel-snap-refresh-on-core: skip the whole test if
  7880     edge and stable are the same version
  7881   - tests: set test kernel-snap-refresh-on-core to manual
  7882   - tests: new spread test for interface gpg-keys
  7883   - packaging/fedora: Merge changes from Fedora Dist-Git plus trivial
  7884     fix
  7885   - interfaces: miscellaneous policy updates
  7886   - interfaces/builtin: Replace Solus support with GLVND support
  7887   - tests/main/kernel-snap-refresh-on-core: do not fail if edge and
  7888     stable kernels are the same version
  7889   - snap: add `snap run --strace` to be able to strace snap apps
  7890   - tests: new spread test for ssh-keys interface
  7891   - errtracker: include detected virtualisation
  7892   - tests: add new kernel refresh/revert test for spread-cron
  7893   - interfaces/builtin: blacklist zigbee dongle
  7894   - cmd/snap-confine: discard stale mount namespaces
  7895   - cmd: remove unused execArg0/execEnv
  7896   - snap,interfaces/mount: disallow nobody/nogroup
  7897   - cmd/snap: improve `snap aliases` output when no aliases are
  7898     defined
  7899   - tests/lib/snaps/test-snapd-service: refactor service reload
  7900   - tests: new spread test for gpg-public-keys interface
  7901   - tests: new spread test for ssh-public-keys interface
  7902   - spread: setup machine creation on Linode
  7903   - interfaces/builtin: allow introspecting UDisks2
  7904   - interfaces/builtin: add support for content "source" section
  7905   - tests: new spread test for netlink-audit interface
  7906   - daemon: avoid panic'ing building an error response w/no snaps
  7907     given
  7908   - interfaces/mount,snap: early support for snap layouts
  7909   - daemon: unlock state even if RefreshSchedule() fails
  7910   - arch: add "armv8l" to ubuntuArchFromKernelArch table
  7911   - tests: fix for test interface-netlink-connector
  7912   - data/dbus: add AssumedAppArmorLabel=unconfined
  7913   - advisor: use forked bolt to make it work on ppc
  7914   - overlord/snapstate: record the 'kind' of conflicting change
  7915   - dirs: fix snap mount dir on Manjaro
  7916   - overlord/{snapstate,configstate}, daemon: introduce refresh.timer,
  7917     fallback to refresh.schedule
  7918   - config: add support for `snap set core proxy.no_proxy=...`
  7919   - snap-mgmt: extend spread tests, stop, disable and cleanup snap
  7920     services
  7921   - spread.yaml: add fedora 27
  7922   - cmd/snap-confine: allow snap-update-ns to poke writable holes in
  7923     $SNAP
  7924   - packaging/14.04: move linux-generic-lts-xenial to recommends
  7925   - osutil/sys: ppc has 32-bit getuid already
  7926   - snapstate: make no autorefresh message clearer
  7927   - spread: try to enable Fedora once more
  7928   - overlord/snapstate: do a minimal sanity check on containers
  7929   - configcore: ensure config.txt has a final newline
  7930   - cmd/libsnap-confine-private: print failed mount/umount regardless
  7931     of SNAP_CONFINE_DEBUG
  7932   - debian/tests: add missing autopkgtest test dependencies for debian
  7933   - image: port ini handling to goconfigparser
  7934   - tests/main/snap-service-after-before: add test for after/before
  7935     service ordering
  7936   - tests: enabling opensuse for tests
  7937   - tests: update auto-refresh-private to match messages from current
  7938     master
  7939   - dirs: check if distro 'is like' fedora when picking path to
  7940     libexecdir
  7941   - tests: fix "job canceled" issue and improve cleanup for snaps
  7942   - cmd/libsnap-confine-private: add debug build of libsnap-confine-
  7943     private.a, link it into snap-confine-debug
  7944   - vendor: remove x/sys/unix to fix builds on arm64 and powerpc
  7945   - image: let consume snapcraft export-login files from tooling
  7946   - interfaces/mir: allow Wayland socket and non-root sockets
  7947   - interfaces/builtin: use snap.{Plug,Slot}Info over
  7948     interfaces.{Plug,Slot}
  7949   - tests: add simple snap-mgmt test
  7950   - wrappers: autogenerate After/Before in systemd's service files for
  7951     apps
  7952   - snap: add usage hints in `snap download`
  7953   - snap: provide more meaningful errors for installMany and friends
  7954   - cmd/snap: show header/footer when `snap find` is used without
  7955     arguments
  7956   - overlord/snapstate: for Enable's tasks refer to the first task
  7957     with snap-setup, do not duplicate
  7958   - tests: add hard-coded fully expired macaroons to run related tests
  7959   - cmd/snap-update-ns: new test features
  7960   - cmd/snap-update-ns: we don't want to bind mount symlinks
  7961   - interfaces/mount: test OptsToCommonFlags, filter out x-snapd.
  7962     options
  7963   - cmd/snap-update-ns: untangle upcoming cyclic initialization
  7964   - client, daemon: update user's email when logging in with new
  7965     account
  7966   - tests: ensure snap-confine apparmor profile is parsable
  7967   - snap: do not leak internal errors on install/refresh etc
  7968   - snap: fix missing error check when multiple snaps are refreshed
  7969   - spread: trying to re-enable tests on Fedora
  7970   - snap: fix gadget.yaml parsing for multi volume gadgets
  7971   - snap: give the snap.Container interface a Walk method
  7972   - snap: rename `snap advise-command` to `snap advise-snap --command`
  7973   - overlord/snapstate: no refresh just for hints if there was a
  7974     recent regular full refresh
  7975   - progress: switch ansimeter's Spin() to use a spinner
  7976   - snap: support `command-not-found` symlink for `snap advise-
  7977     command`
  7978   - daemon: store email, ID and macaroon when creating a new user
  7979   - snap: app startup after/before validation
  7980   - timeutil: refresh timer take 2
  7981   - store, daemon/api: Rename MyAppsServer, point to
  7982     dashboard.snapcraft.io instead
  7983   - tests: use "quiet" helper instead of "dnf -q" to get errors on
  7984     failures
  7985   - cmd/snap-update-ns: improve mocking for tests
  7986   - many: implement the advisor backend, populate it from the store
  7987   - tests: make less calls to the package manager
  7988   - tests/main/confinement-classic: enable the test on Fedora
  7989   - snap: do not leak internal network errors to the user
  7990   - snap: use stdout instead of stderr for "fetching" message
  7991   - tests: fix test whoami, share successful_login.exp
  7992   - many: refresh with appropriate creds
  7993   - snap: add new `snap advice-command` skeleton
  7994   - tests: add test that ensures we never parse versions as numbers
  7995   - overlord/snapstate: override Snapstate.UserID in refresh if the
  7996     installing user is gone
  7997   - interfaces: allow socket "shutdown" syscall in default profile
  7998   - snap: print friendly message if `snap keys` is empty
  7999   - cmd/snap-update-ns: add execWritableMimic
  8000   - snap: make `snap info invalid-snap` output more user friendly
  8001   - cmd/snap,  tests/main/classic-confinement: fix snap-exec path when
  8002     running under classic confinement
  8003   - overlord/ifacestate: fix disable/enable cycle to setup security
  8004   - snap: fix snap find " " output
  8005   - daemon: add new polkit action to manage interfaces
  8006   - packaging/arch: disable services when removing
  8007   - asserts/signtool: support for building tools on top that fill-
  8008     in/compute some headers
  8009   - cmd: clarify "This leaves %s tracking %s." message
  8010   - daemon: return "bad-query" error kind for store.ErrBadQuery
  8011   - taskrunner/many: KnownTaskKinds helper
  8012   - tests/main/interfaces-fuse_support: fix confinement, allow
  8013     unmount, fix spread tests
  8014   - snap: use the -no-fragments mksquashfs option
  8015   - data/selinux: allow messages from policykit
  8016   - tests: fix catalog-update wait loop
  8017   - tests/lib/prepare-restore: disable rate limiting in journald
  8018   - tests: change interfaces-fuse_support to be debug friendly
  8019   - tests/main/postrm-purge: stop snapd before purge
  8020   - This is an example of test log:https://paste.ubuntu.com/26215170/
  8021   - tests/main/interfaces-fuse_support: dump more debugging
  8022     information
  8023   - interfaces/dbus: adjust slot policy for listen, accept and accept4
  8024     syscalls
  8025   - tests: save the snapd-state without compression
  8026   - tests/main/searching: handle changes in featured snaps list
  8027   - overlord/snapstate: fix auto-refresh summary for 2 snaps
  8028   - overlord/auth,daemon: introduce an explicit auth.ErrInvalidUser
  8029   - interfaces: add /proc/partitions to system-observe (This addresses
  8030     LP#1708527.)
  8031   - tests/lib: introduce helpers for setting up /dev/random using
  8032     /dev/urandom in project prepare
  8033   - tests: new test for interface network status
  8034   - interfaces: interfaces: also add an app/hook-specific udev RUN
  8035     rule for hotplugging
  8036   - tests: fix external backend for tests that need DEBUG output
  8037   - tests: do not disable refresh timer on external backend
  8038   - client: send all snap related bool json fields
  8039   - interfaces/desktop,unity7: allow status/activate/lock of
  8040     screensavers
  8041   - tests/main: source mkpinentry.sh
  8042   - tests: fix security-device-cgroups-serial-port test for rpi and db
  8043   - cmd/snap-mgmt: add more directories for cleanup and refactor
  8044     purge() code
  8045   - snap: YAML and data structures for app before/after ordering
  8046   - tests: set TRUST_TEST_KEYS=false for all the external backends
  8047   - packaging/arch: install snap-mgmt tool
  8048   - tests: add support on tests for cm3 gadget
  8049   - interfaces/removable-media: also allow 'k' (lock)
  8050   - interfaces: use ConnectedPlug/ConnectedSlot types (step 2)
  8051   - interfaces: rename sanitize methods
  8052   - devicestate: fix misbehaving test when using systemd-resolved
  8053   - interfaces: added Ref() helpers, restored more detailed error
  8054     message on spi iface
  8055   - debian: make "gnupg" a recommends
  8056   - interfaces/many: misc updates for default, browser-support,
  8057     opengl, desktop, unity7, x11
  8058   - interfaces: PlugInfo/SlotInfo/ConnectedPlug/ConnectedSlot
  8059     attribute helpers
  8060   - interfaces: update fixme comments
  8061   - tests: make interfaces-snapd-control-with-manage more robust
  8062   - userd: generalize dbusInterface
  8063   - interfaces: use ConnectedPlug/ConnectedSlot types (step 1)
  8064   - hookstate: add compat "configure-snapd" task.
  8065   - config, overlord/snapstate, timeutil: rename ParseSchedule to
  8066     ParseLegacySchedule
  8067   - tests: adding tests for time*-control interfaces
  8068   - tests: new test to check interfaces after reboot the system
  8069   - cmd/snap-mgmt: fixes
  8070   - packaging/opensuse-42.2: package and use snap-mgmt
  8071   - corecfg: also "mask" services when disabling them
  8072   - cmd/snap-mgmt: introduce snap-mgmt tool
  8073   - configstate: simplify ConfigManager
  8074   - interfaces: add gpio-memory-control interface
  8075   - cmd: disable check-syntax-c
  8076   - packaging/arch: add bash-completion as optional dependency
  8077   - corecfg: rename package to overlord/configstate/configcore
  8078   - wrappers: fix unit tests to use dirs.SnapMountDir
  8079   - osutil/sys: reimplement getuid and chown with the right int type
  8080   - interfaces-netlink-connector: fix sourcing snaps.sh
  8081  
  8082  * Thu Jan 25 2018 Neal Gompa <ngompa13@gmail.com> - 2.30-1
  8083  - Release 2.30 to Fedora (RH#1527519)
  8084  - Backport fix to correctly locate snapd libexecdir on Fedora derivatives (RH#1536895)
  8085  - Refresh SELinux policy fix patches with upstream backport version
  8086  
  8087  * Mon Dec 18 2017 Michael Vogt <mvo@ubuntu.com>
  8088  - New upstream release 2.30
  8089   - tests: set TRUST_TEST_KEYS=false for all the external backends
  8090   - tests: fix external backend for tests that need DEBUG output
  8091   - tests: do not disable refresh timer on external backend
  8092   - client: send all snap related bool json fields
  8093   - interfaces: interfaces: also add an app/hook-specific udev RUN
  8094     rule for hotplugging
  8095   - interfaces/desktop,unity7: allow status/activate/lock of
  8096     screensavers
  8097   - tests/main: source mkpinentry.sh
  8098   - devicestate: use a different nowhere domain
  8099   - interfaces: add ssh-keys, ssh-public-keys, gpg-keys and gpg-public
  8100     keys interfaces
  8101   - interfaces/many: misc updates for default, browser-support, opengl,
  8102     desktop, unity7, x11
  8103   - devicestate: fix misbehaving test when using systemd-resolved
  8104   - interfaces/removable-media: also allow 'k' (lock)
  8105   - interfaces/many: misc updates for default, browser-support,
  8106     opengl, desktop, unity7, x11
  8107   - corecfg: also "mask" services when disabling them
  8108   - tests: add support for autopkgtests on s390x
  8109   - snapstate: support for pre-refresh hook
  8110   - many: allow to configure core before it is installed
  8111   - devicestate: fix unkeyed fields error
  8112   - snap-confine: create mount target for lib32,vulkan on demand
  8113   - snapstate: add support for refresh.schedule=managed
  8114   - cmd/snap-update-ns: teach update logic to handle synthetic changes
  8115   - many: remove configure-snapd task again and handle internally
  8116   - snap: fix TestDirAndFileMethods() test to work with gccgo
  8117   - debian: ensure /var/lib/snapd/lib/vulkan is available
  8118   - cmd/snap-confine: use #include instead of bare include
  8119   - snapstate: store userID in snapstate
  8120   - snapd.dirs: add var/lib/snapd/lib/gl32
  8121   - timeutil, overlod/snapstate: cleanup remaining pieces of timeutil
  8122     weekday support
  8123   - packaging/arch: install missing directories, manpages and version
  8124     info
  8125   - snapstate,store: store if a snap is a paid snap in the sideinfo
  8126   - packaging/arch: pre-create snapd directories when packaging
  8127   - tests/main/manpages: set LC_ALL=C as man may complain if the
  8128     locale is unset or unsupported
  8129   - repo: ConnectedPlug and ConnectedSlot types
  8130   - snapd: fix handling of undo in the taskrunner
  8131   - store: fix download caching and add integration test
  8132   - snapstate: move autorefresh code into autoRefresh helper
  8133   - snapctl: don't error out on start/stop/restart from configure hook
  8134     during install or refresh
  8135   - cmd/snap-update-ns: add planWritableMimic
  8136   - deamon: don't omit responses, even if null
  8137   - tests: add test for frame buffer interface
  8138   - tests/lib: fix shellcheck errors
  8139   - apparmor: generate the snap-confine re-exec profile for
  8140     AppArmor{Partial,Full}
  8141   - tests: remove obsolete workaround
  8142   - snap: use existing files in `snap download` if digest/size matches
  8143   - tests: merge pepare-project.sh into prepare-restore.sh
  8144   - tests: cache snaps to $TESTSLIB/cache
  8145   - tests: set -e, -o pipefail in prepare-restore.sh
  8146   - apparmor: generate the snap-confine re-exec profile for
  8147     AppArmor{Partial,Full}
  8148   - cmd/snap-seccomp: fix uid/gid restrictions tests on Arch
  8149   - tests: document and slightly refactor prepare/restore code
  8150   - snapstate: ensure RefreshSchedule() gives accurate results
  8151   - snapstate: add new refresh-hints helper and use it
  8152   - spread.yaml,tests: move most of project-wide prepare/restore to
  8153     separate file
  8154   - timeutil: introduce helpers for weekdays and TimeOfDay
  8155   - tests: adding new test for uhid interface
  8156   - cmd/libsnap: fix parsing of empty mountinfo fields
  8157   - overlord/devicestate:  best effort to go to early full retries for
  8158     registration on the like of DNS no host
  8159   - spread.yaml: bump delta ref to 2.29
  8160   - tests: adding test to test physical memory observe interface
  8161   - cmd, errtracker: get rid of SNAP_DID_REEXEC environment
  8162   - timeutil: remove support to parse weekday schedules
  8163   - snap-confine: add workaround for snap-confine on 4.13/upstream
  8164   - store: do not log the http body for catalog updates
  8165   - snapstate: move catalogRefresh into its own helper
  8166   - spread.yaml: fix shellcheck issues and trivial refactor
  8167   - spread.yaml: move prepare-each closer to restore-each
  8168   - spread.yaml: increase workers for opensuse to 3
  8169   - tests: force delete when tests are restore to avoid suite failure
  8170   - test: ignore /snap/README
  8171   - interfaces/opengl: also allow read on 'revision' in
  8172     /sys/devices/pci...
  8173   - interfaces/screen-inhibit-control: fix case in screen inhibit
  8174     control
  8175   - asserts/sysdb: panic early if pointed to staging but staging keys
  8176     are not compiled-in
  8177   - interfaces: allow /bin/chown and fchownat to root:root
  8178   - timeutil: include test input in error message in
  8179     TestParseSchedule()
  8180   - interfaces/browser-support: adjust base declaration for auto-
  8181     connection
  8182   - snap-confine: fix snap-confine under lxd
  8183   - store: bit less aggressive retry strategy
  8184   - tests: add new `fakestore new-snap-{declaration,revision}` helpers
  8185   - cmd/snap-update-ns: add secureMkfileAll
  8186   - snap: use field names when initializing composite literals
  8187   - HACKING: fix path in snap install
  8188   - store: add support for flags in ListRefresh()
  8189   - interfaces: remove invalid plugs/slots from SnapInfo on
  8190     sanitization.
  8191   - debian: add missing udev dependency
  8192   - snap/validate: extend socket validation tests
  8193   - interfaces: add "refresh-schedule" attribute to snapd-control
  8194   - interfaces/builtin/account_control: use gid owning /etc/shadow to
  8195     setup seccomp rules
  8196   - cmd/snap-update-ns: tweak changePerform
  8197   - interfaces,tests: skip unknown plug/slot interfaces
  8198   - tests: disable interfaces-network-control-tuntap
  8199   - cmd: use a preinit_array function rather than parsing
  8200     /proc/self/cmdline
  8201   - interfaces/time*_control: explicitly deny noisy read on
  8202     /proc/1/environ
  8203   - cmd/snap-update-ns: misc cleanups
  8204   - snapd: allow hooks to have slots
  8205   - fakestore: add go-flags to prepare for `new-snap-declaration` cmd
  8206   - interfaces/browser-support: add shm path for nwjs
  8207   - many: add magic /snap/README file
  8208   - overlord/snapstate: support completion for command aliases
  8209   - tests: re-enable tun/tap test on Debian
  8210   - snap,wrappers: add support for socket activation
  8211   - repo: use PlugInfo and SlotInfo for permanent plugs/slots
  8212   - tests/interfaces-network-control-tuntap: disable on debian-
  8213     unstable for now
  8214   - cmd/snap-confine: Loosen the NVIDIA Vulkan ICD glob
  8215   - cmd/snap-update-ns: detect and report read-only filesystems
  8216   - cmd/snap-update-ns: re-factor secureMkdirAll into
  8217     secureMk{Prefix,Dir}
  8218   - run-checks, tests/lib/snaps/: shellcheck fixes
  8219   - corecfg: validate refresh.schedule when it is applied
  8220   - tests: adjust test to match stderr
  8221   - snapd: fix snap cookie bugs
  8222   - packaging/arch: do not quote MAKEFLAGS
  8223   - state: add change.LaneTasks helper
  8224   - cmd/snap-update-ns: do not assume 'nogroup' exists
  8225   - tests/lib: handle distro specific grub-editenv naming
  8226   - cmd/snap-confine: Add missing bi-arch NVIDIA filesthe
  8227     `/var/lib/snapd/lib/gl:/var/lib/snapd/lib/gl/vdpau` paths within
  8228   - cmd: Support exposing NVIDIA Vulkan ICD files to the snaps
  8229   - cmd/snap-confine: Implement full 32-bit NVIDIA driver support
  8230   - packaging/arch: packaging update
  8231   - cmd/snap-confine: Support bash as base runtime entry
  8232   - wrappers: do not error on incorrect Exec= lines
  8233   - interfaces: fix udev tagging for hooks
  8234   - tests/set-proxy-store: exclude ubuntu-core-16 via systems: key
  8235   - tests: new tests for network setup control and observe interfaces
  8236   - osutil: add helper for obtaining group ID of given file path
  8237   - daemon,overlord/snapstate: return snap-not-installed error in more
  8238     cases
  8239   - interfaces/builtin/lxd_support: allow discovering of host's os-
  8240     release
  8241   - configstate: add support for configure-snapd for
  8242     snapstate.IgnoreHookError
  8243   - tests:  add a spread test for proxy.store setting together with
  8244     store assertion
  8245   - cmd/snap-seccomp: do not use group 'shadow' in tests
  8246   - asserts/assertstest:  fix use of hardcoded value when the passed
  8247     or default keys should be used
  8248   - interfaces/many: misc policy updates for browser-support, cups-
  8249     control and network-status
  8250   - tests: fix xdg-open-compat
  8251   - daemon: for /v2/logs, 404 when no services are found
  8252   - packaging/fedora: Merge changes from Fedora Dist-Git
  8253   - cmd/snap-update-ns: add new helpers for mount entries
  8254   - cmd/snap-confine: Respect biarch nature of libdirs
  8255   - cmd/snap-confine: Ensure snap-confine is allowed to access os-
  8256     release
  8257   - cmd: fix re-exec bug with classic confinement for host snapd <
  8258     2.28
  8259   - interfaces/kmod: simplify loadModules now that errors are ignored
  8260   - tests: disable xdg-open-compat test
  8261   - tests: add test that checks core reverts on core devices
  8262   - dirs: use alt root when checking classic confinement support
  8263     without …
  8264   - interfaces/kmod: treat failure to load module as non-fatal
  8265   - cmd/snap-update-ns: fix golint and some stale comments
  8266   - corecfg:  support setting proxy.store if there's a matching store
  8267     assertion
  8268   - overlord/snapstate: toggle ignore-validation as needed as we do
  8269     for channel
  8270   - tests: fix security-device-cgroup* tests on devices with
  8271     framebuffer
  8272   - interfaces/raw-usb: match on SUBSYSTEM, not SUBSYSTEMS
  8273   - interfaces: add USB interface number attribute in udev rule for
  8274     serial-port interface
  8275   - overlord/devicestate: switch to the new endpoints for registration
  8276   - snap-update-ns: add missing unit test for desired/current profile
  8277     handling
  8278   - cmd/{snap-confine,libsnap-confine-private,snap-shutdown}: cleanup
  8279     low-level C bits
  8280   - ifacestate: make interfaces.Repository available via state cache
  8281   - overlord/snapstate: cleanups around switch-snap*
  8282   - cmd/snapd,client,daemon: display ignore-validation flag through
  8283     the notes mechanism
  8284   - cmd/snap-update-ns: add logging to snap-update-ns
  8285   - many: have a timestamp on store assertions
  8286   - many: lookup and use the URL from a store assertion if one is set
  8287     for use
  8288   - tests/test-snapd-service: fix shellcheck issues
  8289   - tests: new test for hardware-random-control interface
  8290   - tests: use `snap change --last=install` in snapd-reexec test
  8291   - repo, daemon: use PlugInfo, SlotInfo
  8292   - many: handle core configuration internally instead of using the
  8293     core configure hook
  8294   - tests: refactor and expand content interface test
  8295   - snap-seccomp: skip in-kernel bpf tests for socket() in trusty/i386
  8296   - cmd/snap-update-ns: allow Change.Perform to return changes
  8297   - snap-confine: Support biarch Linux distribution confinement
  8298   - partition/ubootenv: don't panic when uboot.env is missing the eof
  8299     marker
  8300   - cmd/snap-update-ns: allow fault injection to provide dynamic
  8301     result
  8302   - interfaces/mount: exspose mount.{Escape,Unescape}
  8303   - snapctl: added long help to stop/start/restart command
  8304   - cmd/snap-update-ns: create missing mount points automatically.
  8305   - cmd: downgrade log message in InternalToolPath to Debugf()
  8306   - tests: wait for service status change & file update in the test to
  8307     avoid races
  8308   - daemon, store: forward SSO invalid credentials errors as 401
  8309     Unauthorized responses
  8310   - spdx: fix for WITH syntax, require a license name before the
  8311     operator
  8312   - many: reorg things in preparation to make handling of the base url
  8313     in store dynamic
  8314   - hooks/configure: queue service restarts
  8315   - cmd/snap: warn when a snap is not from the tracking channel
  8316   - interfaces/mount: add support for parsing x-snapd.{mode,uid,gid}=
  8317   - cmd/snap-confine: add detection of stale mount namespace
  8318   - interfaces: add plugRef/slotRef helpers for PlugInfo/SlotInfo
  8319   - tests: check for invalid udev files during all tests
  8320   - daemon: use newChange() in changeAliases for consistency
  8321   - servicestate: use taskset
  8322   - many: add support for /home on NFS
  8323   - packaging,spread: fix and re-enable opensuse builds
  8324  
  8325  * Sun Dec 17 2017 Neal Gompa <ngompa13@gmail.com> - 2.29.4-3
  8326  - Add patch to SELinux policy to allow snapd to receive replies from polkit
  8327  
  8328  * Sun Nov 19 2017 Neal Gompa <ngompa13@gmail.com> - 2.29.4-2
  8329  - Add missing bash completion files and cache directory
  8330  
  8331  * Sun Nov 19 2017 Neal Gompa <ngompa13@gmail.com> - 2.29.4-1
  8332  - Release 2.29.4 to Fedora (RH#1508433)
  8333  - Install Polkit configuration (RH#1509586)
  8334  - Drop changes to revert cheggaaa/pb import path used
  8335  
  8336  * Fri Nov 17 2017 Michael Vogt <mvo@ubuntu.com>
  8337  - New upstream release 2.29.4
  8338   - snap-confine: fix snap-confine under lxd
  8339   - tests: disable classic-ubuntu-core-transition on i386 temporarily
  8340   - many: reject bad plugs/slots
  8341   - interfaces,tests: skip unknown plug/slot interfaces
  8342   - store: enable "base" field from the store
  8343   - packaging/fedora: Merge changes from Fedora Dist-Git
  8344  
  8345  * Thu Nov 09 2017 Michael Vogt <mvo@ubuntu.com>
  8346  - New upstream release 2.29.3
  8347   - daemon: cherry-picked /v2/logs fixes
  8348   - cmd/snap-confine: Respect biarch nature of libdirs
  8349   - cmd/snap-confine: Ensure snap-confine is allowed to access os-
  8350     release
  8351   - interfaces: fix udev tagging for hooks
  8352   - cmd: fix re-exec bug with classic confinement for host snapd
  8353   - tests: disable xdg-open-compat test
  8354   - cmd/snap-confine: add slave PTYs and let devpts newinstance
  8355     perform mediation
  8356   - interfaces/many: misc policy updates for browser-support, cups-
  8357     control and network-status
  8358   - interfaces/raw-usb: match on SUBSYSTEM, not SUBSYSTEMS
  8359   - tests: fix security-device-cgroup* tests on devices with
  8360     framebuffer
  8361  
  8362  * Fri Nov 03 2017 Michael Vogt <mvo@ubuntu.com>
  8363  - New upstream release 2.29.2
  8364    - snapctl: disable stop/start/restart (2.29)
  8365    - cmd/snap-update-ns: fix collection of changes made
  8366  
  8367  * Fri Nov 03 2017 Michael Vogt <mvo@ubuntu.com>
  8368  - New upstream release 2.29.1
  8369   - interfaces: fix incorrect signature of ofono DBusPermanentSlot
  8370   - interfaces/serial-port: udev tag plugged slots that have just
  8371     'path' via KERNEL
  8372   - interfaces/hidraw: udev tag plugged slots that have just 'path'
  8373     via KERNEL
  8374   - interfaces/uhid: unconditionally add existing uhid device to the
  8375     device cgroup
  8376   - cmd/snap-update-ns: fix mount rules for font sharing
  8377   - tests: disable refresh-undo test on trusty for now
  8378   - tests: use `snap change --last=install` in snapd-reexec test
  8379   - Revert " wrappers: fail install if exec-line cannot be re-written
  8380   - interfaces: don't udev tag devmode or classic snaps
  8381   - many: make ignore-validation sticky and send the flag with refresh
  8382     requests
  8383  
  8384  * Mon Oct 30 2017 Michael Vogt <mvo@ubuntu.com>
  8385  - New upstream release 2.29
  8386   - interfaces/many: miscellaneous updates based on feedback from the
  8387     field
  8388   - snap-confine: allow reading uevents from any where in /sys
  8389   - spread: add bionic beaver
  8390   - debian: make packaging/ubuntu-14.04/copyright a real file again
  8391   - tests: cherry pick the fix for services test into 2.29
  8392   - cmd/snap-update-ns: initialize logger
  8393   - hooks/configure: queue service restarts
  8394   - snap-{confine,seccomp}: make @unrestricted fully unrestricted
  8395   - interfaces: clean system apparmor cache on core device
  8396   - debian: do not build static snap-exec on powerpc
  8397   - snap-confine: increase sanity_timeout to 6s
  8398   - snapctl: cherry pick service commands changes
  8399   - cmd/snap: tell translators about arg names and descs req's
  8400   - systemd: run all mount units before snapd.service to avoid race
  8401   - store: add a test to show auth failures are forwarded by doRequest
  8402   - daemon: convert ErrInvalidCredentials to a 401 Unauthorized error.
  8403   - store: forward on INVALID_CREDENTIALS error as
  8404     ErrInvalidCredentials
  8405   - daemon: generate a forbidden response message if polkit dialog is
  8406     dismissed
  8407   - daemon: Allow Polkit authorization to cancel changes.
  8408   - travis: switch to container based test runs
  8409   - interfaces: reduce duplicated code in interface tests mocks
  8410   - tests: improve revert related testing
  8411   - interfaces: sanitize plugs and slots early in ReadInfo
  8412   - store: add download caching
  8413   - preserve TMPDIR and HOSTALIASES across snap-confine invocation
  8414   - snap-confine: init all arrays with `= {0,}`
  8415   - tests: adding test for network-manager interface
  8416   - interfaces/mount: don't generate legacy per-hook/per-app mount
  8417     profiles
  8418   - snap: introduce structured epochs
  8419   - tests: fix interfaces-cups-control test for cups-2.2.5
  8420   - snap-confine: cleanup incorrectly created nvidia udev tags
  8421   - cmd/snap-confine: update valid security tag regexp
  8422   - cmd/libsnap: enable two stranded tests
  8423   - cmd,packaging: enable apparmor on openSUSE
  8424   - overlord/ifacestate: refresh all security backends on startup
  8425   - interfaces/dbus: drop unneeded check for
  8426     release.ReleaseInfo.ForceDevMode
  8427   - dbus: ensure io.snapcraft.Launcher.service is created on re-
  8428     exec
  8429   - overlord/auth: continue for now supporting UBUNTU_STORE_ID if the
  8430     model is generic-classic
  8431   - snap-confine: add support for handling /dev/nvidia-modeset
  8432   - interfaces/network-control: remove incorrect rules for tun
  8433   - spread: allow setting SPREAD_DEBUG_EACH=0 to disable debug-each
  8434     section
  8435   - packaging: remove .mnt files on removal
  8436   - tests: fix econnreset scenario when the iptables rule was not
  8437     created
  8438   - tests: add test for lxd interface
  8439   - run-checks: use nakedret static checker to check for naked
  8440     returns on long functions
  8441   - progress: be more flexible in testing ansimeter
  8442   - interfaces: fix udev rules for tun
  8443   - many: implement our own ANSI-escape-using progress indicator
  8444   - snap-exec: update tests to follow main_test pattern
  8445   - snap: support "command: foo $ENV_STRING"
  8446   - packaging: update nvidia configure options
  8447   - snap: add new `snap pack` and use in tests
  8448   - cmd: correctly name the "Ubuntu" and "Arch" NVIDIA methods
  8449   - cmd: add autogen case for solus
  8450   - tests: do not use http://canihazip.com/ which appears to be down
  8451   - hooks: commands for controlling own services from snapctl
  8452   - snap: refactor cmdGet.Execute()
  8453   - interfaces/mount: make Change.Perform testable and test it
  8454   - interfaces/mount,cmd/snap-update-ns: move change code
  8455   - snap-confine: is_running_on_classic_distribution() looks into os-
  8456     release
  8457   - interfaces: misc updates for default, browser-support, home and
  8458     system-observe
  8459   - interfaces: deny lttng by default
  8460   - interfaces/lxd: lxd slot implementation can also be an app snap
  8461   - release,cmd,dirs: Redo the distro checks to take into account
  8462     distribution families
  8463   - cmd/snap: completion for alias and unalias
  8464   - snap-confine: add new SC_CLEANUP and use it
  8465   - snap: refrain from running filepath.Base on random strings
  8466   - cmd/snap-confine: put processes into freezer hierarchy
  8467   - wrappers: fail install if exec-line cannot be re-written
  8468   - cmd/snap-seccomp,osutil: make user/group lookup functions public
  8469   - snapstate: deal with snap user data in the /root/ directory
  8470   - interfaces: Enhance full-confinement support for biarch
  8471     distributions
  8472   - snap-confine: Only attempt to copy/mount NVIDIA libs when NVIDIA
  8473     is used
  8474   - packaging/fedora: Add Fedora 26, 27, and Rawhide symlinks
  8475   - overlord/snapstate: prefer a smaller corner case for doing the
  8476     wrong thing
  8477   - cmd/snap-repair:  set user agent for snap-repair http requests
  8478   - packaging: bring down the delta between 14.04 and 16.04
  8479   - snap-confine: Ensure lib64 biarch directory is respected
  8480   - snap-confine: update apparmor rules for fedora based base snaps
  8481   - tests: Increase SNAPD_CONFIGURE_HOOK_TIMEOUT to 3 minutes to
  8482     install real snaps
  8483   - daemon: use client.Snap instead of map[string]interface{} for
  8484     snaps.
  8485   - hooks: rename refresh hook to post-refresh
  8486   - git: make the .gitingore file a bit more targeted
  8487   - interfaces/opengl: don't udev tag nvidia devices and use snap-
  8488     confine instead
  8489   - cmd/snap-{confine,update-ns}: apply mount profiles using snap-
  8490     update-ns
  8491   - cmd: update "make hack"
  8492   - interfaces/system-observe: allow clients to enumerate DBus
  8493     connection names
  8494   - snap-repair: implement `snap-repair {list,show}`
  8495   - dirs,interfaces: create snap-confine.d on demand when re-executing
  8496   - snap-confine: fix base snaps on core
  8497   - cmd/snap-repair: fix tests when running as root
  8498   - interfaces: add Connection type
  8499   - cmd/snap-repair: skip disabled repairs
  8500   - cmd/snap-repair: prefer leaking unmanaged fds on test failure over
  8501     closing random ones
  8502   - snap-repair: make `repair` binary available for repair scripts
  8503   - snap-repair: fix missing Close() in TestStatusHappy
  8504   - cmd/snap-confine,packaging: import snapd-generated policy
  8505   - cmd/snap: return empty document if snap has no configuration
  8506   - snap-seccomp: run secondary-arch tests via gcc-multilib
  8507   - snap: implement `snap {repair,repairs}` and pass-through to snap-
  8508     repair
  8509   - interfaces/builtin: allow receiving dbus messages
  8510   - snap-repair: implement `snap-repair {done,skip,retry}`
  8511   - data/completion: small tweak to snap completion snippet
  8512   - dirs: fix classic support detection
  8513   - cmd/snap-repair: integrate root public keys for repairs
  8514   - tests: fix ubuntu core services
  8515   - tests: add new test that checks that the compat snapd-xdg-open
  8516     works
  8517   - snap-confine: improve error message if core/u-core cannot be found
  8518   - tests: only run tests/regression/nmcli on amd64
  8519   - interfaces: mount host system fonts in desktop interface
  8520   - interfaces: enable partial apparmor support
  8521   - snapstate: auto-install missing base snaps
  8522   - spread: work around temporary packaging issue in debian sid
  8523   - asserts,cmd/snap-repair: introduce a mandatory summary for repairs
  8524   - asserts,cmd/snap-repair: represent RepairID internally as an int
  8525   - tests: test the real "xdg-open" from the core snap
  8526   - many: implement fetching sections and package names periodically.
  8527   - interfaces/network: allow using netcat as client
  8528   - snap-seccomp, osutil: use osutil.AtomicFile in snap-seccomp
  8529   - snap-seccomp: skip mknod syscall on arm64
  8530   - tests: add trivial canonical-livepatch test
  8531   - tests: add test that ensures that all core services are working
  8532   - many: add logger.MockLogger() and use it in the tests
  8533   - snap-repair: fix test failure in TestRepairHitsTimeout
  8534   - asserts: add empty values check in HeadersFromPrimaryKey
  8535   - daemon: remove unused installSnap var in test
  8536   - daemon: reach for Overlord.Loop less thanks to overlord.Mock
  8537   - snap-seccomp: manually resolve socket() call in tests
  8538   - tests: change regex used to validate installed ubuntu core snap
  8539   - cmd/snapctl: allow snapctl -h without a context (regression fix).
  8540   - many: use snapcore/snapd/i18n instead of i18n/dumb
  8541   - many: introduce asserts.NotFoundError replacing both ErrNotFound
  8542     and store.AssertionNotFoundError
  8543   - packaging: don't include any marcos in comments
  8544   - overlord: use overlord.Mock in more tests, make sure we check the
  8545     outcome of Settle
  8546   - tests: try to fix staging tests
  8547   - store: simplify api base url config
  8548   - systemd: add systemd.MockJournalctl()
  8549   - many: provide systemd.MockSystemctl() helper
  8550   - tests: improve the listing test to not fail for e.g. 2.28~rc2
  8551   - snapstate: give snapmgrTestSuite.settle() more time to settle
  8552   - tests: fix regex to check core version on snap list
  8553   - debian: update trusted account-keys check on 14.04 packaging
  8554   - interfaces: add udev netlink support to hardware-observe
  8555   - overlord: introduce Mock which enables to use Overlord.Settle for
  8556     settle in many more places
  8557   - snap-repair: execute the repair and capture logs/status
  8558   - tests: run the tests/unit/go everywhere
  8559   - daemon, snapstate: move ensureCore from daemon/api.go into
  8560     snapstate.go
  8561   - cmd/snap: get keys or root document
  8562   - spread.yaml: turn suse to manual given that it's breaking master
  8563   - many: configure store from state, reconfigure store at runtime
  8564   - osutil: AtomicWriter (an io.Writer), and io.Reader versions of
  8565     AtomicWrite*
  8566   - tests: check for negative syscalls in runBpf() and skip those
  8567     tests
  8568   - docs: use abolute path in PULL_REQUEST_TEMPLATE.md
  8569   - store: move device auth endpoint uris to config (#3831)
  8570  
  8571  * Sat Oct 14 2017 Neal Gompa <ngompa13@gmail.com> - 2.28.5-2
  8572  - Properly fix the build for Fedora 25
  8573  - Incorporate misc build fixes
  8574  
  8575  * Sat Oct 14 2017 Neal Gompa <ngompa13@gmail.com> - 2.28.5-1
  8576  - Release 2.28.5 to Fedora (RH#1502186)
  8577  - Build snap-exec and snap-update-ns statically to support base snaps
  8578  
  8579  * Fri Oct 13 2017 Michael Vogt <mvo@ubuntu.com>
  8580  - New upstream release 2.28.5
  8581    - snap-confine: cleanup broken nvidia udev tags
  8582    - cmd/snap-confine: update valid security tag regexp
  8583    - overlord/ifacestate: refresh udev backend on startup
  8584    - dbus: ensure io.snapcraft.Launcher.service is created on re-
  8585      exec
  8586    - snap-confine: add support for handling /dev/nvidia-modeset
  8587    - interfaces/network-control: remove incorrect rules for tun
  8588  
  8589  * Thu Oct 12 2017 Neal Gompa <ngompa13@gmail.com> - 2.28.4-1
  8590  - Release 2.28.4 to Fedora (RH#1501141)
  8591  - Drop distro check backport patches (released with 2.28.2)
  8592  
  8593  * Wed Oct 11 2017 Michael Vogt <mvo@ubuntu.com>
  8594  - New upstream release 2.28.4
  8595    - interfaces/opengl: don't udev tag nvidia devices and use snap-
  8596      confine instead
  8597    - debian: fix replaces/breaks for snap-xdg-open (thanks to apw!)
  8598  
  8599  * Wed Oct 11 2017 Michael Vogt <mvo@ubuntu.com>
  8600  - New upstream release 2.28.3
  8601    - interfaces/lxd: lxd slot implementation can also be an app
  8602      snap
  8603  
  8604  * Tue Oct 10 2017 Michael Vogt <mvo@ubuntu.com>
  8605  - New upstream release 2.28.2
  8606    - interfaces: fix udev rules for tun
  8607    - release,cmd,dirs: Redo the distro checks to take into account
  8608      distribution families
  8609  
  8610  * Sun Oct 08 2017 Neal Gompa <ngompa13@gmail.com> - 2.28.1-1
  8611  - Release 2.28.1 to Fedora (RH#1495852)
  8612  - Drop userd backport patches, they are part of 2.28 release
  8613  - Backport changes to rework distro checks to fix derivative distro usage of snapd
  8614  - Revert import path change for cheggaaa/pb as it breaks build on Fedora
  8615  - Add a posttrans relabel to snapd-selinux to ensure everything is labeled correctly
  8616  
  8617  * Wed Sep 27 2017 Michael Vogt <mvo@ubuntu.com>
  8618  - New upstream release 2.28.1
  8619    - snap-confine: update apparmor rules for fedora based basesnaps
  8620    - snapstate: rename refresh hook to post-refresh for consistency
  8621  
  8622  * Mon Sep 25 2017 Michael Vogt <mvo@ubuntu.com>
  8623  - New upstream release 2.28
  8624   - hooks: rename refresh to after-refresh
  8625   - snap-confine: bind mount /usr/lib/snapd relative to snap-confine
  8626   - cmd,dirs: treat "liri" the same way as "arch"
  8627   - snap-confine: fix base snaps on core
  8628   - hooks: substitute env vars when executing hooks
  8629   - interfaces: updates for default, browser-support, desktop, opengl,
  8630     upower and stub-resolv.conf
  8631   - cmd,dirs: treat manjaro the same as arch
  8632   - systemd: do not run auto-import and repair services on classic
  8633   - packaging/fedora: Ensure vendor/ is empty for builds and fix spec
  8634     to build current master
  8635   - many: fix TestSetConfNumber missing an Unlock and other fragility
  8636     improvements
  8637   - osutil: adjust StreamCommand tests for golang 1.9
  8638   - daemon: allow polkit authorisation to install/remove snaps
  8639   - tests: make TestCmdWatch more robust
  8640   - debian: improve package description
  8641   - interfaces: add netlink kobject uevent to hardware observe
  8642   - debian: update trusted account-keys check on 14.04 packaging
  8643   - interfaces/network-{control,observe}: allow receiving
  8644     kobject_uevent() messages
  8645   - tests: fix lxd test for external backend
  8646   - snap-confine,snap-update-ns: add -no-pie to fix FTBFS on
  8647     go1.7,ppc64
  8648   - corecfg: mock "systemctl" in all corecfg tests
  8649   - tests: fix unit tests on Ubuntu 14.04
  8650   - debian: add missing flags when building static snap-exec
  8651   - many: end-to-end support for the bare base snap
  8652   - overlord/snapstate: SetRootDir from SetUpTest, not in just some
  8653     tests
  8654   - store: have an ad-hoc method on cfg to get its list of uris for
  8655     tests
  8656   - daemon: let client decide whether to allow interactive auth via
  8657     polkit
  8658   - client,daemon,snap,store: add license field
  8659   - overlord/snapstate: rename HasCurrent to IsInstalled, remove
  8660     superfluous/misleading check from All
  8661   - cmd/snap: SetRootDir from SetUpTest, not in just some individual
  8662     tests.
  8663   - systemd: rename snap-repair.{service,timer} to snapd.snap-
  8664     repair.{service,timer}
  8665   - snap-seccomp: remove use of x/net/bpf from tests
  8666   - httputil: more naive per go version way to recreate a default
  8667     transport for tls reconfig
  8668   - cmd/snap-seccomp/main_test.go: add one more syscall for arm64
  8669   - interfaces/opengl: use == to compare, not =
  8670   - cmd/snap-seccomp/main_test.go: add syscalls for armhf and arm64
  8671   - cmd/snap-repair: track and use a lower bound for the time for
  8672     TLS checks
  8673   - interfaces: expose bluez interface on classic OS
  8674   - snap-seccomp: add in-kernel bpf tests
  8675   - overlord: always try to get a serial, lazily on classic
  8676   - tests: add nmcli regression test
  8677   - tests: deal with __PNR_chown on aarch64 to fix FTBFS on arm64
  8678   - tests: add autopilot-introspection interface test
  8679   - vendor: fix artifact from manually editing vendor/vendor.json
  8680   - tests: rename complexion to test-snapd-complexion
  8681   - interfaces: add desktop and desktop-legacy
  8682     interfaces/desktop: add new 'desktop' interface for modern DEs*
  8683     interfaces/builtin/desktop_test.go: use modern testing techniques*
  8684     interfaces/wayland: allow read on /etc/drirc for Plasma desktop*
  8685     interfaces/desktop-legacy: add new 'legacy' interface (currently
  8686     for a11y and input)
  8687   - tests: fix race in snap userd test
  8688   - devices/iio: add read/write for missing sysfs entries
  8689   - spread: don't set HTTPS?_PROXY for linode
  8690   - cmd/snap-repair: check signatures of repairs from Next
  8691   - env: set XDG_DATA_DIRS for wayland et.al.
  8692   - interfaces/{default,account-control}: Use username/group instead
  8693     of uid/gid
  8694   - interfaces/builtin: use udev tagging more broadly
  8695   - tests: add basic lxd test
  8696   - wrappers: ensure bash completion snaps install on core
  8697   - vendor: use old golang.org/x/crypto/ssh/terminal to build on
  8698     powerpc again
  8699   - docs: add PULL_REQUEST_TEMPLATE.md
  8700   - interfaces: fix network-manager plug
  8701   - hooks: do not error out when hook is optional and no hook handler
  8702     is registered
  8703   - cmd/snap: add userd command to replace snapd-xdg-open
  8704   - tests: new regex used to validate the core version on extra snaps
  8705     ass...
  8706   - snap: add new `snap switch` command
  8707   - tests: wait more and more debug info about fakestore start issues
  8708   - apparmor,release: add better apparmor detection/mocking code
  8709   - interfaces/i2c: adjust sysfs rule for alternate paths
  8710   - interfaces/apparmor: add missing call to dirs.SetRootDir
  8711   - cmd: "make hack" now also installs snap-update-ns
  8712   - tests: copy files with less verbosity
  8713   - cmd/snap-confine: allow using additional libraries required by
  8714     openSUSE
  8715   - packaging/fedora: Merge changes from Fedora Dist-Git
  8716   - snapstate: improve the error message when classic confinement is
  8717     not supported
  8718   - tests: add test to ensure amd64 can run i386 syscall binaries
  8719   - tests: adding extra info for fakestore when fails to start
  8720   - tests: install most important snaps
  8721   - cmd/snap-repair: more test coverage of filtering
  8722   - squashfs: remove runCommand/runCommandWithOutput as we do not need
  8723     it
  8724   - cmd/snap-repair: ignore superseded revisions, filter on arch and
  8725     models
  8726   - hooks: support for refresh hook
  8727   - Partial revert "overlord/devicestate, store: update device auth
  8728     endpoints URLs"
  8729   - cmd/snap-confine: allow reading /proc/filesystems
  8730   - cmd/snap-confine: genearlize apparmor profile for various lib
  8731     layout
  8732   - corecfg: fix proxy.* writing and add integration test
  8733   - corecfg: deal with system.power-key-action="" correctly
  8734   - vendor: update vendor.json after (presumed) manual edits
  8735   - cmd/snap: in `snap info`, don't print a newline between tracks
  8736   - daemon: add polkit support to /v2/login
  8737   - snapd,snapctl: decode json using Number
  8738   - client: fix go vet 1.7 errors
  8739   - tests: make 17.04 shellcheck clean
  8740   - tests: remove TestInterfacesHelp as it breaks when go-flags
  8741     changes
  8742   - snapstate: undo a daemon restart on classic if needed
  8743   - cmd/snap-repair: recover brand/model from
  8744     /var/lib/snapd/seed/assertions checking signatures and brand
  8745     account
  8746   - spread: opt into unsafe IO during spread tests
  8747   - snap-repair: update snap-repair/runner_test.go for API change in
  8748     makeMockServer
  8749   - cmd/snap-repair: skeleton code around actually running a repair
  8750   - tests: wait until the port is listening after start the fake store
  8751   - corecfg: fix typo in tests
  8752   - cmd/snap-repair: test that redirects works during fetching
  8753   - osutil: honor SNAPD_UNSAFE_IO for testing
  8754   - vendor: explode and make more precise our golang.go/x/crypto deps,
  8755     use same version as Debian unstable
  8756   - many: sanitize NewStoreStack signature, have shared default store
  8757     test private keys
  8758   - systemd: disable `Nice=-5` to fix error when running inside lxd
  8759   - spread.yaml: update delta ref to 2.27
  8760   - cmd/snap-repair: use E-Tags when refetching a repair to retry
  8761   - interfaces/many: updates based on chromium and mrrescue denials
  8762   - cmd/snap-repair: implement most logic to get the next repair to
  8763     run/retry in a brand sequence
  8764   - asserts/assertstest: copy headers in SigningDB.Sign
  8765   - interfaces: convert uhid to common interface and test cases
  8766     improvement for time_control and opengl
  8767   - many tests: move all panicing fake store methods to a common place
  8768   - asserts: add store assertion type
  8769   - interfaces: don't crash if content slot has no attributes
  8770   - debian: do not build with -buildmode=pie on i386
  8771   - wrappers: symlink completion snippets when symlinking binaries
  8772   - tests: adding more debug information for the interfaces-cups-
  8773     control …
  8774   - apparmor: pass --quiet to parser on load unless SNAPD_DEBUG is set
  8775   - many: allow and support serials signed by the 'generic' authority
  8776     instead of the brand
  8777   - corecfg: add proxy configuration via `snap set core
  8778     proxy.{http,https,ftp}=...`
  8779   - interfaces: a bunch of interfaces test improvement
  8780   - tests: enable regression and completion suites for opensuse
  8781   - tests: installing snapd for nested test suite
  8782   - interfaces: convert lxd_support to common iface
  8783   - interfaces: add missing test for camera interface.
  8784   - snap: add support for parsing snap layout section
  8785   - cmd/snap-repair: like for downloads we cannot have a timeout (at
  8786     least for now), less aggressive retry strategies
  8787   - overlord: rely on more conservative ensure interval
  8788   - overlord,store: no piles of return args for methods gathering
  8789     device session request params
  8790   - overlord,store: send model assertion when setting up device
  8791     sessions
  8792   - interfaces/misc: updates for unity7/x11, browser-
  8793     support, network-control and mount-observe
  8794     interfaces/unity7,x11: update for NETLINK_KOBJECT_UEVENT
  8795     interfaces/browser-support: update sysfs reads for
  8796     newer browser versions, interfaces/network-control: rw for
  8797     ieee80211 advanced wireless interfaces/mount-observe: allow read
  8798     on sysfs entries for block devices
  8799   - tests: use dnf --refresh install to avert stale cache
  8800   - osutil: ensure TestLockUnlockWorks uses supported flock
  8801   - interfaces: convert lxd to common iface
  8802   - tests: restart snapd to ensure re-exec settings are applied
  8803   - tests: fix interfaces-cups-control test
  8804   - interfaces: improve and tweak bunch of interfaces test cases.
  8805   - tests: adding extra worker for fedora
  8806   - asserts,overlord/devicestate: support predefined assertions that
  8807     don't establish foundational trust
  8808   - interfaces: convert two hardware_random interfaces to common iface
  8809   - interfaces: convert io_ports_control to common iface
  8810   - tests: fix for  upgrade test on fedora
  8811   - daemon, client, cmd/snap: implement snap start/stop/restart
  8812   - cmd/snap-confine: set _FILE_OFFSET_BITS to 64
  8813   - interfaces: covert framebuffer to commonInterface
  8814   - interfaces: convert joystick to common iface
  8815   - interfaces/builtin: add the spi interface
  8816   - wrappers, overlord/snapstate/backend: make link-snap clean up on
  8817     failure.
  8818   - interfaces/wayland: add wayland interface
  8819   - interfaces: convert kvm to common iface
  8820   - tests: extend upower-observe test to cover snaps providing slots
  8821   - tests: enable main suite for opensuse
  8822   - interfaces: convert physical_memory_observe to common iface
  8823   - interfaces: add missing test for optical_drive interface.
  8824   - interfaces: convert physical_memory_control to common iface
  8825   - interfaces: convert ppp to common iface
  8826   - interfaces: convert time-control to common iface
  8827   - tests: fix failover test
  8828   - interfaces/builtin: rework for avahi interface
  8829   - interfaces: convert broadcom-asic-control to common iface
  8830   - snap/snapenv: document the use of CoreSnapMountDir for SNAP
  8831   - packaging/arch: drop patches merged into master
  8832   - cmd: fix mustUnsetenv docstring (thanks to Chipaca)
  8833   - release: remove default from VERSION_ID
  8834   - tests: enable regression, upgrade and completion test suites for
  8835     fedora
  8836   - tests: restore interfaces-account-control properly
  8837   - overlord/devicestate, store: update device auth endpoints URLs
  8838   - tests: fix install-hook test failure
  8839   - tests: download core and ubuntu-core at most once
  8840   - interfaces: add common support for udev
  8841   - overlord/devicestate: fix, don't assume that the serial is backed
  8842     by a 1-key chain
  8843   - cmd/snap-confine: don't share /etc/nsswitch from host
  8844   - store: do not resume a download when we already have the whole
  8845     thing
  8846   - many: implement "snap logs"
  8847   - store: don't call useDeltas() twice in quick succession
  8848   - interfaces/builtin: add kvm interface
  8849   - snap/snapenv: always expect /snap for $SNAP
  8850   - cmd: mark arch as non-reexecing distro
  8851   - cmd: fix tests that assume /snap mount
  8852   - gitignore: ignore more build artefacts
  8853   - packaging: add current arch packaging
  8854   - interfaces/unity7: allow receiving media key events in (at least)
  8855     gnome-shell
  8856   - interfaces/many, cmd/snap-confine: miscellaneous policy updates
  8857   - interfaces/builtin: implement broadcom-asic-control interface
  8858   - interfaces/builtin: reduce duplication and remove cruft in
  8859     Sanitize{Plug,Slot}
  8860   - tests: apply underscore convention for SNAPMOUNTDIR variable
  8861   - interfaces/greengrass-support: adjust accesses now that have
  8862     working snap
  8863   - daemon, client, cmd/snap: implement "snap services"
  8864   - tests: fix refresh tests not stopping fake store for fedora
  8865   - many: add the interface command
  8866   - overlord/snapstate/backend: some copydata improvements
  8867   - many: support querying and completing assertion type names
  8868   - interfaces/builtin: discard empty Validate{Plug,Slot}
  8869   - cmd/snap-repair:  start of Runner, implement first pass of Peek
  8870     and Fetch
  8871   - tests: enable main suite on fedora
  8872   - snap: do not always quote the snap info summary
  8873   - vendor: update go-flags to address crash in "snap debug"
  8874   - interfaces: opengl support pci device and vendor
  8875   - many: start implenting "base" snap type on the snapd side
  8876   - arch,release: map armv6 correctly
  8877   - many: expose service status in 'snap info'
  8878   - tests: add browser-support interface test
  8879   - tests: disable snapd-notify for the external backend
  8880   - interfaces: Add /run/uuid/request to openvswitch
  8881   - interfaces: add password-manager-service implicit classic
  8882     interface
  8883   - cmd: rework reexec detection
  8884   - cmd: fix re-exec bug when starting from snapd 2.21
  8885   - tests: dependency packages installed during prepare-project
  8886   - tests: remove unneeded check for re-exec in InternalToolPath()
  8887   - cmd,tests: fix classic confinement confusing re-execution code
  8888   - store: configurable base api
  8889   - tests: fix how package lists are updated for opensuse and fedora
  8890  
  8891  * Sun Sep 10 2017 Neal Gompa <ngompa13@gmail.com> - 2.27.6-1
  8892  - Release 2.27.6 to Fedora (RH#1489437)
  8893  
  8894  * Thu Sep 07 2017 Michael Vogt <mvo@ubuntu.com>
  8895  - New upstream release 2.27.6
  8896    - interfaces: add udev netlink support to hardware-observe
  8897    - interfaces/network-{control,observe}: allow receiving
  8898      kobject_uevent() messages
  8899  
  8900  * Mon Sep 04 2017 Neal Gompa <ngompa13@gmail.com> - 2.27.5-1
  8901  - Release 2.27.5 to Fedora (RH#1483177)
  8902  - Backport userd from upstream to support xdg-open
  8903  
  8904  * Wed Aug 30 2017 Michael Vogt <mvo@ubuntu.com>
  8905  - New upstream release 2.27.5
  8906    - interfaces: fix network-manager plug regression
  8907    - hooks: do not error when hook handler is not registered
  8908    - interfaces/alsa,pulseaudio: allow read on udev data for sound
  8909    - interfaces/optical-drive: read access to udev data for /dev/scd*
  8910    - interfaces/browser-support: read on /proc/vmstat and misc udev
  8911      data
  8912  
  8913  * Thu Aug 24 2017 Michael Vogt <mvo@ubuntu.com>
  8914  - New upstream release 2.27.4
  8915    - snap-seccomp: add secondary arch for unrestricted snaps as well
  8916  
  8917  * Fri Aug 18 2017 Michael Vogt <mvo@ubuntu.com>
  8918  - New upstream release 2.27.3
  8919    - systemd: disable `Nice=-5` to fix error when running inside lxdSee
  8920      https://bugs.launchpad.net/snapd/+bug/1709536
  8921  
  8922  * Wed Aug 16 2017 Neal Gompa <ngompa13@gmail.com> - 2.27.2-2
  8923  - Bump to rebuild for F27 and Rawhide
  8924  
  8925  * Wed Aug 16 2017 Neal Gompa <ngompa13@gmail.com> - 2.27.2-1
  8926  - Release 2.27.2 to Fedora (RH#1482173)
  8927  
  8928  * Wed Aug 16 2017 Michael Vogt <mvo@ubuntu.com>
  8929  - New upstream release 2.27.2
  8930   - tests: remove TestInterfacesHelp as it breaks when go-flags
  8931     changes
  8932   - interfaces: don't crash if content slot has no attributes
  8933   - debian: do not build with -buildmode=pie on i386
  8934   - interfaces: backport broadcom-asic-control interface
  8935   - interfaces: allow /usr/bin/xdg-open in unity7
  8936   - store: do not resume a download when we already have the whole
  8937     thing
  8938  
  8939  * Mon Aug 14 2017 Neal Gompa <ngompa13@gmail.com> - 2.27.1-1
  8940  - Release 2.27.1 to Fedora (RH#1481247)
  8941  
  8942  * Mon Aug 14 2017 Michael Vogt <mvo@ubuntu.com>
  8943  - New upstream release 2.27.1
  8944   - tests: use dnf --refresh install to avert stale cache
  8945   - tests: fix test failure on 14.04 due to old version of
  8946     flock
  8947   - updates for unity7/x11, browser-support, network-control,
  8948     mount-observe
  8949   - interfaces/unity7,x11: update for NETLINK_KOBJECT_UEVENT
  8950   - interfaces/browser-support: update sysfs reads for
  8951     newer browser versions
  8952   - interfaces/network-control: rw for ieee80211 advanced wireless
  8953   - interfaces/mount-observe: allow read on sysfs entries for block
  8954     devices
  8955  
  8956  * Thu Aug 10 2017 Neal Gompa <ngompa13@gmail.com> - 2.27-1
  8957  - Release 2.27 to Fedora (RH#1458086)
  8958  
  8959  * Thu Aug 10 2017 Michael Vogt <mvo@ubuntu.com>
  8960  - New upstream release 2.27
  8961   - fix build failure on 32bit fedora
  8962   - interfaces: add password-manager-service implicit classic interface
  8963   - interfaces/greengrass-support: adjust accesses now that have working
  8964     snap
  8965   - interfaces/many, cmd/snap-confine: miscellaneous policy updates
  8966   - interfaces/unity7: allow receiving media key events in (at least)
  8967     gnome-shell
  8968   - cmd: fix re-exec bug when starting from snapd 2.21
  8969   - tests: restore interfaces-account-control properly
  8970   - cmd: fix tests that assume /snap mount
  8971   - cmd: mark arch as non-reexecing distro
  8972   - snap-confine: don't share /etc/nsswitch from host
  8973   - store: talk to api.snapcraft.io for purchases
  8974   - hooks: support for install and remove hooks
  8975   - packaging: fix Fedora support
  8976   - tests: add bluetooth-control interface test
  8977   - store: talk to api.snapcraft.io for assertions
  8978   - tests: remove snapd before building from branch
  8979   - tests: add avahi-observe interface test
  8980   - store: orders API now checks if customer is ready
  8981   - cmd/snap: snap find only searches stable
  8982   - interfaces: updates default, mir, optical-observe, system-observe,
  8983     screen-inhibit-control and unity7
  8984   - tests: speedup prepare statement part 1
  8985   - store: do not send empty refresh requests
  8986   - asserts: fix error handling in snap-developer consistency check
  8987   - systemd: add explicit sync to snapd.core-fixup.sh
  8988   - snapd: generate snap cookies on startup
  8989   - cmd,client,daemon: expose "force devmode" in sysinfo
  8990   - many: introduce and use strutil.ListContains and also
  8991     strutil.SortedListContains
  8992   - assserts,overlord/assertstate: test we don't accept chains of
  8993     assertions founded on a self-signed key coming externally
  8994   - interfaces: enable access to bridge settings
  8995   - interfaces: fix copy-pasted iio vs io in io-ports-control
  8996   - cmd/snap-confine: various small fixes and tweaks to seccomp
  8997     support code
  8998   - interfaces: bring back seccomp argument filtering
  8999   - systemd, osutil: rework systemd logs in preparation for services
  9000     commands
  9001   - tests: store /etc/systemd/system/snap-*core*.mount in snapd-
  9002     state.tar.gz
  9003   - tests: shellcheck improvements for tests/main tasks - first set of
  9004     tests
  9005   - cmd/snap: `--last` for abort and watch, and aliases
  9006     (search→find, change→tasks)
  9007   - tests: shellcheck improvements for tests/lib scripts
  9008   - tests: create ramdisk if it's not present
  9009   - tests: shellcheck improvements for nightly upgrade and regressions
  9010     tests
  9011   - snapd: fix for snapctl get panic on null config values.
  9012   - tests: fix for rng-tools service not restarting
  9013   - systemd: add snapd.core-fixup.service unit
  9014   - cmd: avoid using current symlink in InternalToolPath
  9015   - tests: fix timeout issue for test refresh core with hanging …
  9016   - intefaces: control bridged vlan/ppoe-tagged traffic
  9017   - cmd/snap: include snap type in notes
  9018   - overlord/state: Abort() only visits each task once
  9019   - tests: extend find-private test to cover more cases
  9020   - snap-seccomp: skip socket() tests on systems that use socketcall()
  9021     instead of socket()
  9022   - many: support snap title as localized/title-cased name
  9023   - snap-seccomp: deal with mknod on aarch64 in the seccomp tests
  9024   - interfaces: put base policy fragments inside each interface
  9025   - asserts: introduce NewDecoderWithTypeMaxBodySize
  9026   - tests: fix snapd-notify when it takes more time to restart
  9027   - snap-seccomp: fix snap-seccomp tests in artful
  9028   - tests: fix for create-key task to avoid rng-tools service ramains
  9029     alive
  9030   - snap-seccomp: make sure snap-seccomp writes the bpf file
  9031     atomically
  9032   - tests: do not disable ipv6 on core systems
  9033   - arch: the kernel architecture name is armv7l instead of armv7
  9034   - snap-confine: ensure snap-confine waits some seconds for seccomp
  9035     security profiles
  9036   - tests: shellcheck improvements for tests/nested tasks
  9037   - wrappers: add SyslogIdentifier to the service unit files.
  9038   - tests: shellcheck improvements for unit tasks
  9039   - asserts: implement FindManyTrusted as well
  9040   - asserts: open up and optimize Encoder to help avoiding unnecessary
  9041     copying
  9042   - interfaces: simplify snap-confine by just loading pre-generated
  9043     bpf code
  9044   - tests: restart rng-tools services after few seconds
  9045   - interfaces, tests: add mising dbus abstraction to system-observe
  9046     and extend spread test
  9047   - store: change main store host to api.snapcraft.io
  9048   - overlord/cmdstate: new package for running commands as tasks.
  9049   - spread: help libapt resolve installing libudev-dev
  9050   - tests: show the IP from .travis.yaml
  9051   - tests/main: use pkgdb function in more test cases
  9052   - cmd,daemon: add debug command for displaying the base policy
  9053   - tests: prevent quoting error on opensuse
  9054   - tests: fix nightly suite
  9055   - tests: add linode-sru backend
  9056   - snap-confine: validate SNAP_NAME against security tag
  9057   - tests: fix ipv6 disable for ubuntu-core
  9058   - tests: extend core-revert test to cover bluez issues
  9059   - interfaces/greengrass-support: add support for Amazon Greengrass
  9060     as a snap
  9061   - asserts: support timestamp and optional disabled header on repair
  9062   - tests: reboot after upgrading to snapd on the -proposed pocket
  9063   - many: fix test cases to work with different DistroLibExecDir
  9064   - tests: reenable help test on ubuntu and debian systems
  9065   - packaging/{opensuse,fedora}: allow package build with testkeys
  9066     included
  9067   - tests/lib: generalize RPM build support
  9068   - interfaces/builtin: sync connected slot and permanent slot snippet
  9069   - tests: fix snap create-key by restarting automatically rng-tools
  9070   - many: switch to use http numeric statuses as agreed
  9071   - debian: add missing  Type=notify in 14.04 packaging
  9072   - tests: mark interfaces-openvswitch as manual due to prepare errors
  9073   - debian: unify built_using between the 14.04 and 16.04 packaging
  9074     branch
  9075   - tests: pull from urandom when real entropy is not enough
  9076   - tests/main/manpages: install missing man package
  9077   - tests: add refresh --time output check
  9078   - debian: add missing "make -C data/systemd clean"
  9079   - tests: fix for upgrade test when it is repeated
  9080   - tests/main: use dir abstraction in a few more test cases
  9081   - tests/main: check for confinement in a few more interface tests
  9082   - spread: add fedora snap bin dir to global PATH
  9083   - tests: check that locale-control is not present on core
  9084   - many: snapctl outside hooks
  9085   - tests: add whoami check
  9086   - interfaces: compose the base declaration from interfaces
  9087   - tests: fix spread flaky tests linode
  9088   - tests,packaging: add package build support for openSUSE
  9089   - many: slight improvement of some snap error messaging
  9090   - errtracker: Include /etc/apparmor.d/usr.lib.snap-confine md5sum in
  9091     err reports
  9092   - tests: fix for the test postrm-purge
  9093   - tests: restoring the /etc/environment and service units config for
  9094     each test
  9095   - daemon: make snapd a "Type=notify" daemon and notify when startup
  9096     is done
  9097   - cmd/snap-confine: add support for --base snap
  9098   - many: derive implicit slots from interface meta-data
  9099   - tests: add core revert test
  9100   - tests,packaging: add package build support for Fedora for our
  9101     spread setup
  9102   - interfaces: move base declaration to the policy sub-package
  9103   - tests: fix for snapd-reexec test cheking for restart info on debug
  9104     log
  9105   - tests: show available entropy on error
  9106   - tests: clean journalctl logs on trusty
  9107   - tests: fix econnreset on staging
  9108   - tests: modify core before calling set
  9109   - tests: add snap-confine privilege test
  9110   - tests: add staging snap-id
  9111   - interfaces/builtin: silence ptrace denial for network-manager
  9112   - tests: add alsa interface spread test
  9113   - tests: prefer ipv4 over ipv6
  9114   - tests: fix for econnreset test checking that the download already
  9115     started
  9116   - httputil,store: extract retry code to httputil, reorg usages
  9117   - errtracker: report if snapd did re-execute itself
  9118   - errtracker: include bits of snap-confine apparmor profile
  9119   - tests: take into account staging snap-ids for snap-info
  9120   - cmd: add stub new snap-repair command and add timer
  9121   - many: stop "snap refresh $x --channel invalid" from working
  9122   - interfaces: revert "interfaces: re-add reverted ioctl and quotactl
  9123   - snapstate: consider connect/disconnect tasks in
  9124     CheckChangeConflict.
  9125   - interfaces: disable "mknod |N" in the default seccomp template
  9126     again
  9127   - interfaces,overlord/ifacestate: make sure installing slots after
  9128     plugs works similarly to plugs after slots
  9129   - interfaces/seccomp: add bind() syscall for forced-devmode systems
  9130   - packaging/fedora: Sync packaging from Fedora Dist-Git
  9131   - tests: move static and unit tests to spread task
  9132   - many: error types should be called FooError, not ErrFoo.
  9133   - partition: add directory sync to the save uboot.env file code
  9134   - cmd: test everything (100% coverage \o/)
  9135   - many: make shell scripts shellcheck-clean
  9136   - tests: remove additional setup for docker on core
  9137   - interfaces: add summary to each interface
  9138   - many: remove interface meta-data from list of connections
  9139   - logger (& many more, to accommodate): drop explicit syslog.
  9140   - packaging: import packaging bits for opensuse
  9141   - snapstate,many: implement snap install --unaliased
  9142   - tests/lib: abstract build dependency installation a bit more
  9143   - interfaces, osutil: move flock code from interfaces/mount to
  9144     osutil
  9145   - cmd: auto import assertions only from ext4,vfat file systems
  9146   - many: refactor in preparation for 'snap start'
  9147   - overlord/snapstate: have an explicit code path last-refresh
  9148     unset/zero => immediately refresh try
  9149   - tests: fixes for executions using the staging store
  9150   - tests: use pollinate to seed the rng
  9151   - cmd/snap,tests: show the sha3-384 of the snap for snap info
  9152     --verbose SNAP-FILE
  9153   - asserts: simplify and adjust repair assertion definition
  9154   - cmd/snap,tests: show the snap id if available in snap info
  9155   - daemon,overlord/auth: store from model assertion wins
  9156   - cmd/snap,tests/main: add confinement switch instead of spread
  9157     system blacklisting
  9158   - many: cleanup MockCommands and don't leave a process around after
  9159     hookstate tests
  9160   - tests: update listing test to the core version number schema
  9161   - interfaces: allow snaps to use the timedatectl utility
  9162   - packaging: Add Fedora packaging files
  9163   - tests/libs: add distro_auto_remove_packages function
  9164   - cmd/snap: correct devmode note for anomalous state
  9165   - tests/main/snap-info: use proper pkgdb functions to install distro
  9166     packages
  9167   - tests/lib: use mktemp instead of tempfile to work cross-distro
  9168   - tests: abstract common dirs which differ on distributions
  9169   - many: model and expose interface meta-data.
  9170   - overlord: make config defaults from gadget work also at first boot
  9171   - interfaces/log-observe: allow using journalctl from hostfs for
  9172     classic distro
  9173   - partition,snap: add support for android boot
  9174   - errtracker: small simplification around readMachineID
  9175   - snap-confine: move rm_rf_tmp to test-utils.
  9176   - tests/lib: introduce pkgdb helper library
  9177   - errtracker: try multiple paths to read machine-id
  9178   - overlord/hooks: make sure only one hook for given snap is executed
  9179     at a time.
  9180   - cmd/snap-confine: use SNAP_MOUNT_DIR to setup /snap inside the
  9181     confinement env
  9182   - tests: bump kill-timeout and remove quiet call on build
  9183   - tests/lib/snaps: add a test store snap with a passthrough
  9184     configure hook
  9185   - daemon: teach the daemon to wait on active connections when
  9186     shutting down
  9187   - tests: remove unit tests task
  9188   - tests/main/completion: source from /usr/share/bash-completion
  9189   - assertions: add "repair" assertion
  9190   - interfaces/seccomp: document Backend.NewSpecification
  9191   - wrappers: make StartSnapServices cleanup any services that were
  9192     added if a later one fails
  9193   - overlord/snapstate: avoid creating command aliases for daemons
  9194   - vendor: remove unused packages
  9195   - vendor,partition: fix panics from uenv
  9196   - cmd,interfaces/mount: run snap-update-ns and snap-discard-ns from
  9197     core if possible
  9198   - daemon: do not allow to install ubuntu-core anymore
  9199   - wrappers: service start/stop were inconsistent
  9200   - tests: fix failing tests (snap core version, syslog changes)
  9201   - cmd/snap-update-ns: add actual implementation
  9202   - tests: improve entropy also for ubuntu
  9203   - cmd/snap-confine: use /etc/ssl from the core snap
  9204   - wrappers: don't convert between []byte and string needlessly.
  9205   - hooks: default timeout
  9206   - overlord/snapstate: Enable() was ignoring the flags from the
  9207     snap's state, resulting in losing "devmode" on disable/enable.
  9208   - difs,interfaces/mount: add support for locking namespaces
  9209   - interfaces/mount: keep track of kept mount entries
  9210   - tests/main: move a bunch of greps over to MATCH
  9211   - interfaces/builtin: make all interfaces private
  9212   - interfaces/mount: spell unmount correctly
  9213   - tests: allow 16-X.Y.Z version of core snap
  9214   - the timezone_control interface only allows changing /etc/timezone
  9215     and /etc/writable/timezone. systemd-timedated also updated the
  9216     link of /etc/localtime and /etc/writable/localtime ... allow
  9217     access to this file too
  9218   - cmd/snap-confine: aggregate operations holding global lock
  9219   - api, ifacestate: resolve disconnect early
  9220   - interfaces/builtin: ensure we don't register interfaces twice
  9221  
  9222  * Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.26.3-5
  9223  - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
  9224  
  9225  * Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.26.3-4
  9226  - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
  9227  
  9228  * Thu May 25 2017 Neal Gompa <ngompa13@gmail.com> - 2.26.3-3
  9229  - Cover even more stuff for proper erasure on final uninstall (RH#1444422)
  9230  
  9231  * Sun May 21 2017 Neal Gompa <ngompa13@gmail.com> - 2.26.3-2
  9232  - Fix error in script for removing Snappy content (RH#1444422)
  9233  - Adjust changelog bug references to be specific on origin
  9234  
  9235  * Wed May 17 2017 Neal Gompa <ngompa13@gmail.com> - 2.26.3-1
  9236  - Update to snapd 2.26.3
  9237  - Drop merged and unused patches
  9238  - Cover more Snappy content for proper erasure on final uninstall (RH#1444422)
  9239  - Add temporary fix to ensure generated seccomp profiles don't break snapctl
  9240  
  9241  * Mon May 01 2017 Neal Gompa <ngompa13@gmail.com> - 2.25-1
  9242  - Update to snapd 2.25
  9243  - Ensure all Snappy content is gone on final uninstall (RH#1444422)
  9244  
  9245  * Tue Apr 11 2017 Neal Gompa <ngompa13@gmail.com> - 2.24-1
  9246  - Update to snapd 2.24
  9247  - Drop merged patches
  9248  - Install snap bash completion and snapd info file
  9249  
  9250  * Wed Apr 05 2017 Neal Gompa <ngompa13@gmail.com> - 2.23.6-4
  9251  - Test if snapd socket and timer enabled and start them if enabled on install
  9252  
  9253  * Sat Apr 01 2017 Neal Gompa <ngompa13@gmail.com> - 2.23.6-3
  9254  - Fix profile.d generation so that vars aren't expanded in package build
  9255  
  9256  * Fri Mar 31 2017 Neal Gompa <ngompa13@gmail.com> - 2.23.6-2
  9257  - Fix the overlapping file conflicts between snapd and snap-confine
  9258  - Rework package descriptions slightly
  9259  
  9260  * Thu Mar 30 2017 Neal Gompa <ngompa13@gmail.com> - 2.23.6-1
  9261  - Rebase to snapd 2.23.6
  9262  - Rediff patches
  9263  - Re-enable seccomp
  9264  - Fix building snap-confine on 32-bit arches
  9265  - Set ExclusiveArch based on upstream supported arch list
  9266  
  9267  * Wed Mar 29 2017 Neal Gompa <ngompa13@gmail.com> - 2.23.5-1
  9268  - Rebase to snapd 2.23.5
  9269  - Disable seccomp temporarily avoid snap-confine bugs (LP#1674193)
  9270  - Use vendorized build for non-Fedora
  9271  
  9272  * Mon Mar 13 2017 Neal Gompa <ngompa13@gmail.com> - 2.23.1-1
  9273  - Rebase to snapd 2.23.1
  9274  - Add support for vendored tarball for non-Fedora targets
  9275  - Use merged in SELinux policy module
  9276  
  9277  * Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.16-2
  9278  - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
  9279  
  9280  * Wed Oct 19 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.16-1
  9281  - New upstream release
  9282  
  9283  * Tue Oct 18 2016 Neal Gompa <ngompa13@gmail.com> - 2.14-2
  9284  - Add SELinux policy module subpackage
  9285  
  9286  * Tue Aug 30 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.14-1
  9287  - New upstream release
  9288  
  9289  * Tue Aug 23 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.13-1
  9290  - New upstream release
  9291  
  9292  * Thu Aug 18 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.12-2
  9293  - Correct license identifier
  9294  
  9295  * Thu Aug 18 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.12-1
  9296  - New upstream release
  9297  
  9298  * Thu Aug 18 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.11-8
  9299  - Add %%dir entries for various snapd directories
  9300  - Tweak Source0 URL
  9301  
  9302  * Tue Aug 16 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.11-7
  9303  - Disable snapd re-exec feature by default
  9304  
  9305  * Tue Aug 16 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.11-6
  9306  - Don't auto-start snapd.socket and snapd.refresh.timer
  9307  
  9308  * Tue Aug 16 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.11-5
  9309  - Don't touch snapd state on removal
  9310  
  9311  * Tue Aug 16 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.11-4
  9312  - Use ExecStartPre to load squashfs.ko before snapd starts
  9313  - Use dedicated systemd units for Fedora
  9314  
  9315  * Tue Aug 16 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.11-3
  9316  - Remove systemd preset (will be requested separately according to distribution
  9317    standards).
  9318  
  9319  * Tue Aug 16 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.11-2
  9320  - Use Requires: kmod(squashfs.ko) instead of Requires: kernel-modules
  9321  
  9322  * Tue Aug 16 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.11-1
  9323  - New upstream release
  9324  - Move private executables to /usr/libexec/snapd/
  9325  
  9326  * Fri Jun 24 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.0.9-2
  9327  - Depend on kernel-modules to ensure that squashfs can be loaded. Load it afer
  9328    installing the package. This hopefully fixes
  9329    https://github.com/zyga/snapcore-fedora/issues/2
  9330  
  9331  * Fri Jun 17 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.0.9
  9332  - New upstream release
  9333    https://github.com/snapcore/snapd/releases/tag/2.0.9
  9334  
  9335  * Tue Jun 14 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.0.8.1
  9336  - New upstream release
  9337  
  9338  * Fri Jun 10 2016 Zygmunt Krynicki <me@zygoon.pl> - 2.0.8
  9339  - First package for Fedora