From 55ba1c5e56ccddc901a8afd653fa1710035a2884 Mon Sep 17 00:00:00 2001 From: Michael Stapelberg Date: Sat, 28 Feb 2015 14:36:22 +0100 Subject: [PATCH] release i3 v4.9 --- RELEASE-NOTES-4.8 | 138 ---------------------------------------------- RELEASE-NOTES-4.9 | 124 +++++++++++++++++++++++++++++++++++++++++ man/asciidoc.conf | 2 +- 3 files changed, 125 insertions(+), 139 deletions(-) delete mode 100644 RELEASE-NOTES-4.8 create mode 100644 RELEASE-NOTES-4.9 diff --git a/RELEASE-NOTES-4.8 b/RELEASE-NOTES-4.8 deleted file mode 100644 index f0f5923f..00000000 --- a/RELEASE-NOTES-4.8 +++ /dev/null @@ -1,138 +0,0 @@ - - ┌──────────────────────────────┐ - │ Release notes for i3 v4.8 │ - └──────────────────────────────┘ - -This is i3 v4.8. This version is considered stable. All users of i3 are -strongly encouraged to upgrade. - -The biggest new feature certainly is layout saving/restoring. See -http://i3wm.org/docs/layout-saving.html for more details. tl;dr: export your -current layout as JSON file, load it into new i3 sessions, get placeholder -windows that will be replaced by the actual apps once you start them. - -Also very important for owners of HiDPI/“retina” displays is that i3 will now -respect your configured DPI and scale up its UI elements accordingly. Use -“xrandr --dpi 184” to set your dpi to 184, in case your setup does not figure -it out automatically. To get properly scaling fonts, we also changed the -default font from a bitmap font to a pango font (“DejaVu Sans Mono 8”). - -Multiple changes improve the compatibility of i3 with other software, e.g. -java-based software (focus handling, once again) or external pagers (we now -provide _NET_CLIENT_LIST and let pager applications change workspaces). - -For packagers, another change is that yajl ≥ 2.0 is now required for compiling -i3. This should not be a problem for anyone, as that version is pretty old by -now. - -For contributors, note that we have starting formatting the source code with -clang-format-3.5. This means that there will no longer be a need to argue about -coding style when discussing patches :). - - ┌────────────────────────────┐ - │ Changes in v4.8 │ - └────────────────────────────┘ - - • docs/ipc: reformat/update list of ipc libraries - • docs/ipc: fix current_workspace outputs reply member - • docs/ipc: update ipc COMMAND reply docs - • docs/userguide: fix multiple typos - • docs/debugging: use bzip2 - • docs/debugging: explain how to enable logging on the fly - • docs/debugging: merge the debug symbols/backtrace section - • docs/debugging: recommend i3 --moreversion - • man/i3-nagbar.man: update manpage to document all options - • i3bar: Amend status line error 127 message - • i3bar: don’t kill watcher on EOF, leads to better error messages - • i3bar: send mouse wheel events to child too - • i3bar: do click handling and tray padding retina-correctly - • i3bar: render separators render-correctly - • i3bar: reinit colors on barconfig update - • i3bar: Don't start child unless status_command - • i3bar: implement custom workspace numbers config - • resize floating windows when right-clicking the decoration - • enable shmlog when invoked as i3-with-shmlog - • Disable pointer warps when focus_follows_mouse is disabled - • Movement into a branch considers movement direction - • set ewmh desktop properties on startup - • handle ButtonPress events with child != XCB_NONE - • implement layout restoring - • only LOG() the DPI when it changes, DLOG() it otherwise - • send IPC window events for focus and title changes - • these types of windows are now floating by default: - dialog, utility, toolbar and splash windows, modal windows, windows with an - equal minimum and maximum size - • send last event timestamp with WM_TAKE_FOCUS message - • maintain the _NET_CLIENT_LIST property - • don’t set input focus _and_ send WM_TAKE_FOCUS - • respect CFLAGS in linking command - • fix parallel make - • reset SIGPIPE handler before executing a command - • render default window border width retina-correctly - • draw workspace buttons and padded text blocks retina-correctly - • render resize windows retina-correctly - • delegate click handling to dock clients - • send complete config on barconfig_update - • implement the window::fullscreen_mode ipc event - • make all workspaces starting with "__" internal - • improve error messages for i3-internal workspace names - • allow _NET_ACTIVE_WINDOW requests to switch workspaces if they indicate - that they are a pager (following the spec) - • workspace assignments by number - • add configuration option for disabling mouse warping - • set _NET_ACTIVE_WINDOW to None when none has focus - • set X-LightDM-DesktopName in i3.xsession.desktop to fix autostart on Ubuntu - • don’t ELOG ipc EOF - • replace all printf()s with D?LOG - • delete ipc socket when exiting, cleanup tmpdir - • default config: switch to DejaVu Sans Mono 8 as default font - • cleanup tmpdir when restarting and not using XDG_RUNTIME_DIR - • Snap pointer to resize bar on drag resize - • Size resizebar according to container size - • Fix clang -Wextra except -Wunused-parameter - • Respect Motif hint for window decorations - - ┌────────────────────────────┐ - │ Bugfixes │ - └────────────────────────────┘ - - • create con pixmaps when not needed - • i3bar: fix resource leak: statusline_ctx needs to be freed first - • tree_split should not split floating cons - • fix memory leak with ipc_receive_message - • fix invalid reads by setting con->window to NULL in tree_close - • fix memory leak when closing windows - • fix memory leak when matching window by criteria - • fix memory leak when matching window by con_id - • ignore dock clients in the resize command - • clear wm_size_hints if they are not set - • resize window check should check for NULL - • fix window event crash with no window - • i3-dmenu-desktop: also quote the %c field code - • new_window and new_float can now be used simultaneously with different - border widths - • fix crash when using multiple for_window statements that move windows - • Set input focus with last timestamp - • handle windows whose WM_TRANSIENT_FOR points to themselve - • don’t overwrite the original size of floating windows when changing border - • don’t errnously render floating fullscreen windows during restart - • ensure floating windows don’t drop out of fullscreen when restarting - • don’t overwrite the window’s geometry after restartingnext - • i3bar: Set `mapped` flag on trayclient creation - • i3bar: don't show "EOF" status line error - - ┌────────────────────────────┐ - │ Thanks! │ - └────────────────────────────┘ - -Thanks for testing, bugfixes, discussions and everything I forgot go out to: - -Aleksi Blinnikka, Alexander Berntsen, Alexander Kedrik, Antonio, Arun -Persaud, Atte Peltomaki, bo, Campbell Barton, chris, David Coppa, eeemsi, -Holger Langenau, Jean-Philippe Ouellet, Jens, jeroentbt, Jonas Maaskola, -Julian Ospald, Kernc, Koston, lasers, lkraav, Marcin, Marco Hunsicker, -Marcus Crestani, Matthias Thubauville, Maxime, Michael Stapelberg, Peter -Boström, Petr Písař, Quentin Glidic, Steve Jones, TonyC, Tony Crisci, -Vivien Didelot, Wieland Hoffmann, x33a, xeen - --- Michael Stapelberg, 2014-06-15 diff --git a/RELEASE-NOTES-4.9 b/RELEASE-NOTES-4.9 new file mode 100644 index 00000000..9012646a --- /dev/null +++ b/RELEASE-NOTES-4.9 @@ -0,0 +1,124 @@ + + ┌──────────────────────────────┐ + │ Release notes for i3 v4.9 │ + └──────────────────────────────┘ + +This is i3 v4.9. This version is considered stable. All users of i3 are +strongly encouraged to upgrade. + +Notable new features include mouse button bindings and improved EWMH +compatibility, meaning more external pager programs work with i3 now. + +Aside from that, this release contains plenty of bugfixes and little +enhancements. + +The new dependency on libxkbcommon ≥ 0.4.0 is notable for distribution +packages. This dependency allowed us to drop our last direct dependency +on Xlib :). + +It’s also worth mentioning that all i3 repositories are now on GitHub, see +http://thread.gmane.org/gmane.comp.window-managers.i3.general/1666 for the +announcement. + + ┌────────────────────────────┐ + │ Changes in v4.9 │ + └────────────────────────────┘ + + • docs/ipc: use an actual event type + • docs/debugging: use logs.i3wm.org + • docs/testsuite: add hint to use xvfb-run + • testcases: use Xephyr instead of XDummy + • i3-sensible-*: use command -v (built-in) instead of which(1) + • i3.xsession.desktop: set DesktopNames (which gdm uses) + • i3-save-tree: interpret commandline parameters as utf-8 + • i3-save-tree: add 'mark' as allowed key to i3-save-tree output + • i3bar-protocol: ensure align = left is the default + • i3bar: implement custom mouse wheel commands + • i3bar: improve error message when a full_text property is missing + • i3bar: respect the urgency flag on status blocks + • i3bar: inset the urgent background of a status block for consistency with + workspace buttons + • i3bar: suspend the child when bars are fully obscured + • i3bar: use Pango markup + • ipc: implement the window::close event + • ipc: implement the window::move event + • ipc: implement the window::floating event + • ipc: implement the window::urgent event + • ipc: set ws reply "num" member to -1 when named + • ipc: add deco_rect property to con in ipc response + • ipc: include workspace con in workspace event + • ewmh: implement property _NET_NUMBER_OF_DESKTOPS + • ewmh: implement property _NET_DESKTOP_VIEWPORT + • ewmh: implement property _NET_DESKTOP_NAMES + • ewmh: handle _NET_CURRENT_DESKTOP requests + • ewmh: handle _NET_CLOSE_WINDOW requests + • ewmh: handle _NET_WM_MOVERESIZE requests + • implement mouse bindings (e.g. bindsym button3 kill) + • add mouse binding --whole-window flag + • add mouse binding --release flag + • switch to xcb-xkb and libxkbcommon, removing our last direct Xlib dep + • make “move [direction]” work with criteria + • make “move to position” work with criteria + • “workspace ” and “move to workspace ” now look for a workspace + starting with number (unless there is a workspace exactly matching that + number). I.e., “workspace 4” will go to a workspace called “4: www” unless + you have a workspace “4” + • “focus ” now focuses floating containers when there are no + tiling containers on the destination output + • take the motif border into account when calculating floating window + geometry + • revert “Disable pointer warps when focus_follows_mouse is disabled” as it + was unexpected by a number of users. Sorry for the back-and-forth + • handle WM_CLASS changes + • raise floating windows on “focus ” + • align lower line of bar decoration to border width + • parse tray_output as a word, not string + • allow to validate the config file without X + • do not resend focus on click, fixes compatibility problems with some wine + or mono apps (e.g. Office 2010) + • don't draw borders wider than actual width + • prevent workspace change during global fullscreen + • extend the fullscreen command (fullscreen [global]) + • fix start_application() doc about which shell is used + + ┌────────────────────────────┐ + │ Bugfixes │ + └────────────────────────────┘ + + • i3-dmenu-desktop: quote path + • i3bar: fix a double free when changing color configuration + • i3bar: render bars after the first chunk of JSON + • i3bar: add a sync call to confirm reparents before exiting (fixes tray + restart issues) + • i3bar: correctly calculate clicks on i3bar status blocks + • i3bar: make click events on status blocks work with 'workspace_buttons no' + • retina support: convert logical to physical pixels for default_border_width + • retina support: treat everything up to 120 dpi as 96 dpi + • don’t set input focus if not accepted (fixes problems with xfce4-notifyd) + • don’t focus unmapped container on manage + • create the directory for storing the restart state + • avoid changing border width when changing containers from tiling to + floating + • layout saving: properly restore workspace containers + • rerender the decoration when the container requires a pixmap and doesn’t + have one + • don’t set focus in con_set_layout() on invisible workspaces + • properly handle windows unsetting WM_TRANSIENT_FOR + • use the command parser to properly extract workspace names + • copy binding before run (fixes reloads) + • revert "Bugfix: Set input focus with last timestamp" + • render floating windows during global fullscreen + • actually parse client.placeholder + + ┌────────────────────────────┐ + │ Thanks! │ + └────────────────────────────┘ + +Thanks for testing, bugfixes, discussions and everything I forgot go out to: + + Alexander Monakov, aszlig, cornerman, dmurph, Mats, dsargrad, hercek, hjem, + Ingo, Ingo Bürk, Janus, javier, jefvel, Lukas K, Marein Konings, Mats, + Michael Stapelberg, Mii, nikolaus, okraits, Peter, smlb, sur5r, Tony Crisci, + val, vals, xeen, Yves-Alexis + +-- Michael Stapelberg, 2015-02-28 diff --git a/man/asciidoc.conf b/man/asciidoc.conf index 84b6d52c..f358e81b 100644 --- a/man/asciidoc.conf +++ b/man/asciidoc.conf @@ -7,7 +7,7 @@ template::[header-declarations] {mantitle} {manvolnum} i3 -4.8 +4.9 i3 Manual -- 2.39.5