]> git.sur5r.net Git - i3/i3/blob - RELEASE-NOTES-4.12
Ensure config variables match on longest-length (#2306)
[i3/i3] / RELEASE-NOTES-4.12
1
2  ┌────────────────────────────┐
3  │ Release notes for i3 v4.12 │
4  └────────────────────────────┘
5
6 This is i3 v4.12. This version is considered stable. All users of i3 are
7 strongly encouraged to upgrade.
8
9 If cairo ≥ 1.14.4 is available, i3 and i3bar will use cairo for rendering
10 (instead of raw X11 drawing primitives). While this is currently optional,
11 having cairo ≥ 1.14.4 will be a hard requirement in future release.
12
13 This release contains a good number of detail improvements and fixes.
14
15  ┌────────────────────────────┐
16  │ Changes in i3 v4.12        │
17  └────────────────────────────┘
18
19   • use https instead of git/http, update contact information, add GPG key
20   • docs/hacking-howto: fix old cfgparse.y reference to config_parser.c
21   • docs/ipc: added link to i3ipcpp (C++ library)
22   • docs/userguide: clarify no_focus documentation
23   • docs/userguide: add documentation for binding modes
24   • docs/userguide: fix rendering of __focused__
25   • docs/userguide: improve placement of explicit IDs for headings
26   • docs/userguide: make rendering of key bindings more consistent
27   • docs/userguide: clarify quoting of “exec” commands
28   • man/i3-nagbar: fix example invocation
29   • man/i3: add “floating window” to terminology
30   • i3-sensible-*: quote variables correctly
31   • i3-sensible-editor: add neovim
32   • i3-sensible-terminal: add termit, st
33   • i3bar: use cairo for all drawing operations
34   • i3bar: support per-statusblock border and background colors
35   • i3bar: support different bar background colors depending on whether the bar
36     is on the focused output or not
37   • i3bar: multiple tray_output directives on the same bar are now supported
38   • i3bar: support disabling the modifier by specifying “modifier none”
39   • use cairo for all drawing operations
40   • fix a number of memory leaks, thanks to AddressSanitizer
41   • no_focus is now suppressed for the first window of a workspace
42   • “workspace next/prev” now looks for numbered workspaces after reaching the
43     last workspace (it used to incorrectly only look at named workspaces)
44   • multiple marks can now be set on a single window (but a mark can still only
45     be present on one window at a time)
46   • the “unmark” command now supports criteria
47   • the “con_id” criterion now supports the special value __focused__
48   • the “workspace” command now supports the --no-auto-back-and-forth parameter
49   • the “move window to workspace” command now supports the
50     --no-auto-back-and-forth parameter
51   • the “resize grow|shrink width|height” command now works for a nested split
52     in the same direction
53   • support _NET_WM_USER_TIME’s special 0 value, indicating that a window
54     should not be focused
55   • use 32-bit visual by default if available. This reduces graphical glitches
56     when using transparency (which is still not officially supported)
57   • the “move position center” command now supports criteria
58   • specifying invalid match criteria now results in an error instead of
59     blindly applying the operation to the currently focused window
60   • allow mouse bindings to run on the root window
61   • support matching _NET_WM_WINDOW_TYPE_NOTIFICATION in criteria
62   • all criteria are now matched, even when con_id or con_mark are given (used
63     to be a special case)
64   • allow the “id” criterion to be specified in any base recognized by
65     strtol(), not only base 10
66   • non-true color displays are now supported again (e.g. the Raspberry Pi)
67   • the “split” command now has a “toggle” option
68   • the additional color class “decoration_border” was added
69   • title_format is now stored on containers instead of windows, allowing the
70     use of title_format on split containers
71   • On OpenBSD, i3 now uses pledge(2)
72   • support _NET_WM_DESKTOP (for pager applications like gnome-panel)
73   • floating workspaces are no longer available (they were not supported for a
74     while now)
75   • floating windows now carry the I3_FLOATING_WINDOW atom so that tools like
76     compositors can be configured to match on floating windows
77
78  ┌────────────────────────────┐
79  │ Bugfixes                   │
80  └────────────────────────────┘
81
82   • i3bar: display short text only on the monitor(s) on which it is necessary
83   • i3bar: explicitly set cursor using libxcb-cursor if available
84   • i3bar: fix XEMBED messages
85   • i3-nagbar: explicitly set cursor using libxcb-cursor if available
86   • duplicated keybindings are now also detected when one uses bindcode but the
87     other(s) use(s) bindsym
88   • keymap fallback for servers without XKB (e.g. TightVNC) has been added
89   • using pango markup in mode names is now optional, fixing a regression in i3
90     v4.11 where modes which contained characters such as “<” would break.
91   • moving windows to a workspace by specifying a mark now works
92   • the root output is now used when any RandR request fails (for x2go)
93   • assignments are now marked as run before executing them, preventing endless
94     loops/crashes when assignments cause another assignment evaluation
95   • splitting/floating a dock container no longer crashes i3
96   • correctly compare modifier mask when identifying keybindings (fixes
97     bindings which use --release)
98   • no longer fail config validation when there is no newline at the end of
99     the config file
100   • scrollwheel buttons are now only grabbed when necessary, allowing the use
101     of “bindsym button*” or scrolling in windows without focusing them (in case
102     no “bindsym button*” is present)
103   • parse con_id in base 16 (affected FreeBSD only)
104   • fix crash when opening a large number of windows
105   • reject empty swallow definitions to avoid crashes
106   • don’t remove SubstructureRedirect event mask temporarily (fixes i3bar
107     stopping after system suspend)
108   • move urgent flag before killing the parent to avoid a crash
109   • correctly validate “kill” command to avoid crashing when “kill” is invoked
110     on workspace containers
111   • actually accept the documented “workspace” token as an alternative to “→”
112     in assign statements
113   • remove _NET_WM_STATE on withdrawn windows to comply with the spec
114   • the “border” command now uses logical pixels (relevant for hi-dpi displays)
115   • “tray_output primary” does not properly fall back and hence was removed
116     from the default config again
117   • correctly determine focused workspace when moving workspace to output
118   • revert to default binding mode before reloading the config file
119   • correctly interpret _MOTIF_WM_HINTS (endianness-dependent)
120
121  ┌────────────────────────────┐
122  │ Thanks!                    │
123  └────────────────────────────┘
124
125 Thanks for testing, bugfixes, discussions and everything I forgot go out to:
126
127   Adaephon, Airblader, Alexis211, bendem, botovq, brianmillar, DavidMikeSimon,
128   dcoppa, Florian Merkel, fmthoma, frederik, hwangcc23, jolange, Juuso
129   Lapinlampi, kneitinger, lotheac, nicklan, norrland, pra85, romanblanco,
130   sur5r, tbu-, tyll, wodny
131
132 -- Michael Stapelberg, 2016-03-06