┌────────────────────────────┐ │ Release notes for i3 v4.15 │ └────────────────────────────┘ This is i3 v4.15. This version is considered stable. All users of i3 are strongly encouraged to upgrade. Aside from a number of fixes and documentation improvements, a number of commands have been extended to be more complete (e.g. “assign”, “resize”). ┌────────────────────────────┐ │ Changes in i3 v4.15 │ └────────────────────────────┘ • build: AnyEvent::I3 moved to the i3 repository, so that its main consumer, the i3 testsuite, can use new features immediately (such as the tick event, in this case). • docs/hacking-howto: promote “using git / sending patches” and “how to build?” sections • docs/i3bar-protocol: document that pango markup only works with pango fonts • docs/ipc: document focus, nodes, floating_nodes • docs/ipc: urgent: complete the list of container types • docs/ipc: document how to detect i3’s byte order in memory-safe languages • docs/ipc: document the GET_CONFIG request • docs/userguide: fix formatting issue • docs/userguide: explain why Mod4 is usually preferred as a modifier • docs/userguide: use more idiomatic english (full-size, so-called) • docs/userguide: switch from removed goto command to focus • docs/userguide: mention in focus • docs/userguide: remove outdated 2013 last-modified date • dump-asy: add prerequisite checks • dump-asy: fix warnings about empty container names • i3-dump-log: enable shmlog on demand • i3-sensible-terminal: add “kitty”, “guake”, “tilda” • i3-sensible-editor: add “gvim” • i3bar: add --release flag for bindsym in bar blocks • i3bar: add relative coordinates in JSON for click events • ipc: rename COMMAND to RUN_COMMAND for consistency • ipc: implement tick event for less flaky tests • ipc: add error reply to “focus ” • ipc: send success response for nop • default config: add $mod+r to toggle resize mode • default config: use variables for workspace names to avoid repetition • introduce “assign [→] [workspace] [number] ” • introduce “assign [→] output left|right|up|down|primary|” • introduce a “focus_wrapping” option (subsumes “force_focus_wrapping”) • introduce percentage point resizing for floating containers: “resize set [px | ppt] [px | ppt]” • introduce “resize set ppt ppt” for tiling windows • rename “new_window” and “new_float” to “default_border” and “default_floating_border” (the old names keep working) • output names (e.g. “DP2”) can now be used as synonyms for monitor names (e.g. “Dell UP2414Q”). • the “swap” command now works with fullscreen windows • raise floating windows to top when they are focused programmatically • _NET_ACTIVE_WINDOW: invalidate focus to force SetInputFocus call • make focus handling consistent when changing focus between outputs • round non-integer Xft.dpi values • tiling resize: remove minimum size ┌────────────────────────────┐ │ Bugfixes │ └────────────────────────────┘ • i3bar: fix various memory leaks • i3bar: fix crash when no status_command is provided • fix uninitialized variables in init_dpi_end, tree_restore • fix incorrectly set up signal handling • fix “swap” debug log message • fix crash when specifying invalid con_id for “swap” • fix crash upon restart with window marks • fix crash when config file does not end in a newline • fix crash in append_layout • fix crash in layout toggle command • fix crash when switching monitors • fix use-after-free in randr_init error path • fix move accidentally moving windows across outputs • fix crash when floating window is tiled while being resized • fix out-of-bounds memory read • fix memory leak when config conversion fails • fix layout toggle split, which didn’t work until enabling tabbed/stack mode once • move XCB event handling into xcb_prepare_cb • avert endless loop on unexpected EOF in ipc messages • perform proper cleanup for signals with Term action • don’t match containers in the scratchpad with criteria • fix “workspace show” related issues • fix config file conversion with long variable names • fix config file conversion memory initialization • prevent access of freed workspace in _workspace_show • disable fullscreen when required when programmatically focusing windows • free last_motion_notify • don’t raise floating windows when focused because of focus_follows_mouse • correctly set EWMH atoms when closing a workspace • don’t raise floating windows when workspace is shown • keep focus order when encapsulating workspaces • validate layout files before loading ┌────────────────────────────┐ │ Thanks! │ └────────────────────────────┘ Thanks for testing, bugfixes, discussions and everything I forgot go out to: Alex Lu, Ben Creasy, Bennett Piater, Cast, chressie, clonejo, Dan Elkouby, Daniel Mueller, DebianWall, Diki Ananta, Edward Betts, hwangcc23, Ingo Bürk, Jan Alexander Steffens, Johannes Lange, Kent Fredric, livanh, Martin T. H. Sandsmark, Michael Siegel, Orestis Floros, Pallav Agarwal, Pawel S. Veselov, Pietro Cerutti, Theo Buehler, Thomas Praxl, Tyler Brazier, Vladimir Panteleev, walker0643, Wes Roberts, xzfc -- Michael Stapelberg, 2018-03-10