]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blob - NEWS
Releasing 1.18.0
[sojka/lightdm.git] / NEWS
1 Overview of changes in lightdm 1.18.0
2
3     * Small documentation fixes
4
5 Overview of changes in lightdm 1.17.6
6
7     * Don't write $DISPLAY into tty line in utmp/btmp.
8
9 Overview of changes in lightdm 1.17.5
10
11     * Set XDG_RUNTIME_DIR for ConsoleKit sessions. This is a recent change in
12       ConsoleKit2.
13
14 Overview of changes in lightdm 1.17.4
15
16     * Add support for g_autoptr and liblightdm-gobject
17     * Fix dm-tool add-local-seat not working because LightDM is trying to
18       connect with TCP/IP
19
20 Overview of changes in lightdm 1.17.3
21
22     * Don't enable the hardware cursor in Unity System Compositor anymore.
23       Unity 8 now correctly provides its own cursor and other shells should too
24
25 Overview of changes in lightdm 1.17.2
26
27     * Handle XDMCP Request packet with no addresses.
28     * Don't start LightDM if the XDMCP server is configured with a key that
29       doesn't exist.
30     * Add IP addresses to XDMCP log messages.
31     * Refactor XDMCP error handling.
32     * Add more XDMCP tests.
33
34 Overview of changes in lightdm 1.17.1
35
36     * Add a backup-logs option that can be used to disable existing logging
37       files having a .old suffix added to them.
38     * Add LC_PAPER, LC_NAME, LC_ADDRESS, LC_TELEPHONE, LC_MEASUREMENT and
39       LC_IDENTIFICATION variables to the list of inherited locale variables.
40     * Implement XDMCP ForwardQuery.
41     * Fix small memory leak in XDMCP logging code.
42
43 Overview of changes in lightdm 1.17.0
44
45     * Disable log backups - this interferes with logrotate.
46     * Support using libaudit to generate audit events.
47     * Handle trailing whitespace on boolean values in configuration.
48     * Update example configuration to more correctly match allowed options.
49     * Fix unnecessary X server from being launched when locking seats.
50     * Check the version of the X server we are running so we correctly pass
51       -listen tcp when required.
52     * Allow reading /proc/<PID>/net/dev from within a guest session.
53     * Allow guest sessions to write in /{,var/}run/screen folder.
54     * Update guest-session AppArmor profile to be suitable for openSUSE.
55     * Fix apparmor profiles for running Chromium in guest sessions.
56     * Fix configure failing without Vala installed.
57
58 Overview of changes in lightdm 1.16.0
59
60     * Update default configuration better explaining the seat configuration name
61       matching and dropping references to the obsolete [SeatDefaults] section    
62
63 Overview of changes in lightdm 1.15.3
64
65     * Drop Xorg option -sharevts. It's no longer required for non-seat0 X
66       servers since xorg-server release 1.16.
67
68 Overview of changes in lightdm 1.15.2
69
70     * Support Wayland sessions.
71     * Implement autologin-session option.    
72     * Generate Vala bindings from GIR instead of manually writing them. This
73       fixes some small bugs in both the Vala and GIR bindings.
74     * Don't remove autotools generated files in distclean. 
75
76 Overview of changes in lightdm 1.15.1
77
78     * Fix default X server command set to XMir in 1.15.0.
79     * Internally merge the [SeatDefaults] and [Seat:*] sections together. The
80       previous method meant configuration snippets using a mix of old and new
81       naming would not correctly override eachother.
82     * Use IP address of XDMCP requests to contact X server if available.
83     * Add an option for XDMCP and VNC servers to only listen on one address.
84     * Fix configuration file warnings so they go to the log, not stderr.
85     * Warn if deprecated options logind-load-seats or xdg-seat are in
86       configuration.
87     * Improve IP addresses in XDMCP log messages.
88     * Fix typo in dm-tool man page.
89
90 Overview of changes in lightdm 1.15.0
91
92     * Deprecate [SeatDefaults] in favour of [Seat:*]
93     * Use new Xmir binary when running X under Unity System Compositor
94
95 Overview of changes in lightdm 1.14.0
96
97     * Initialize file descriptor handles so we don't attempt to close stdin by
98       accident.
99     * Fix small errors detected by scan-build (clang).
100
101 Overview of changes in lightdm 1.13.2
102
103     * Fix pipe file descriptor leak for each greeter session.
104     * Support active session changing via logind.
105     * Don't allow liblightdm-gobject to be disabled. It is required for
106       liblightdm-qt and the tests so it's not worth supporting builds without
107       it.
108     * Add bash autocompletion support
109
110 Overview of changes in lightdm 1.13.1
111
112     * Don't attempt generate D-Bus seat/session removal signals on shutdown.
113     * Add missing method QLightDM::Greeter::cancelAutologin
114
115 Overview of changes in lightdm 1.13.0
116
117     * Fix crash when having configuration keys defined in multiple places
118     * Fix pipe file descriptor leak for each session login / authentication
119     * Use correct syntax for DesktopNames key in session files
120     * Match seat configuration with globbing
121     * Allow user switching in multi-seat until bug stopping greeter showing on
122       logout is fixed
123     * Disable log message when AccountsService users change
124     * Update AppArmor scripts, requires AppArmor 2.9
125     * Update tests to run better on servers
126
127 Overview of changes in lightdm 1.12.0
128
129     * Fix assumption that the display server is X when running scripts.
130     * Don't access .dmrc files until information from these files is required.
131
132 Overview of changes in lightdm 1.11.9
133
134     * Don't check the logind CanGraphical seat property unless
135       login-check-graphical option is set to true. There are too many cases of
136       drivers that don't set the appropriate flags for this feature to work.
137     * Make socket writing code used between greeter and daemon more robust to
138       errors.
139     * Fix small memory leaks.
140     * Improve logging messages.
141     * Test improvements.
142
143 Overview of changes in lightdm 1.11.8
144
145     * Rework logind code that gets session ID. The previous method was racy
146       and a change in lightdm 1.11.7 led to a lockup when this race occurred.
147     * Handle CanGraphical property on logind seats
148
149 Overview of changes in lightdm 1.11.7
150
151     * Use logind to provide the list of seats to use. Deprecate the old method
152       of manually defining seats.
153     * Add --show-config option that shows combined configuration.
154     * Drop the surfaceflinger seat type. This was a temporary solution while
155       Ubuntu Phone was migrating to Mir.
156
157 Overview of changes in lightdm 1.11.6
158
159     * Add a seat option 'allow-user-switching' that can disable all user
160       switching for that seat
161     * Add a new session type 'mir-container' that allows the session to run
162       inside a custom system compositor
163     * Only seat0 takes VT from Plymouth
164     * Removed unused GAsyncResultIface.is_tagged as this attribute was not
165       available in earlier versions of Glib I/O.
166     * Abort autogen if yelp-tools not installed
167     * Return correct errors for D-Bus calls
168
169 Overview of changes in lightdm 1.11.5
170
171     * Make PAM services configurable
172
173 Overview of changes in lightdm 1.11.4
174
175     * Do timed autologin each time you are returned to the greeter
176     * Fix tests failing with Qt 5.3 due to it checking getuid/geteuid which we are faking
177     * dm-tool: Warn if trying to switch to user without username
178
179 Overview of changes in lightdm 1.11.3
180
181     * Fix Mir sessions broken with unity-system-compositor 0.3.
182     * Add back Vala bindings for LightDM.Greeter.connect_sync - just mark as
183       deprecated.
184     * Put unity-system-compositor's mir_socket under /run rather than /tmp.
185     * Fix building with clang (3.5) and -Werror.
186     * Correct section name in default users.conf file.
187
188 Overview of changes in lightdm 1.11.2
189
190     * Add liblightdm method to get user UID
191     * DBus-activate logind
192     * Check for libgcrypt at configure time
193
194 Overview of changes in lightdm 1.11.1
195
196     * Allow greeters to remain runing to reduce startup time when switching to a
197       greeter
198     * Add asynchronous methods to liblightdm
199
200 Overview of changes in lightdm 1.11.0
201
202     * When switching to an existing session refresh PAM credentials and end
203       session cleanly so no resources leak.
204     * Support new standard DesktopNames field in session files
205     * Set XDG_SESSION_TYPE and XDG_SESSION_DESKTOP as used by systemd
206     * Emit DBus PropertiesChanged when Sessions/Seats properties change. Also
207       add SessionAdded/SessionRemoved signals to Seat interface
208
209 Overview of changes in lightdm 1.10.0
210
211     * Fix return value for Vala bindings to Greeter.start_session_sync
212     * Fix logging when failing to find session
213
214 Overview of changes in lightdm 1.9.15
215
216     * Update the lightdm AppArmor abstraction to allow the guest session to
217       start when AppArmor is mediating signals and ptrace and fix a minor, but
218       noisy, denial when applications attempt to read /proc/<PID>/stat.
219
220 Overview of changes in lightdm 1.9.14
221
222     * Pass --enable-hardware-greeter to unity-system-compositor for Mir sessions
223       on xlocal seats
224
225 Overview of changes in lightdm 1.9.13
226
227     * Handle not getting an X connection when attempting to get X layouts.
228     * Read config data from both XDG_DATA_DIRS and XDG_CONFIG_DIRS.
229
230 Overview of changes in lightdm 1.9.12
231
232     * Ensure X authority is written before X server is started
233     * Activate after unlocking a logind session
234
235 Overview of changes in lightdm 1.9.11
236
237     * Don't use g_hash_table_get_keys_as_array, it's a glib 2.40 feature
238
239 Overview of changes in lightdm 1.9.10
240
241     * Honour session type requested by greeter for guest sessions
242     * Log to wtmp and btmp.
243     * Implement guest-session config option
244
245 Overview of changes in lightdm 1.9.9
246
247     * Handle signals being received in child processes instead of treating them
248       like they are received in the daemon.
249     * Set utmp ut_line to the display name (i.e. :0) to match what other
250       programs expect (e.g. 'w').
251     * Fix lightdm_greeter_ensure_shared_data_dir_sync returning the wrong value.
252     * Fix shared data tests so you can run test suite without root again.
253     * Be extra careful not to call any non thread safe function after a fork.
254     * Fix some small memory leaks detected by valgrind.
255     * Fix process shutdown code to stop generating confusing warnings
256     * Fix more double removal of source IDs.
257     * Test improvements.
258
259 Overview of changes in lightdm 1.9.8
260
261     * Add support for shared user data directories between the greeter and user sessions.
262     * Refactor LightDMUser and User classes to use the same code internally.
263
264 Overview of changes in lightdm 1.9.7
265
266     * Correctly invoke PAM to change authentication token.
267     * Make xdg-seat a core property of a seat and always pass it to X servers.
268     * Qt bindings: properly hand over prompt and message type.
269     * Add warning flags where they are missing and fix the resulting warnings.
270
271 Overview of changes in lightdm 1.9.6
272
273     * Support Mir sessions in xlocal seats by starting a unity system compositor
274       for each session.
275     * Add --screen and --fullscreen options to "dm-tool add-nested-seat"
276     * Don't try to compile liblightdm-qt if liblightdm-gobject will not be
277       compiled.
278     * Stop greeters warning if sessions directories not present or lightdm.conf
279       doesn't exist - this is valid.
280     * Fix log name for Mir display servers
281     * Fix double removal of source IDs
282
283 Overview of changes in lightdm 1.9.5
284
285     * In the unity seat, if we don't have proper VT support, fake VT 0 instead
286       of a real VT number. This matches what logind expects.
287
288 Overview of changes in lightdm 1.9.4
289
290     * Fix issue where VTs are double used when switching sessions.
291     * Remove lightdm-set-defaults and gdmflexiserver.
292     * Add new ability to specify a list of seat types to try, rather than just
293       one.
294     * Allow Mir sessions in the surfaceflinger seat.
295     * Rename the guest session wrapper to have a simpler name.
296     * Make sure sessions are associated with the display server before starting
297       them.
298     * Add a dm-tool man page.
299
300 Overview of changes in lightdm 1.9.3
301
302     * Don't pass system user accounts from AccountsService to greeters.
303     * Fix crash if switching to greeter and it isn't installed.
304
305 Overview of changes in lightdm 1.9.2
306
307     * Implement missing guest-wrapper functionality and enable it for Ubuntu.
308     * Update AppArmor scripts to work in Ubuntu 13.10.
309
310 Overview of changes in lightdm 1.9.1
311
312     * Correctly set $XDG_SESSION_CLASS for greeters. This was regressed in 1.7.5
313       for ConsoleKit and was never passed to logind. logind/ConsoleKit treat
314       greeter sessions without this set as user sessions. This causes greeters
315       to show the lightdm user able to be logged in with.
316     * Set $USER when running the session-setup-script. This is a regression from
317       1.7.5.
318     * Fix notification of sessions being logged out. This is a regression from
319       1.7.5 and caused greeters to show sessions logged in after they had been
320       logged out.
321     * Refactor liblightdm user scanning to be simpler and more reliable. This
322       fixes bugs where some properties wouldn't be updated when they changed in
323       accounts service.
324     * Add support for a "display-stopped-script" field in lightdm.conf. The
325       "display-stopped-script" field allows us to run a script right after
326       stopping the display server.
327     * Allow dm-tool to run outside of a session if it doesn't need to be.
328     * Set $MIR_SERVER_NAME to assign a name to launched sessions. Also use a
329       "greeter-" prefix for greeter sessions for the benefit of
330       unity-system-compositor.
331
332 Overview of changes in lightdm 1.9.0
333
334     * Fix crash when starting with existing X servers. This was introduced in
335       rev 1651 (lightdm 1.7.0).
336     * Fix crash where Process objects are accessed after unref
337
338 Overview of changes in lightdm 1.8.0
339
340     * Add regression test for corrupt X authority files.
341
342 Overview of changes in lightdm 1.7.18
343
344     * Set session environment variables for guest sessions (1.7 regression).
345     * Don't fail writing X authority if reading it had an error.
346     * Update environment variables that we pass to Mir.
347
348 Overview of changes in lightdm 1.7.17
349
350     * surfaceflinger: Set XDG_VTNR=0 if VTs are not available
351     * Allow compiling of liblightdm-qt without liblightdm-gobject
352     * Add missing documentation for xremote seat options.
353
354 Overview of changes in lightdm 1.7.16
355
356     * Fix ConsoleKit support broken in 1.7.5
357     * Fix --test-mode
358     * Add support for running Surfaceflinger sessions
359
360 Overview of changes in lightdm 1.7.15
361
362     * Set XDG_VTNR=1 as a fallback if using SeatUnity without a functioning
363       compositor or working VT switching, so that logind will recognize the VT
364       as active.
365
366 Overview of changes in lightdm 1.7.14
367
368     * Correctly set permissions on Xauthority file.
369
370 Overview of changes in lightdm 1.7.13
371
372     * Correctly set $XDG_CURRENT_DESKTOP for non-autologin sessions
373     * Fix overallocation of array for strings from greeter.
374     * Fix truncation writing card32 in XDMCP server.
375
376 Overview of changes in lightdm 1.7.12
377
378     * Add xdg-seat config setting
379     * Notify Unity System Compositor of the session being authenticated
380
381 Overview of changes in lightdm 1.7.11
382
383     * Fix crash when greeter quits due to read watch not being removed
384     * Correctly setup Unity System Compositor environment
385     * Improve log messages
386
387 Overview of changes in lightdm 1.7.10
388
389     * Fix session locking broken in 1.7.5
390     * Load lightdm.conf after lightdm.conf.d/*.conf
391     * Also support loading config from /usr/share
392     * When switching sessions show a greeter if authentication required
393     * Set $XDG_CURRENT_DESKTOP if specified in the xsession file
394     * Change logging prefixes to make it easier to troubleshoot multiseat setups
395     * Bring Ubuntu packaging in-tree
396
397 Overview of changes in lightdm 1.7.9
398
399     * Correctly set XDG_VTNR for unity sessions that are not autologin.
400
401 Overview of changes in lightdm 1.7.8
402
403     * Add support for Mir sessions and greeters.
404     * Set XDG_VTNR for unity sessions.
405     * Fix desktop-session-start upstart signal not being emitted since 1.7.5.
406     * Fix greeter log broken in 1.7.5.
407
408 Overview of changes in lightdm 1.7.7
409
410     * Fix uninitialized pointer introduced in 1.7.3
411     * Enable compile warnings and fix code generating warnings
412
413 Overview of changes in lightdm 1.7.6
414
415     * Restore greeter hints that were regressed in 1.7.5.
416     * Don't run greeters through session wrapper - regression in 1.7.5
417
418 Overview of changes in lightdm 1.7.5
419
420     * Quit Plymouth correctly when using the unity seat type
421     * Release the VT when the system compositor fails to start
422     * Load sessions and greeters from /usr/share/lightdm/sessions and
423       /usr/share/lightdm/greeters. The existing directories are checked
424       if the sessions are not in these directories.
425     * Refactor the Display class so that it merges with the Seat class
426     * Support running the greeter and session in different display servers
427       instead of re-using the same one during a login.
428     * Add more regression tests
429     * Documentation fixes
430
431 Overview of changes in lightdm 1.7.4
432
433     * Set XDG_SEAT and XDG_VTNR environment variables.
434     * Add initial support for Unity (i.e. Mir based) seats.
435     * Add a greeter wrapper option.
436
437 Overview of changes in lightdm 1.7.3
438
439     * Load configuration from /etc/lightdm/lightdm.conf.d.
440     * Fix compile warnings
441     * Fix tests not running from install directory inside checkout.
442
443 Overview of changes in lightdm 1.7.2
444
445     * Fix incorrectly distributed guest-session apparmor data
446
447 Overview of changes in lightdm 1.7.1
448
449     * Fix .pc file for liblightdm-qt5-3
450     * Add a new option "autologin-in-background" which lets an autologin happen
451       in a second display while still showing the greeter.
452     * Stop if fail to create default seat
453     * Add option to set seat type in lightdm-set-defaults
454     * Stop using g_file_set_contents - it can leave intermediate files around
455     * Make tests work without installing them
456     * Fix distcheck
457
458 Overview of changes in lightdm 1.7.0
459
460     * Use logind instead of ConsoleKit if it is available
461     * Use Q_SLOTS and Q_SIGNALS instead of slots and signals.
462     * Ignore stale X server locks
463     * Pass through system locale or set locale from AccountsService/.dmrc
464     * Fix bug where seat failure before D-Bus acquired would not stop daemon
465
466 Overview of changes in lightdm 1.6.0
467
468     * Allow VNC command to be specified in lightdm.conf
469     * Register enums with QObject meta type system.
470
471 Overview of changes in lightdm 1.5.3
472
473     * Fix build with gobject-introspection 1.35.9
474     * Fix authentication cancel regression caused in 1.5.2
475
476 Overview of changes in lightdm 1.5.2
477
478     * Fix stale X server being left behind when using LockSession D-Bus API
479     * Adjust AppArmor profile to also work with logind
480     * Don't use GIO to access X authority files - it uses GVFS which is
481       unnecessary overhead/complexity
482     * Handle over/underflows when reading from greeter
483     * Improve warning message when XDMCP packet has length mismatch
484     * Only report test command line if it fails
485     * Add more regression tests
486
487 Overview of changes in lightdm 1.5.1
488
489     * QLightDM: Add Qt5 version of the library: liblightdm-qt5-2
490     * QLightDM: Add some missing role names in UsersModel
491     * QLightDM: Add a backgroundPath role to UsersModel
492     * QLightDM: Fix potential crash in QLightDM::UsersModel closedown.
493     * Improve guest session apparmor
494     * Run each test in its own /tmp dir so they can't interfere with eachother
495     * Fix script hooks no longer working with latest glib
496     * Fix display clean up code
497
498 Overview of changes in lightdm 1.5.0
499
500     * Add man page for lightdm-set-defaults
501     * Use xzip for distribution, don't distribute old metadata
502     * Correctly check if display is active when session quits
503     * Relicense liblightdm to LGPL-2/LGPL-3 so GPL-2 code can link against it
504     * Selectively lock memory rather than calling mlockall for main daemon
505
506 Overview of changes in lightdm 1.4.1
507
508     * Fix autologin PAM configuration
509
510 Overview of changes in lightdm 1.4.0
511
512     * Correctly implement and test autologin timeouts
513     * Add greeter-show-remote-login hint
514     * Correctly annotate enums in vapi file
515     * QLightDM: Add default constructor to Qt power interface
516     * QLightDM: Expose image path in UserModel
517     * QLightDM: Add parameter to session model to show either local or remote
518       sessions
519     * Fix race conditions in tests
520
521 Overview of changes in lightdm 1.3.3
522
523     * Add a new remote session type. These sessions create a temporary local
524       account and authenticate against a remote server. The session is an
525       application that accesses that remote session (e.g. VNC, RDP etc)
526     * Support multiple simultaneous PAM prompts
527     * Set utmp ut_host field to the X display address
528     * Correctly reap unused authentication sessions
529
530 Overview of changes in lightdm 1.3.2
531
532     * Handle clearenv() not being defined
533     * Fix compilation with GCC 4.7
534     * Expose remaining properties in QLightDM::Greeter
535     * Fix utmp records being written before child process created
536
537 Overview of changes in lightdm 1.3.1
538
539     * Fix wrapper path in AppArmor profile (broken since 1.1.1)
540     * Add show-manual-login and allow-guest options to lightdm-set-defaults
541     * Don't set PAM_XDISPLAY or PAM_XAUTHDATA if not supported
542     * Add lock-memory option, enabled by default, to prevent paging memory
543       to disk.
544     * Write utmp records for sessions
545     * Install PAM configuration
546     * Run greeters inside the "lightdm-greeter" PAM service
547     * Handle setresgid and setresuid not being available
548     * Use xsession directory from lightdm.conf in liblightdm
549
550 Overview of changes in lightdm 1.2.0
551
552     * Backup .xsession-errors on login
553     * Handle failures in pam_setcred
554     * Open log files in append mode
555     * Add extra checks in liblightdm so that it doesn't send invalid messages
556       to the daemon
557     * Fix gdmflexiserver not being added to the path (broken since 1.1.4)
558     * Fix PAM conversations after authentication from locking up sessions
559     * Fix PAM informational messages locking up autologin
560     * Change XDMCP manage timeout from 10ms to 126s (maximum specified in the
561       XDMCP specification)
562
563 Overview of changes in lightdm 1.1.9
564
565     * Add --show-users/--hide-users to lightdm-set-defaults
566     * Call initgroups before pam_setcred - this allows pam_setcred to change
567       group membership correctly
568
569 Overview of changes in lightdm 1.1.8
570
571     * Handle PAM interactions that have more than one message in one callback
572
573 Overview of changes in lightdm 1.1.7
574
575     * Add a seat option greeter-allow-guest which controls if the greeter should
576       provide an option to access the guest account.
577     * Add a seat option greeter-show-manual-login which hints to a greeter if it
578       should show a manual username entry if a user list is already present.
579
580 Overview of changes in lightdm 1.1.6
581
582     * Fix session wrapper working the same as it did in 1.1.3
583
584 Overview of changes in lightdm 1.1.5
585
586     * Stop file descriptors leaking into the session processes
587
588 Overview of changes in lightdm 1.1.4
589
590     * Change session directory once user permissions are set so it works
591       on NFS filesystems that don't allow root to access files.
592     * Restructure session code so the PAM authentication is run in its
593       own process.
594     * Set PAM_XDISPLAY and PAM_XAUTHDATA pam items
595     * Don't send session stdout to .xsession-errors
596     * Fix Qt bindings crash when removing a user
597
598 Overview of changes in lightdm 1.1.3
599
600     * Actually return the system default keyboard layout, not just 'us'
601     * Add keyboard layout variants to list of keyboard layouts
602     * Check accountsservice as well as .dmrc for users' layouts
603     * Add lightdm_user_get_layouts() to query the configured list of layouts
604       on a per-user basis
605     * Add Lock D-Bus method that locks the seat and provides a hint to the
606       greeter to be in lock mode.
607     * Automatically lock sessions when switching away from them
608     * Add a has-messages property to liblightdm
609     * Add regression tests for PAM modules changing usernames
610     * Don't use g_key_file_unref, it requires glib 2.32
611
612 Overview of changes in lightdm 1.1.2
613
614     * Add regression tests for getting the user language and layout
615     * Stop accidentally distributing libsystem
616     * Fix introspection bindings not containing any methods
617     * lightdm-set-defaults can now set the autologin user
618     * Add Python greeter regression tests (representative of all introspection
619       based greeters)
620     * Wait for the VT to become active when switching to avoid a suspected
621       race condition somewhere between LightDM, X, ConsoleKit and the kernel.
622     * Stop lightdm_greeter_start_session_sync() blocking on success.
623
624 Overview of changes in lightdm 1.1.1
625
626     * Add a --disable-tests option
627     * Add note to AUTHORS file where to find author list
628     * Update build system to find moc/uic
629     * Fix non-distributed tests/src/lightdm-session
630     * Fix X sessions with arguments in Exec not working
631     * Use previous session for automatic login or if greeter does not request
632       one.
633     * Set default resolution of VNC to 1024x768, add settings for width, height,
634       depth into lightdm.conf.
635     * AppArmor profile: Fix broken gnome-keyring and dbus/gwibber, and quiesce
636       annoying kernel audit messages for privileges that we definitively do not
637       want to grant.
638     * Set LOGNAME environment variable
639     * Don't set USERNAME environment variable - this is not specified in POSIX,
640       please report if this causes any major problems.
641     * Drop privileges when reading ~/.dmrc
642     * Move the GTK+ and Qt greeters into their own projects
643     * Fix crash when quitting with newer GLib
644     * Fix crash calling lightdm_get_layout
645     * Support for reading users' backgrounds from Accounts Service
646     * Fix --debug working with new glib
647     * Support PAM requesting a change of password
648     * Update build system to work with automake 1.11.2
649     * Run tests inside their own system D-Bus, simulating ConsoleKit and
650       AccountsService
651     * Add regression test for users that have their home directory created after
652       authentication.
653     * Move lightdm-guest-session from libexec to pkglibexec directory
654
655 Overview of changes in lightdm 1.1.0
656
657     * Remove GetSeatForCookie and GetSessionForCookie D-Bus methods
658     * Switching to a user without a password bypasses the greeter
659     * Use LD_PRELOAD to intercept system calls for testing
660     * Removed the --passwd-file option as not required for testing anymore
661     * Rename test-xserver to X and remove --xserver-command option
662     * Make a test session wrapper and remove --session-wrapper option
663     * Remove unused --user-session, --greeter-session, --minimum-vt,
664       --minimum-display-number options
665     * Use 'default' as the default greeter (make a symlink)
666     * GTK greeter now initializes i18n
667     * GTK greeter now remembers last user
668     * Start authentication for automtically selected user in GTK greeter
669     * Don't resize GTK greeter on each click
670     * Start authentication when scrolling through GTK greeter entries
671     * Link liblightdm-qt against QtGui
672     * Fix liblightdm-qt crashing when face images are installed
673     * Set correct permissions on session log files
674     * Introduce a lightdm-guest-session-wrapper session command which MAC
675       systems like AppArmor and SELinux can use for attaching a restrictive
676       policy to guest sessions.
677     * Provide an AppArmor profile for guest session lockdown.
678     * Fix daemon from blocking if Accounts Service does not exist
679     * Fix greeter log file not being written
680     * Don't set LANG environment variable if using Accounts Service.
681     * Fix gdmflexiserver not working due to it not being in PATH
682     * Don't authenticate the greeter user
683     * Allow greeters to be disabled in configure flags
684     * Fix over allocation of read buffer in greeter protocol
685     * Make sure objects are cleaned up on exit
686     * Fix minor memory leaks
687     * Fix reference counting issue in ConsoleKit code
688     * Fix --enable-gtk-greeter=yes not working
689
690 Overview of changes in lightdm 1.0.0
691
692     * Explicitly grab keyboard focus in GTK greeter
693     * Fix removed power and a11y menu items in GTK greeter
694     * Put system binary directory into path when running in test mode
695     * Call pam_getenvlist after pam_setcred
696
697 Overview of changes in lightdm 0.9.8
698
699     * GetSeatForCookie and GetSessionForCookie are now deprecated.  They
700       remain for now but use the XDG_SEAT_PATH and XDG_SESSION_PATH
701       environment variables instead.
702     * Change log filenames to be unique across different display types.
703     * Fix up script hooks, add regression tests for them
704     * Complete removal of X code from the core of LightDM, so it can better
705       support various display types
706     * Add ability to set the language of a user from the greeter
707     * Set LANG variable based on the user language
708     * Add language selector into GTK greeter (disabled by default)
709     * Allow TCP/IP connections if xserver-allow-tcp is true
710     * Allow lightdm --version to be run as non-root
711     * Automatically respond to PAM messages without prompts
712     * Create 'AddLocalXSeat' D-Bus method, and require root to use 'AddSeat'
713     * Fix multi-seat configuration picking the same display number
714     * Use correct D-Bus and power interface in liblightdm-qt
715     * Run pam_setcred inside the session process so pam_group works
716     * Make sure one session is always selected in the GTK greeter
717
718 Overview of changes in lightdm 0.9.7
719
720     * Set PAM_TTY to the display name, not the tty device
721
722 Overview of changes in lightdm 0.9.6
723
724     * Only unlock displays if switched to from greeter
725     * Make log file not system readable
726     * Write ~/.Xauthority inside the session process so it cannot be hijacked
727     * Set PAM_TTY and PAM_XDISPLAY when opening PAM session
728     * Add VNC server support
729     * Do not write ~/.dmrc and ~/.Xauthority as root. [CVE-2011-3349]
730
731 Overview of changes in lightdm 0.9.5
732
733     * Use accounts service in the daemon if it is available
734     * Correctly load seat type in multi seat configuration
735     * Add display-setup, session-setup and session-cleanup scripting hooks
736     * Fix cancel button in GTK greeter
737     * Fix line through GTK greeter menu items
738     * Exit daemon if a seat fails which has exit-on-failure set to true
739     * Add HasGuestAccount property to seat D-Bus interface
740     * Fix XDMCP authorization
741     * Update man file
742
743 Overview of changes in lightdm 0.9.4
744
745     * lightdm-set-defaults enables tweaking the default session and chosen
746       greeter for lightdm. This is useful for derivatives waiting to not ship
747       the whole configuration file of lightdm
748     * Fix crash in GTK+ greeter when a user is added
749     * Move xsessions-directory and xgreeters-directory from [SeatDefaults] to
750       [LightDM].  This is a configuration break, but making it on the assumption
751       that these settings are not likely to have been overridden.
752     * Fix fallback from org.freedesktop.Accounts to passwd format
753     * Fix duplicate user entries being shown when using passwd file
754     * Add AddSeat D-Bus method for adding dynamic seats
755     * Added a dm-tool program that allows user switching and adding seats
756     * Allow remote X servers, e.g. launched using dm-tool add-nested-seat
757     * Fix bug where sessions were started when the greeter quit and the user
758       hadn't been authorized.
759     * Fix bug where sessions used the seat bus name
760     * Don't allow autologin-username to be set to empty
761     * Fix bug where PAM session was not opened before writing to home directory
762     * Fix crash when failing to write X authority
763
764 Overview of changes in lightdm 0.9.3
765
766     * Unlock ConsoleKit sessions when switching to them
767     * Add a gdmflexiserver binary that provides backwards compatibility with
768       existing sessions
769     * Set XDG_SEAT_PATH and XDG_SESSION_PATH environment variables for sessions.
770     * Always set XAUTHORITY environment variable so sudo keeps accessing the
771       correct X authority.
772     * Connect up lightdm_user_get_logged_in in liblightdm-gobject
773     * Ignore sessions that fail TryExec or are hidden
774     * Add missing home_directory User property missing in Vala bindings
775
776 Overview of changes in lightdm 0.9.2
777
778     * Fix annotation and Vala bindings for getting the UserList singleton
779     * Fix GTK+ greeter error label not being shown
780     * Don't set SIGQUIT to ignore in child processes
781     * Reworked the PAM code as ecryptfs users weren't able to log in.  They
782       can now but not sure what changed to fix that!?
783
784 Overview of changes in lightdm 0.9.1
785
786     * Fix up translation build system
787     * Add a --with-greeter-user configure option
788     * Fix greeter-user configuration not being used
789     * Abort greeter if attempted to be run as root and greeter-user set
790     * Fix setting session in GTK+ greeter
791
792 Overview of changes in lightdm 0.9.0
793
794     * Fix invalid XAUTHORITY variable being set for second X server.
795     * Fix bug where switching users created X servers without VTs
796     * Release a VT when the X server on it stops
797     * Greeters are now just standard X sessions that are stored in
798       /usr/share/xgreeters.
799     * Binaries now installed in /usr/sbin
800     * Drop most of the configure options, they aren't necessary
801     * Config changes:
802       - Major reorginisation of configuration to make it easier to configure and
803         understand.  Users should set [SeatDefaults] section with settings for
804         all seats, and can override each setting in a per seat configuration.
805       - Default seats are now specified using a [Seat:<name>] section.  If no seats
806         are specified then one is started.  This can be overridden by setting
807         start-default-seat=false in [LightDM].
808       - Support setting autologin user to guest account
809       - Split the user accounts configuration into /etc/lightdm/users.conf so the
810         main config can be private.
811       - The default user session is now "default".  Distributions should put a
812         symlink to their chosen default or set one in lightdm.conf.
813       - XDMCP keys now stored in keys.conf
814     * liblightdm API changes:
815       - Both libraries are now version 1 and have API and ABI guarantees.
816       - Face images are now local paths not URIs
817       - liblightdm-gobject now uses lightdm_ prefix instead of ldm_
818       - Non-greeter functions are now moved out of the Greeter class
819       - connect_to_server() is now called connect_sync and blocks until
820         completion.
821       - start_session() is now called start_session_sync and blocks until
822         completion. The quit signal is removed, and the greeter should quit if
823         this method returns TRUE.
824       - login() is now called authenticate()
825       - Greeters now have hints instead of configuration (greeters should load their
826         own configuration from /etc/lightdm if they need it).
827       - liblightdm-gobject uses AccountsService if it is available
828       - Added regression tests for liblightdm-qt
829     * D-Bus API changes:
830       - Expose Seats and Sessions on org.freedesktop.DisplayManager
831       - Add a CanSwitch property
832       - Rename ShowGreeter() to SwitchToGreeter()
833     * Greeter changes:
834       - Drop "example" from the name of the GTK+ and Qt greeters and make them
835         official default greeters.
836       - Use GTK3 for GTK+ greeter.
837       - Removed the Vala and Python GTK+ greeters, they weren't being well
838         maintained.
839
840 Overview of changes in lightdm 0.4.4
841
842     * Fix failure to accept XDMCP connections due to invalid assert.
843     * Allow minimum-display-number to be set in lightdm.conf and on the command
844       line.
845     * Session X authority now written to ~/.Xauthority by default.  It can be
846       configured to run from the system location by setting
847       user-authority-in-system-dir=true in lightdm.conf.
848     * When using system authority the authority can be updated by the user.
849     * Written X authority files now checks hostname and display number.
850     * Enironment is no longer passed through to X servers and sessions, this is
851       no longer required now PAM works correctly.
852     * liblightdm API changes:
853       - Drop ldm_greeter_get_is_first() - it was added for testing and doesn't
854         work well.
855     * Fix more errors where authentication messages from previous sessions could
856       be confused with new sessions.
857     * Added XDMCP regression tests.
858
859 Overview of changes in lightdm 0.4.3
860
861     * Don't replace Plymouth if it isn't running on a valid VT
862     * Allow a null username to log in with - the system will prompt for a
863       username.
864     * liblightdm API changes:
865       - Rename ldm_greeter_provide_secret to ldm_greeter_respond - responses
866         may not be secrets.
867       - show-prompt signal now has a PromptType field
868       - show-message signal now has a MessageType field and takes over
869         behaviour of show-error signal
870     * Fix error where an authentication failure from a previous session could
871       be interpreted as a failure in the current session.
872     * Simplify Vala bindings and add missing methods
873
874 Overview of changes in lightdm 0.4.2
875
876     * Fix errors communicating with PAM
877     * Fix interaction with Plytmouth.
878     * Removes the vt option in lightdm.conf, this is no longer required
879       and the active is used for the first display if Plymouth is
880       detected.  A new option minimum-vt is added to select the first
881       VT to be used for other displays.
882     * On login switch to an existing session if already logged in with that
883       username.
884     * Correctly connect up D-Bus interface for user switching
885
886 Overview of changes in lightdm 0.4.1
887
888     * Fix linking issue with -z,defs
889     * Added guest account support
890     * Restart X server if it crashes during a session
891     * Don't set language environment variables, use the daemon values
892       (system default) and leave it to ~/.profile for users to set these
893     * Change greeter library API, starting a session no longer has a language
894       option
895     * Fix greeter crash when user accounts change
896
897 Overview of changes in lightdm 0.4.0
898
899     * Fix crash when child processes quit
900     * Fix crash when catching signals
901     * Fix crash when session quits after X server
902     * Add internal checking for NULL object access
903     * Correctly handle signals from external programs (Thanks to Jason Conti)
904     * liblightdm API changes:
905       - ldm_greeter_start_authentication becomes ldm_greeter_login
906       - The existing ldm_greeter_login is now ldm_greeter_start_session
907         and the username parameter is not required.
908       - Drop ldm_greeter_get_default_layout (X controls the layout)
909     * Configuration changes:
910       - Use /etc/lightdm/lightdm.conf instead of /etc/lightdm.conf
911       - The "displays" item is now called "seats".  LightDM will fallback to
912         "displays" if "seats" is not defined, but this is deprecated and will
913         be removed by version 1.0.
914       - Make X server configuration a separate section and now has new options
915     * Automatic login users now use PAM session lightdm-autologin
916     * Use org.freedesktop.DisplayManager instead of
917       org.lightdm.LightDisplayManager for D-Bus name
918     * Add regression tests
919     * Allow many more options to be set from the command line
920
921 Overview of changes in lightdm 0.3.7
922
923     * Fix autologin broken in 0.3.3
924
925 Overview of changes in lightdm 0.3.6
926
927     * Disable Plymouth when starting
928     * Allow display vt setting to be set to "active" to start on active VT
929     * Fix login in Qt example greeter
930     * Fix typo for High Contrast menu item (GTK example greeter)
931
932 Overview of changes in lightdm 0.3.5
933
934     * Set working directory when logging in
935     * Massive improvements to Qt greeter
936     * Fix XDMCP authentication/authorization errors
937     * Have the daemon open a connection to a local X server
938     * Tidy up some debugging messages
939     
940 Overview of changes in lightdm 0.3.4
941
942     * Updates to liblightdm-qt
943     * Fix --with-cache-dir not working
944     * Set greeterdir in .pc files to point to where greeter engines should be
945       installed
946
947 Overview of changes in lightdm 0.3.3
948
949     * Don't run in test-mode if Xephyr cannot be found
950     * Fix daemon using 100% CPU after greeter quits
951     * Fix crash when users don't have GECOS data
952     * Greeters can now detect user add/remove events
953     * Fix ConsoleKit support broken with switch to GDBus
954     * Correctly clean up X processes on exit
955     * Wait for greeter to quit before running user session (fixes problem with
956       Compiz)
957
958 Overview of changes in lightdm 0.3.2
959
960     * Distribute GTK greeter .ui file
961
962 Overview of changes in lightdm 0.3.1
963
964     * Add greeter login_with_defaults method
965     * Add example to the name of all the greeters
966     * Set the configuration for the default display to use VT 7
967     * Fix the vt setting for displays, it was incorrectly named tty
968     * Fix crash when load-users is false in UserManager
969     * Fix up name of .vapi file so it can be used directly from valac
970     * Tidy up Qt library and greeter
971     * Move menubar in greeters to top of screen
972     * Fix console kit get_can_*() methods
973     * Use GtkBuilder for example GTK greeter
974
975 Overview of changes in lightdm 0.3.0
976
977     * Correctly pass environment variables through to the session
978     * Allow starting virtual terminal to be configured
979     * Replace D-Bus greeter communication with a private pipe
980     * Use GDBus instead of dbus-glib
981     * Use the engine process name instead of a hardcoded value in theme files
982     * Rename ldm_greeter_connect to ldm_greeter_connect_to_server so it doesn't
983       clash with GObject method name
984     * Rename ldm-gtk-greeter to lightdm-gtk-greeter
985     * Rename gnome theme to example-gtk-gnome
986     * Add more annotations to liblightdm-gobject
987     * Add an example PyGObject, Vala and QT greeter
988     * Generate metadata for QT libraries
989     * Move Webkit greeter into separate module
990
991 Overview of changes in lightdm 0.2.3
992
993     * Set correct linking library names in pkg-config files
994     * Handle session executables that take arguments
995
996 Overview of changes in lightdm 0.2.2
997
998     * Make default themedir work when --prefix is not passed to configure
999     * Look for face images in ~/.face and ~/.face.icon
1000     * Put .vapi file in unversioned vala directory
1001     * Fix compiling without QT
1002     * Choose the VT to open the display on
1003     * Set correct group memberships for sessions (Yves-Alexis Perez)
1004     * Set permissions on xauthority file so it can only be read by the owning
1005       user (Yves-Alexis Perez)
1006     * Set correct permissions on ~/.dmrc (Yves-Alexis Perez)
1007     * Add --enable-liblightdm-gobject, --enable-liblightdm-qt configure option
1008     * Set environment variables from PAM (Yves-Alexis Perez)
1009
1010 Overview of changes in lightdm 0.2.1
1011
1012     * Use "lightdm" as default PAM service and make it configurable
1013     * Rename libldmgreeter to libldmgreeter-gobject
1014     * Add libldmgreeter-qt (David Edmundson)
1015     * Fix gobject-introspection build
1016     * Renamed libldmgreeter to liblightdm
1017     * Install a .vapi file
1018
1019 Overview of changes in lightdm 0.2.0
1020
1021     * Make default user configuration per-display
1022     * Only automatically login the first time
1023     * Fix WebKit theme loading and automatic login
1024     * Do cross fade for sessions that support it
1025       (set X-LightDM-Supports-Transitions=true in their xsession file)
1026     * Load user settings from ~/.dmrc
1027     * Add configuration for default language/layout
1028     * Change language/layout/session when user selected in GTK+ greeter
1029     * Set default keyboard layout on first login
1030     * Don't run all sessions throught /etc/X11/XSession - make the session
1031       wrapper optional and configurable.
1032     * Make pkgconfig file require libxklavier
1033     * Only compile greeters if have dependencies
1034     * Include ck-connector code to reduce library dependencies
1035     * Add introspection.m4 to the source tree
1036     * Support using no greeter user in lightdm.conf
1037     * Flush writes to main log file
1038     * Allow non-privilidged user to write greeter log file in /var
1039     * Fix bugs stopping running greeter as priviledged user (i.e. root)
1040     * Don't default to running greeters with the GDM user - it may not exist!
1041
1042 Overview of changes in lightdm 0.1.2
1043
1044     * Write PID file
1045     * Make user switcher API work
1046     * Add a AddDisplay D-Bus method to start new displays
1047     * Feed signals to GLib main loop via a pipe
1048     * Add an upstart script
1049     * Make theme files more similar to existing themes
1050     * Change dbus namespace from org.freedesktop.LightDisplayManager to
1051       org.lightdm.LightDisplayManager
1052     * Write debug log to /var/log/lightdm/lightdm.log instead of stdout.  Use
1053       --debug for the previous behaviour
1054     * Add exec_prefix into libldmgreeter.pc
1055     * Change versioned include and pkgconfig files from 1 to 0
1056     * Add themedir variable into pkgconfig file
1057     * Connect language list in GTK greeter to login language
1058
1059 Overview of changes in lightdm 0.1.1
1060
1061     * Change licence of libldmgreeter from GPL to LGPL
1062     * Write X server and session output to log files
1063     * Set PATH, DESKTOP_SESSION, GDMSESSION and USERNAME environment variables
1064     * Run sessions through Xsession
1065     * Close all X servers on exit
1066     * Send SIGHUP to X server when returning to greeter (makes all clients quit)
1067     * Change authorization after a session ends so previous session does not get
1068       access
1069     * Make shutdown buttons work in GTK+ greeter
1070     * Make user manager configurable
1071     * Make GTK+ greeter show username entry if no user list
1072     * Hide C and POSIX languages in greeter
1073     * Load language and layout from .dmrc file
1074
1075 Overview of changes in lightdm 0.1.0
1076
1077     * Make --test-mode which runs as the current user
1078     * Support displays acting as XDMCP terminals
1079     * Support MIT-MAGIC-COOKIE-1 and XDM-AUTHORIZATION-1 authorization
1080     * Support XDMCP over IPv6
1081
1082 Overview of changes in lightdm 0.0.4
1083
1084     * Support XDMCP logins
1085     * Support multi-head
1086     * Clean up resources on exit
1087     * Create gettext instance in WebKit greeter
1088
1089 Overview of changes in lightdm 0.0.3
1090
1091     * Wait for signal from X server before starting session
1092     * Add language API
1093     * Add keyboard layout API
1094     * Add gettext support to the WebKit greeter
1095
1096 Overview of changes in lightdm 0.0.2
1097
1098     * Fix installation of D-Bus service file
1099     * Allow DISPLAY env variable to be passed to X server so can run Xephyr
1100     * Handle no automatic login in webkit theme
1101
1102 Overview of changes in lightdm 0.0.1
1103
1104     * Initial release