-
Notifications
You must be signed in to change notification settings - Fork 562
/
changelog
1892 lines (1724 loc) · 87 KB
/
changelog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
snapd (2.17) xenial; urgency=medium
* New upstream release, LP: #1637215:
- overlord/ifacestate: add unit tests for undo of setup-snap-
security (#2243)
- daemon,overlord,snap,tests: download to .partial in final dir
(#2237)
- overlord/state: marshaling tests for lanes (#2245)
- overlord/state: introduce state lanes (#2241)
- overlord/snapstate: fix revert+refresh (#2224)
- interfaces/sytemd: enable/disable generated service units (#2229)
- many: fix incorrect security files generation on undo
- overlord/snapstate: add dynamic snapdX.Y assumes (#2227)
- interfaces: network-manager: give slot full read-write access to
/run/NetworkManager
- docs: update the name of the command for the cross-build
- overlord/snapstate: fix missing argument to Noticef
- snapstate: ensure gadget/core/kernel can not be disabled (#2218)
- asserts: limit to 1y only if len(models) == 0 (#2219)
- debian: only install share/locale if available (missing on
powerpc)
- overlrod/snapstate: fix revert followed by refresh to old-current
(#2214)
- interfaces/builtin: network-manager and bluez can change hostname
(#2204)
- snap: switch the auto-import dir to /run/snapd/auto-import
- docs: less details about cloud.cfg as requested in trello (#2206)
- spread.yaml: Ensure ubuntu user has passwordless sudo for
autopkgtests (#2201)
- interfaces/builtin: add dcdbas-control interface
- boot: do not set boot to try mode if the revision is unchanged
- interfaces: add shutdown interface (#2162)
- interfaces: add system-power-control interface
- many: use the new systemd backend for configuring GPIOs
- overlord/ifacestate: setup security for slots before plugs
- snap: spool assertion candidates if snapd is not up yet
- store,daemon,overlord: download things to a partials dir
- asserts,daemon: implement system-user-authority header/concept
- interfaces/builtin: home base declaration rule using on-classic
for its policy
- interfaces/builtin: finish decl based checks
- asserts: bump snap-declaration to allow signing with new-style
plugs and slots
- overlord: checks for kernel installation/refresh based on model
assertion and previous kernel
- tests/lib/fakestore: fix logic to distinguish assertion not found
errors
- client: add a few explicit error types (around the request cycle)
- tests/lib/fakestore/cmd/fakestore: make it log, and fix a typo
- overlord/snapstate: two bugs for one
- snappy: disable auto-import of assertions on classic (#2122)
- overlord/snapstate: move trash cleanup to a cleanup handler
(#2173)
- daemon: make create-user --known fail on classic without --force-
managed (#2123)
- asserts,interfaces/policy: implement on-classic plug/slot
constraints
- overlord: check that the first installed gadget matches the model
assertion
- tests: use the snapd-control-consumer snap from the store
- cmd/snap: make snap run not talk to snapd for finding the revision
- snap/squashfs: try to hard link instead of copying. Also, switch
to osutil.CopyFile for cp invocation.
- store: send supported max-format when retrieving assertions
- snapstate, devicestate: do not remove seed
- boot,image,overlord,partition: read/write boot variables in single
operation
- tests: reenable ubuntu-core tests on qemu
- asserts,interfaces/policy: allow OR-ing of subrule constraints in
plug/slot rules
- many: move from flags as ints to flags as structs-of-bools (#2156)
- many: add supports for keeping and finding assertions with
different format iterations
- snap: stop using ubuntu-core-launcher, use snap-confine
- many: introduce an assertion format iteration concept, refuse to
add unsupported assertion
- interfaces: tweak wording and comment
- spread.yaml: dump apparmor denials on spread failure
- tests: unflake ubuntu-core-reboot (#2150)
- cmd/snap: tweak unknown command error message (#2139)
- client,daemon,cmd: add payment-declined error kind (#2107)
- cmd/snap: update remove command help (#2145)
- many: removed frameworks target and fixed service files (#2138)
- asserts,snap: validate attributes to a JSON-compatible type subset
(#2140)
- asserts: remove unused serial-proof type
- tests: skip auto-import tests on systems without test keys (#2142)
- overlord/devicestate: don't spam the debug log on classic (#2141)
- cmd/snap: simplify auto-import mountinfo parsing (#2135)
- tests: run ubuntu-core upgrades on isolated machine (#2137)
- overlord/devicestate: recover seeding from old external approach
(#2134)
- overlord: merge overlord/boot pkg into overlord/devicestate
(#2118)
- daemon: add postCreateUserSuite test suite (#2124)
- tests: abort tests if an update process is scheduled (#2119)
- snapstate: avoid reboots if nothing in the boot setup has changed
(#2117)
- cmd/snap: do not auto-import from loop or non-dev devices (#2121)
- tests: add spread test for `snap auto-import` (#2126)
- tests: add test for auto-mount assertion import (#2127)
- osutil: add missing unit tests for IsMounted (#2133)
- tests: check for failure creating user on managed ubuntu-core
systems (#2096)
- snap: ignore /dev/loop addings from udev (#2111)
- tests: remove snapd.boot-ok reference (#2109)
- tests: enable tests related to the home interface in all-snaps
(#2106)
- snapstate: only import defaults from gadget on install (#2105)
- many: move firstboot code into the snapd daemon (#2033)
- store: send correct JSON type of string for expected payment
amount (#2103)
- cmd/snap: rename is-managed to managed and tune (#2102)
- interfaces,overlord/ifacestate: initial cleaning up of no arg
AutoConnect related bits (#2090)
- client, cmd: prompt for password when buying (#2086)
- snapstate: fix hanging `snap remove` if snap is no longer mounted
- image: support gadget specific cloud.conf file (#2101)
- cmd/snap,ctlcmd: fix behavior of snap(ctl) get (#2093)
- store: local users download from the anonymous url (#2100)
- docs/hooks.md: fix typos (#2099)
- many: check installation of slots and plugs against declarations
- docs: fix missing "=" in the systemd-active docs
- store: do not set store auth for local users (#2092)
- interfaces,overlord/ifacestate: use declaration-based checking for
auto-connect (#2071)
- overlord, daemon, snap: support gadget config defaults (#2082)The
main semantic changes are:
- tests: fix snap-disconnect tests after core rename (#2088)
- client,daemon,overlord,cmd: add /v2/users and create-user on auto-
import (#2074)
- many: abbreviated forms of disconnect (#2066)
- asserts: require lowercase model until insensitive matching is
ready (#2076)
- cmd/snap: add version command, same as --version (#2075)
- all: use "core" by default but allow "ubuntu-core" still (#2070)
- overlord/devicestate, docs/hooks.md: nest prepare-device
configuration options
- daemon: fix login API to return local macaroons (#2078)
- daemon: do not hardcode UID in userLookup (#2080)
- client, cmd: connect fixes (#2026)
- many: preparations for switching most of autoconnect to use the
declarationsfor now:
- overlord/auth: update CheckMacaroon to verify local snapd
macaroons (#2069)
- cmd/snap: trivial auto-import and download tweaks (#2067)
- interfaces: add repo.ResolveConnect that handles name resolution
- interfaces/policy: introduce InstallCandidate and its checks
- interfaces/policy,overlord: check connection requests against the
declarations in ifacestate
- many: setup snapd macaroon for local users (#2051)Next step: do
snapd macaroons verification.
- interfaces/policy: implement snap-id/publisher-id checks
- many: change Connect to take ConnRef instead of strings (#2060)
- snap: auto mount block devices and import assertions (#2047)
- daemon: add `snap create-user --force-managed` support (#2041)
- docs: remove references to removed buying features (#2057)
- interfaces,docs: allow sharing SNAP{,_DATA,_COMMON} via content
iface (#2063)
- interfaces: add Plug/Slot/Connection reference helpers (#2056)
- client,daemon,cmd/snap: improve create-user APIs (#2054)
- many: introduce snap refresh --ignore-validation <snap> to
override refresh validation (#2052)
- daemon: add support for `snap create-user --known` (#2040)
- interfaces/policy: start of interface policy checking code based
on declarations (#2050)
- overlord/configstate: support nested configuration (#2039)
- asserts,interfaces/builtin,overlord/assertstate: introduce base-
declaration (#2037)
- interfaces: builtin: Allow writing DHCP lease files to
/run/NetworkManager/dhcp (#2049)
- many: remove all traces of the /v2/buy/methods endpoint (#2045)
- tests: add external spread backend (#1918)
- asserts: parse the slot rules in snap-declarations (#2035)
- interfaces: allow read of /etc/ld.so.preload by default for armhf
on series 16 (#2048)
- store: change purchase to order and store clean up first pass
(#2043)
- daemon, store: switch to new store APIs in snapd (#2036)
- many: add email to UserState (#2038)
- asserts: support parsing the plugs stanza i.e. plug rules in snap-
declarations (#2027)
- store: apply deltas if explicitly enabled (#2031)
- tests: fix create-key/snap-sign test isolation (#2032)
- snap/implicit: don't restrict the camera iface to clasic (#2025)
- client, cmd: change buy command to match UX document (#2011)
- coreconfig: nuke it. Also, ignore po/snappy.pot. (#2030)
- store: download deltas if explicitly enabled (#2017)
- many: allow use of the system user assertion with create-user
(#1990)
- asserts,overlord,snap: add prepare-device hook for device
registration (#2005)
- debian: adjust packaging for trusty/deputy systemd (#2003)
- asserts: introduce AttributeConstraints (#2015)
- interface/builtin: access system bus on screen-inhibit-control
- tests: add firewall-control interface test (#2009)
- snapstate: pass errors from ListRefresh in updateInfo (#2018)
- README: add links to IRC, mailing list and social media (#2022)
- docs: add `configure` hook to hooks list (#2024)LP: #1596629
- cmd/snap,configstate: rename apply-config variables to configure.
(#2023)
- store: retry download on 500 (#2019)
- interfaces/builtin: support time and date settings via
'org.freedesktop.timedate1 (#1832)
-- Michael Vogt <michael.vogt@ubuntu.com> Wed, 02 Nov 2016 01:17:36 +0200
snapd (2.16) xenial; urgency=medium
* New upstream release, LP: #1628425
- overlord/state: prune old empty changes
- interfaces: ppp: load needed kernel module (#2007)
- interfaces/builtin: add missing rule to allow run-parts to
execute all resolvconf scripts
- many: rename apply-config hook to configure
- tests: use new spread `debug` feature
- many: finish `snap set` API.
- overlord: fix and simplify configstate.Transaction
- assertions: add system-user assertion
- snap: add `snap known --remote`
- tests: replace systemd-run with on-the-fly generation of units.
- overlord/boot: switch to using assertstate.Batch
- snap, daemon, store: pass through screenshots from store
- image: add meta/gadget.yaml infrastructure
- tests: add test benchmark script
- daemon: add the actual ssh keys that got added to the create-user
response
- daemon: add REST API behind `snap get`
- debian: re-add golang-github-gosexy-gettext-dev
- tests: added install_local function
- interfaces/builtin: fix resolvconf permissions for network-manager
interface
- tests: use apt as compatible with trusty
- many: discard preserved namespace after removing snap
- daemon, overlord, store: add ReadyToBuy API to snapd
- many: add support for installing/removing multiple snaps
- progress: use New64 and fix output newline
- interfaces/builtin: allow network-manager to access netplan conf
files
- tests: build once and install test snap from cache
- overlord/state: introduce cleanup support
- snap: move/clarify Info.Broken
- ctlcmd: add snapctl get.
- overlord,store: clean up serial-proof plumbing code
- interfaces/builtin: add network-setup-observe interface
- daemon,overlord/assertstate: support streams of assertions with
snap ack
- snapd: kmod backend
- tests: ensure HOME is also set correctly
- configstate,hookstate: add snapctl set
- tests: disable broken create-key test
- interfaces: adjust bluetooth-control to allow getsockopt (LP:
#1613572)
- tests: add a test for core about device initialization and device
registration and auth
- many: show snap name before the download progress bar
- interfaces/builtin: add rcvfrom for client connected plugs to mir
interface
- asserts: support for maps in assertions
- tests: increase timeout for key generation in create-key test
- many: validate refreshes against validation assertions by gating
snaps
- interfaces/apparmor: allow 'm' in default policy for snap-exec
- many: avoid snap.InfoFromSnapYaml in tests
- interfaces/builtin: allow /dev/net/tun with network-control
- tests: add spread test for snap create-key/snap sign
- tests: add missing quotes in security-device-cgroups/task.yaml
- interfaces: drop ErrUnknownSecurity
- store: add "ready to buy" method
- snap/snapenv, tests: use root's data dirs when running via sudo
- interfaces/builtin: add initial docker interface
- snap: remove extra newline after progress is done
- docs: fix formating of HACKING.md "Testing snapd"
- store : add requestOptions.ExtraHeaders so that individual
requests can customise headers.
- many: use unique plug/slot names in tests
- tests: add tests for the classic dimension
- many: add vendoring of dependencies by default
- tests: use in-tree snap{ctl,-exec} for all tests
- many: support snapctl -h
- tests: adjust regex after changes in stat output
- store,snap: initial support for delta downloads
- interfaces/builtin: add run/udev/data paths to mir interface
- snap: lessen annoyance of implicit interface tests
- tests: ensure http{,s}_proxy is defined inside the fake-store
- interfaces: allow xdg-open in unity7, unity7 cleanups
- daemon,store: move store login user logic to store
- tests: replace realpath with readlink -f for trusty support.
- tests: add https_proxy into environment as well
- interfaces/builtin: allow mmaping pulseaudio buffers
-- Michael Vogt <michael.vogt@ubuntu.com> Wed, 28 Sep 2016 11:09:27 +0200
snapd (2.15.2ubuntu1) xenial; urgency=medium
* New upstream release, LP: #1623579
- snap/snapenv, tests: use root's data dirs when running via sudo
(cherry pick PR: #1857)
- tests: add https_proxy into environment
(cherry pick PR: #1926)
- interfaces: allow xdg-open in unity7, unity7 cleanups
(cherry pick PR: #1946)
- tests: ensure http{,s}_proxy is defined inside the fake-store
(cherry pick PR: #1949)
-- Michael Vogt <michael.vogt@ubuntu.com> Wed, 21 Sep 2016 17:21:12 +0200
snapd (2.15.2) xenial; urgency=medium
* New upstream release, LP: #1623579
- asserts: define a bit less terse Ref.String
- interfaces: disable auto-connect in libvirt interface
- asserts: check that validation assertions are signed by the
publisher of the gating snap
-- Michael Vogt <michael.vogt@ubuntu.com> Mon, 19 Sep 2016 10:42:29 +0200
snapd (2.15.1) xenial; urgency=medium
* New upstream release, LP: #1623579
- image: ensure local snaps are put last in seed.yaml
- asserts: revert change that made the account-key's name mandatory.
- many: refresh all snap decls
- interfaces/apparmor: allow reading /etc/environment
-- Michael Vogt <michael.vogt@ubuntu.com> Mon, 19 Sep 2016 09:19:44 +0200
snapd (2.15) xenial; urgency=medium
* New upstream release, LP: #1623579
- tests: disable prepare-image-grub test in autopkgtest
- interfaces: allow special casing for auto-connect until we have
assertions
- docs: add a little documentation on hooks.
- hookstate,daemon: don't mock HookRunner, mock command.
- tests: add http_proxy to /etc/environment in the autopkgtest
environment
- backends: first bits of kernel-module security backend
- tests: ensure openssh-server is installed in autopkgtest
- tests: make ubuntu-core tests more robust
- many: mostly work to support ABA upgrades
- cmd/snap: do runtime linting of descriptions
- spread.yaml: don't assume LANG is set
- snap: fix SNAP* environment merging in `snap run`
- CONTRIBUTING.md: remove integration-tests, include spread
- store: don't discard error body from request device session call
- docs: add create-user documentation
- cmd/snap: match UX document for message when buying without login
- firstboot: do not overwrite any existing netplan config
- tests: add debug output to ubuntu-core-update-rollback-
stresstest:
- tests/lib/prepare.sh: test that classic does not setting bootvars
- snap: run all tests with gpg2
- asserts: basic support for validation assertion and refresh-
control
- interfaces: miscellaneous policy updates for default, browser-
support and camera
- snap: (re)add --force-dangerous compat option
- tests: ensure SUDO_{USER,GID} is unset in the spread tests
- many: clean out left over references to integration tests
- overlord/auth,store: fix raciness in updating device/user in state
through authcontext and other issuesbonus fixes:
- tests: fix spread tests on yakkety
- store: refactor auth/refresh tests
- asserts: use gpg --fixed-list-mode to be compatible with both gpg1
and gpg2
- cmd/snap: i18n option descriptions
- asserts: required account key name header
- tests: add yakkety test host
- packaging: make sure debhelper-generated snippet is invoked on
postrm
- snap,store: capture newest digest from the store, make it
DownloadInfo only
- tests: add upower-observe spread test
- Merge github.com:snapcore/snapd
- tests: fixes to actually run the spread tests inside autopkgtest
- cmd/snap: make "snap find" error nicer.
- tests: get the gadget name from snap list
- cmd/snap: tweak help of 'snap download'
- cmd/snap,image: teach snap download to download also assertions
- interfaces/builtin: tweak opengl interface
- interfaces: serial-port use udevUsbDeviceSnippet
- store: ensure the payment methods method handles auth failure
- overlord/snapstate: support revert flags
- many: add snap configuration to REST API
- tests: use ubuntu-image for the ubuntu-core-16 image creation
- cmd/snap: serialise empty keys list as [] rather than null
- cmd/snap,client: add snap set and snap get commands
- asserts: update trusted account-key asserts with names
- overlord/snapstate: misc fixes/tweaks/cleanups
- image: have prepare-image set devmode correctly
- overlord/boot: have firstboot support assertion files with
multiple assertions
- daemon: bail from enable and disable if revision given, and from
multi-op if unsupported optons given
- osutil: call sync after cp if
requested.overlord/snapstate/backend: switch to use osutil instead
of another buggy call to cp
- cmd/snap: generate account-key-request "since" header in UTC
- many: use symlinks instead of wrappers
- tests: remove silly [Service] entry from snapd.socket.d/local.conf
- store: switch device session to use device-session-request
assertion
- snap: ensure that plug and slot names are unique
- cmd/snap: fix test suite (no Exit(0) on tests!)
- interfaces: add interface for hidraw devices
- tests: use the real model assertion when creating the core test
image
- interfaces/builtin: add udisks2 and removable-media interfaces
- interface: network_manager: enable resolvconf
- interfaces/builtin: usb serial-port support via udev
- interfaces/udev: support noneSecurityTag keyed snippets
- snap: switch to the new agreed regexp for snap names
- tests: adjust test setup after ubuntu user removal
- many: start services only after the snap is fully ready (link-snap
was run)
- asserts: don't have Add/Check panic in the face of unsupported no-
authority assertions
- asserts: initial support to generate/sign snap-build assertions
- asserts: support checking account-key-request assertions
- overlord: introduce AuthContext.DeviceSessionRequest with support
in devicestate
- overlord/state: fix for reloaded task/change crashing on Set if
checkpointed w. no custom data yet
- snapd.refresh.service: require snap.socket and /snap/*/current.
- many: spell --force-dangerous as just --dangerous, devmode should
imply it
- overlord/devicestate: try to fetch/refresh the signing key of
serial (also in case is not there yet)
- image,overlord/boot,snap: metadata from asserts for image snaps
- many: automatically restart all-snap devices after os/kernel
updates
- interfaces: modem-manager: ignore camera
- firstboot: only configure en* and eth* interfaces by default
- interfaces: fix interface handling on no-app snaps
- snap: set user variables even if HOME is unset (like with systemd
services)
-- Michael Vogt <michael.vogt@ubuntu.com> Fri, 16 Sep 2016 07:46:22 +0200
snapd (2.14.2~16.04) xenial; urgency=medium
* New upstream release: LP: #1618095
- tests: use the spread tests with the adhoc interface inside
autopkgtest
- interfaces: add fwupd interface
- asserts,cmd/snap: add "name" header to account-key(-request)
- client,cmd/snap: display os-release data only on classic
- asserts/tool,cmd/snap: introduce hidden "snap sign"
- many: when installing snap file derive metadata from assertions
unless --force-dangerous
- osutil: tweak the createUserTests a bit and extract common code
- debian: umount --lazy before rm on snapd.postrm
- interfaces: updates to default policy, browser-support, and x11
- store: set initial device session
- interfaces: add upower-observe interface (LP: #1595813)
- tests: use beta u-d-f in test by default
- interfaces/builtin: allow writing on /dev/vhci in bluetooth-
control
- interfaces/builtin: allow /dev/vhci on bluetooth-control
- tests: port integration tests to spread
- snapstate: use umount --lazy when removing the mount units
- spread: enable halt-timeout, tweak image selection
- tests: fix firstboot-assertions to actually be runnable on classic
again
- asserts: introduce device-session-request
- interfaces: add screen-inhibit-control interface (LP: #1604880)
- firstboot: change location of netplan config
- overlord/devicestate: some cleanups and solving a couple todos
- daemon,overlord: add subcommand handling to snapctl
-- Michael Vogt <michael.vogt@ubuntu.com> Thu, 01 Sep 2016 18:52:05 +0200
snapd (2.14.1) xenial; urgency=medium
* New upstream release: LP: #1618095
- snap-exec: add support for commands with internal args in snap-
exec
- store: refresh expired device sessions
- debian: re-add ubuntu-core-snapd-units as a transitional package
- image: snap assertions into image
- overlord/assertstate,asserts/snapasserts: give snap assertions
helpers a package, introduce ReconstructSideInfo
- docs/interfaces: Add empty line after lxd-support title
- README: cover the new /run/snapd-snap.socket
- daemon: make socket split backward-compatible.
-- Michael Vogt <michael.vogt@ubuntu.com> Tue, 30 Aug 2016 16:43:29 +0200
snapd (2.14) xenial; urgency=medium
* New upstream release: LP: #1618095
- cmd: enable SNAP_REEXEC only if it is set to SNAP_REEXEC=1
- osutil: fix create-user on classic
- firstboot: disable firstboot on classic for now
- cmd/snap: add export-key --account= option
- many: split public snapd REST API into separate socket.
- many: drop ubuntu-core-snapd-units package, use release.OnClassic
instead
- tests: add content-shareing binary test that excersises snap-
confine
- snap: use "up to date" instead of "up-to-date"
- asserts: add an account-key-request assertion
- asserts: fix GPG key generation parameters
- tests, integration-tests: implement the cups-control manual test
as a spread test
- many: clarify/tie down model assertion
- cmd/snap: add "snap download" command
- integration-tests: remove them in favour of the spread tests
- tests: test all snap ubuntu core upgrade
- many: support install and remove by revision
- overlord/state: prevent change ready => unready
- tests: fixes to make the ubuntu-core-16 image usable with
-keep/-reuse
- asserts: authority-id and brand-id of serial must match
- firstboot: generate netplan config rather than ifupdown
- store: request device session macaroon from store
- tests: add workaround for u-d-f to unblock all-snap image tests
- tests: the stable ubuntu-core snap has snap run support now
- many: use make StripGlobalRootDir public
- asserts: add some stricter checks around format
- many: have AuthContext expose device store-id, serial and serial-
proof signing to the store
- tests: fix "tests/main/ack" to not break if asserts are alreay
there
- tests/main/ack: fix test/style
- snap: add key management commands
- firstboot: add firstboot assertions importing
-- Michael Vogt <michael.vogt@ubuntu.com> Mon, 29 Aug 2016 17:07:20 +0200
snapd (2.13) xenial; urgency=medium
* New upstream release: LP: #1616157
- many: respect dirs.SnapSnapsDir in tests
- tests: update listing test for latest stable image
- many: hook in start of code to fetch/check assertions when
installing snap from store
- boot: add missing udevadm mock to fix FTBFS
- interfaces: add lxd-support interface
- dirs,snap: handle empty root directory in SetRootDir
- dirs,snap: define methods for SNAP_USER_DATA and SNAP_USER_COMMON
- tests: spread all-snap test cleanup
- tests: add all-snap spread image tests
- store,tests: have just one envvar SNAPPY_USE_STAGING_STORE to
control talking to staging
- overlord/hookstate: use snap run posix parameters.
- interfaces/builtin: allow bind in the network interface
- asserts,overlord/devicestate: simplify private key/key pairs APIs,
they take just key ids
- dependencies: update godeps
- boot: add support for "devmode: {true,false}" in seed.yaml
- many: teach prepare-image to copy the model assertion (and
prereqs) into the seed area of the image
- tests: start teaching the fakestore about assertions
- asserts/sysdb: embed the new format official root/trusted
assertions
- overlord/devicestate: first pass at device registration logic
- tests: add process-control interface spread test
- tests: disable unity test
- tests: adapt to new spread version
- asserts: add serial-proof device assertion
- client, cmd/snap: use the new multi-refresh endpoint
- many: preparations for image code to fetch model prereqs
- debian: add extra checks when debian/snapd.postrm purge is run
- overlord/snapstate, daemon: support for multi-snap refresh
- tests: do not leave "squashfs-root" around
- snap-exec: Fix broken `snap run --shell` and add test
- overlord/snapstate: check changes to SnapState for conflicts also.
- docs/interfaces: change snappy command to snap
- tests: test `snap run --hook` using in-tree snap-exec.
- partition: ensure that snap_{kernel,core} is not overriden with an
empty value
- asserts,overlord/assertstate: introduce an assertstate task
handler to fetch snap assertions
- spread: disable re-exec to always test development tree.
- interfaces: implement a fuse interface
- interfaces/hardware-observe.go: re-add /run/udev/data
- overlord/assertstate,daemon: reorg how the assert manager exposes
the assertion db and adding to it
- release: Remove "UBUNTU_CODENAME" from the test data
- many: implement snapctl command.
- interfaces: mpris updates (fix unconfined introspection, add name
attribute)
- asserts: export DecodePublicKey
- asserts: introduce support for assertions with no authority,
implement serial-request
- interfaces: bluez: add a few more tests to verify interface
connection works
- interfaces: bluez: add missing mount security snippet case
- interfaces: add kernel-module interface for module insertion.
- integration-tests: look for ubuntu-device-flash on PATH before
calling sudo
- client, cmd, daemon, osutil: support --yaml and --sudoer flags for
create-user
- spread: use snap-confine from ppa:snappy-dev/image for the tests
- many: move to purely hash based key lookup and to new
key/signature format (v1)
- spread: Use /home/gopath in spread.yaml
- tests: base security spread tests
-- Michael Vogt <michael.vogt@ubuntu.com> Wed, 24 Aug 2016 14:48:28 +0200
snapd (2.12) xenial; urgency=medium
* New upstream release: LP: #1612362
- many: do not require root for `snap prepare-image`
- tests: prevent restore error on test failure
- osutil: change escaping for create-user's sudoers
- docs: private flag doesn't exist on /v2/find (it's select)
- snap: do not sort the result of `snap find`
- interfaces/builtin: add gpio interface
- partition: fix cleaning of the boot variables on the second good
boot
- tests: add udev rules spread test
- docs: fix references to refresh action
- interfaces/udev,osutil: avoid doubled rules and put all in a per
snap file
- store: minor store improvements from previous reviews
- many: support interactive payments in snapd, filter from command
line
- docs/interfaces.md: improve interfaces documentation
- overlord,store: set store device authorization header
- store: add device nonce API support
- many: various fixes around the `create-user` command
- client, osutil: chown the auth file
- interfaces/builtin: add transitional browser-support interface
- snap: don't load unsupported implicit hooks.
- cmd/snap,cmd/snap-exec: support hooks again.
- interfaces/builtin: improve pulseaudio interface
- asserts: make account-key's `until` optional to represent a never-
expiring key
- store: refactor newRequest/doRequest to take requestOptions
- tests: allow-downgrades on upgrade test to prevent version errors
- daemon: stop using group membership as succedaneous of running
things with sudo
- interfaces: add bluetooth-control interfaces
- many: remove integration-test coverage metrics
- daemon,docs: drop license docs and error kind
- tests: add network-control interface spread test
- tests: add hardware-observe spread test
- interfaces: add system-trace interface LP: #1600085
- boot: use `cp -aLv` instead of `cp -a` (no symlinks on vfat)
- store: soft-refresh discharge macaroon from store when required
- partition: clear snap_try_{kernel,core} on success
- tests: add snapd-control interface spread test
- tests: add locale-control write spread test
- store: fix buy method after some refactoring broke it
- interfaces/builtin: read perms for network devices in network-
observe
- interfaces: also allow rfkill in network_control
- snapstate: remove artifacts from a snap try dir that vanished
- client, cmd/snap: better errors for empty snap list result
- wrappers: set BAMF_DESKTOP_FILE_HINT for unity
- many: cleanup/update rest.md; improve auth errors
- interfaces: miscelleneous policy updates for default, log-observe,
mount-observe, opengl, pulseaudio, system-observe and unity7
- interfaces: add process-control interface (LP: #1598225)
- osutil: support both "nobody" and "nogroup" for grpnam tests
- cmd: support defaulting to the user's preferred payment method
- overlord: actually run hooks.
- overlord/state,overlord/ifacestate: define basic infrastructure
for and then setting up serialising of interface mgr tasks
- asserts: add Assertion.Prerequisites and SigningKey, Ref and
FindTrusted
- overlord/snapstate: ensure calls to store are done without the
state lock held
- asserts,client: switch snap-build and snap-revision to be indexed
by snap-sha3-384
- many: make seed.yaml on firstboot mandatory and include sideInfo
- asserts,many: start supporting structured headers using the new
parseHeaders
- many: update code for the new snap_mode
- tests: added spread find private test
- store: deal with 404 froms the SSO store properly
- snap: remove meta/kernel.yaml again
- daemon: always mock release info in tests
- snapstate: drop revisions after "current" on refresh
- asserts: introduce new parseHeadersThis introduces the new
parseHeaders returning map[string]interface{} and capable of
accepting:
- asserts: remove/disable comma separated lists and their uses
-- Michael Vogt <michael.vogt@ubuntu.com> Thu, 11 Aug 2016 19:30:36 +0200
snapd (2.11) xenial; urgency=medium
* New upstream release: LP: #1605303
- increase version number to reflect the nature of the update
better
- store, daemon, client, cmd/snap, docs/rest.md: adieu search
grammar
- debian: move snapd.refresh.timer into timers.target
- snapstate: add daemon-reload to fix autopkgtest on yakkety
- Interfaces: hardware-observe
- snap: rework the output after a snap operation
- daemon, cmd/snap: refresh --devmode
- store, daemon, client, cmd/snap: implement `snap find --private`
- tests: add network-observe interface spread test
- interfaces/builtin: allow getsockopt for connected x11 plugs
- osutil: check for nogrup instead of adm
- store: small cleanups (more needed)
- snap/squashfs: fix test not to hardcode snap size
- client,cmd/snap: cleanup cmd/snap test suite, add extra args
testThis cleans up the cmd/snap test suite:
- wrappers: map "never" restart condition to "no."
- wrappers: run update-desktop-database after add/remove of desktop
files
- release: work around elementary mistake
- many: remove all traces of channel from the buying codepath
- store: kill setUbuntuStoreHeaders
- docs: add payment methods documentation
- many: present user with a choice of payment backends
- asserts: add cross checks for snap asserts
- cmd/snap,cmd/snap-exec: support running hooks via snap-exec.
- tests: improve snap run symlink tests
- tests: add content sharing interface spread test
- store & many: a mechanical branch shortening store names
- snappy: remove old snappy pkg
- overlord/snapstate: kill flagscompat
- overlord/snapstate, daemon, client, cmd/snap: devmode override
(aka confined)
- tests: extend refresh test to talk to the staging and production
stores
- asserts,daemon: cross checks for account and account-key
assertions
- client: existing JSON fixtures uses tabs for indentation
- snap-exec: add proper integration test for snap-exec
- spread.yaml, tests: replace hello-world with test-snapd-tools
- tests: add locale-control interface spread test
- tests: add mount-observe interface spread test
- tests: add system-observe interface spread test
- many: add AuthContext to mediate user updates to the state
- store/auth: add helper for the macaroon refresh endpoint
- cmd: add buy command
- overlord: switch snapstate.Update to use ListRefresh (aka
/snaps/metadata)
- snap-exec: fix silly off-by-one error
- tests: stop using hello-world.echo in the tests
- tests: add env command to test-snapd-tools
- classic: remove (most of) "classic" mode, this is implemented as a
snap now
- many: remove snapstate.Candidate and other cleanups
- many: removed authenticator, store gets a user instead
- asserts: fix minor doc comment typo
- snap: ensure unknown arguments to `snap run` are ignored
- overlord/auth: add Device/SetDevice to persist device identity in
state
- overlord: make SyncBoot work again
- tests: add -y flag to apt autoremove command in unity task restore
- many: migrate SnapSetup and SideInfo to use RealName
- daemon: drop auther()
- client: improve error from client.do() on json decode failures
- tests: readd the fake store tests
- many: allow removal of broken snaps, add spread test
- overlord: implement &Retry{After: duration} support for handlers
- interface: add new interfaces.all.SecurityBackends
- integration-tests: remove login tests
- cmd,interfaces,snap: implement hook whitelist.
- daemon,overlord/auth,store: update macaroon authentication to use
the new endpoints
- daemon, overlord: add buy endpoint to REST API
- tests: use systemd-run for starting and stopping the unity app
- tests, integration-tests: port systemd service check test to
spread
- store: switch search to new snap-specific endpoint
- store, many: start using the new details endpoint
- tests, integration-tests: port unity test to spread
- tests: add spread test for tried snaps removal
- tests, integration-tests: port auth errors test to spread
- snapstate: rename OfficialName to RealName in the new tests
- many: rename SideInfo.OfficialName to SideInfo.RealName
- snapstate: use snapstate.Type in backend.RemoveSnapFiles
- many: add `snap enable/disable` commands
- tests, integration-tests: port refresh all test to spread
- snap: add `snap run --shell`
- tests: set yaml indentation to 4 spaces
- snapstate: cleanup downloaded temp snap files
- overlord: make patch1_test more robust
- debian: add snapd.postrm that purges
- integration-tests: drop already covered refresh app test
- many: add concept of "broken" snaps
- tests, integration-tests: port remove errors tests to spread
- tests, integration-tests: port revert test to spread
- debian: fix snapbuild path
- overlord: fix access to the state without lock in firstboot.go and
add test
- snapstate: add very simple garbage collection on upgrade
- asserts: introduce assertstest with helpers to test code involving
assertions
- tests, integration tests: port undone failed install test to
spread
- snap,store: switch to the new snaps/metadata endpoint, introduce
and start capturing DeveloperID
- tests, integration-tests: port the op remove retry test to spread
- po: remove snappy.pot from git, it will be generated at build time
- many: add some missing tests, clarify some things and nitpicks as
follow up to `snap revert`
- snapstate: when doing snapsate.Update|Install, talk to the store
early
- tests, integration-tests: port the op remove test to spread
- interfaces: allow /usr/bin/locale in default policy
- many: add `snap revert`
- overlord/auth,store: add macaroon serialization/deserialization
helpers
- many: embed main store trusted assertions in snapd, way to have
test ones, spread tests for ack and known
- overlord/snapstate,daemon: clarify active vs current, add
SnapState.HasCurrent,CurrentInfo
- tests: do not search for a specific snap (we hit 100 items) and
pagination kicks in
- tests: use printf instead of echo where we need portability
- tests: rename and generalize basic-binaries to test-snapd-tools
-- Michael Vogt <michael.vogt@ubuntu.com> Tue, 26 Jul 2016 15:49:04 +0200
snapd (2.0.10) xenial; urgency=medium
* New upstream release: LP: #1597329
- interfaces: also allow @{PROC}/@{pid}/mountinfo and
@{PROC}/@{pid}/mountstats
- interfaces: allow read access to /etc/machine-id and
@{PROC}/@{pid}/smaps
- interfaces: miscelleneous policy updates for default, log-observe
and system-observe
- snapstate: add logging after a successful doLinkSnap
- tests, integration-tests: port try tests to spread
- store, cmd/snapd: send a basic user-agent to the store
- store: add buy method
- client: retry on failed GETs
- tests: actual refresh test
- docs: REST API update
- interfaces: add mount support for hooks.
- interfaces: add udev support for hooks.
- interfaces: add dbus support for hooks.
- tests, integration-tests: port refresh test to spread
- tests, integration-tests: port change errors test to spread
- overlord/ifacestate: don't retry snap security setup
- integration-tests: remove unused file
- tests: manage the socket unit when reseting state
- overlord: improve organization of state patches
- tests: wait for snapd listening after reset
- interfaces/builtin: allow other sr*/scd* optical devices
- systemd: add support for squashfuse
- snap: make snaps vanishing less fatal for the system
- snap-exec: os.Exec() needs argv0 in the args[] slice too
- many: add new `create-user` command
- interfaces: auto-connect content interfaces with the same content
and developer
- snapstate: add Current revision to SnapState
- readme: tweak readme blurb
- integration-tests: wait for listening port instead of active
service reported by systemd
- many: rename Current -> {CurrentSideInfo,CurrentInfo}
- spread: fix home interface test after suite move
- many: name unversioned data.
- interfaces: add "content" interface
- overlord/snapstate: defaultBackend can go away now
- debian: comment to remember why the timer is setup like it is
- tests,spread.yaml: introduce an upgrade test, support/split into
two suites for this
- overlord,overlord/snapstate: ensure we keep snap type in snapstate
of each snap
- many: rework the firstboot support
- integration-tests: fix test failure
- spread: keep core on suite restore
- tests: temporary fix for state reset
- overlord: add infrastructure for simple state format/content
migrations
- interfaces: add seccomp support for hooks.
- interfaces: allow gvfs shares in home and temporarily allow
socketcall by default (LP: #1592901, LP: #1594675)
- tests, integration-tests: port network-bind interface tests to
spread
- snap,snap/snaptest: use PopulateDir/MakeTestSnapWithFiles directly
and remove MockSnapWithHooks
- interfaces: add mpris interface
- tests: enable `snap run` on i386
- tests, integration-tests: port network interface test to spread
- tests, integration-tests: port interfaces cli to spread
- tests, integration-tests: port leftover install tests to spread
- interfaces: add apparmor support for hooks.
- tests, integration-tests: port log-observe interface tests to
spread
- asserts: improve Decode doc comment about assertion format
- tests: moved snaps to lib
- many: add the camera interface
- many: add optical-drive interface
- interfaces: auto-connect home if running on classic
- spread: bump gccgo test timeout
- interfaces: use security tags to index security snippets.
- daemon, overlord/snapstate, store: send confinement header to the
store for install
- spread: run tests on 16.04 i386 concurrently
- tests,integration-tests: port install error tests to spread
- interfaces: add a serial-port interface
- tests, integration-tests, debian: port sideload install tests to
spread
- interfaces: add new bind security backend and refactor
backendtests
- snap: load and validate implicit hooks.
- tests: add a build/run test for gccgo in spread
- cmd/snap/cmd_login: Adjust message after adding support for wheel
group
- tests, integration-tests: ported install from store tests to
spread
- snap: make `snap change <taskid>` show task progress
- tests, integration-tests: port search tests to spread
- overlord/state,daemon: make abort proceed immediately, fix doc
comment, improve tests
- daemon: extend privileged access to users in "wheel" group
- snap: tweak `snap refresh` and `snap refresh --list` outputTiny
branch that does three things:
- interfaces: refactor auto-connection candidate check
- snap: add support for snap {install,refresh}
--{edge,beta,candidate,stable}
- release: don't force KDE Neon into devmode.
-- Michael Vogt <michael.vogt@ubuntu.com> Wed, 29 Jun 2016 21:02:39 +0200
snapd (2.0.9) xenial; urgency=medium
* New upstream release: LP: #1593201
- snap: add the magic redirect part of `snap run`
- tests, integration-tests: port server related tests to spread
- overlord/snapstate: log restarting in the task
- daemon: test restart wiring, fix setup/teardown
- cmd: don't show the price if a snap has already been purchased
- tests, integration-tests: port listing tests to spread
- integration-tests: do not try to kill ubuntu-clock-app.clock (no
longer a process)
- several: tie up overlord's restart handler into daemon; adjust
snap to cope
- tests, integration-tests: port abort tests to spread
- integration-tests: fix flaky TestRemoveBusyRetries
- testutils: refactor/mock exec
- snap,cmd: add hook support to snap run.
- overlord/snapstate: remove Download from backend
- store: use a custom logging transport
- overlord/hookstate: implement basic HookManager.
- spread: move the suite restore to restore-each
- asserts: turn model os into model core field, making it also more
like the kernel and gadget fields
- asserts: / is not allowed in primary key headers, follow the store
in this
- release: enable full confinement on Elementary 0.4
- integration-tests: fix another i386 autopkgtest failure.
- cmd/snap: create SNAP_USER_DATA and common dirs in `snap run`
- many: have the installation of the core snap request a restart (on
classic)
- asserts: allow to load also account assertions into the trusted
set
- many: install snaps in devmode on distributions without complete
apparmor and seccomp support
- spread: run on travis
- snapenv: do not hardcode amd64 in tests
- spread: initial harness and first test
- interfaces: miscelleneous policy updates for chromium, x86,
opengl, etc
- integration-tests: remove daemon to use the log-observe interface
- client: remove client.Revision and import snap.Revision instead
- integration-tests: wait for network-bind service in try test
- many: move over from snappy to snapstate/backend SetupSnap and
related code
- integration-tests: add interfaces cli tests
- snapenv: cleanup snapenv.{Basic,User}
- cmd/snap: also print slots that connect to the wanted snap (LP:
#1590704)
- asserts: error style, use "cannot" instead of "failed to"
following the main decided style
- integration-tests: wait until the network-bind service is up
before testing
- many: add new `snap run` command
- snappy: unexport snappy.Install and snappy.Overlord.{Un,}Install
- many: add some shared testing helpers to snap/snaptest and to
boot/boottest
- rest-api: support to send apps per snap (LP: #1564076)
-- Michael Vogt <michael.vogt@ubuntu.com> Thu, 16 Jun 2016 13:56:12 +0200
snapd (2.0.8.1) UNRELEASED; urgency=medium
* New upstream release
- Cherry pick four commits that show snaps as installed in devmode on
distributions without full confinement dependencies available:
25634d3364a46b5e9147e4466932c59b1b572d35
53f2e8d5f1b2d7ce13f5b50be4c09fa1de8cf1e0
38771f4cc324ad9dd4aa48b03108d13a2c361aad
c46e069351c61e45c338c98ab12689a319790bd5
-- Zygmunt Krynicki <zygmunt.krynicki@canonical.com> Tue, 14 Jun 2016 15:55:30 +0200
snapd (2.0.8) xenial; urgency=medium
* New upstream release: LP: #1589534
- debian: make `snap refresh` times more random (LP: #1537793)
- cmd: ExecInCoreSnap looks in "core" snap first, and only in
"ubuntu-core" snap if rev>125.
- cmd/snap: have 'snap list' display helper message on stderr