+++ /dev/null
-
- ┌────────────────────────────┐
- │ 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 <criteria> 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 <window_mode>”
- • 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 <criteria> [→] [workspace] [number] <workspace>”
- • introduce “assign <criteria> [→] output left|right|up|down|primary|<output>”
- • introduce a “focus_wrapping” option (subsumes “force_focus_wrapping”)
- • introduce percentage point resizing for floating containers:
- “resize set <width> [px | ppt] <height> [px | ppt]”
- • introduce “resize set <width> ppt <height> 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
--- /dev/null
+
+ ┌────────────────────────────┐
+ │ Release notes for i3 v4.16 │
+ └────────────────────────────┘
+
+This is i3 v4.16. This version is considered stable. All users of i3 are
+strongly encouraged to upgrade.
+
+This release contains a number of assorted fixes and improvements across pretty
+much all individual components of i3.
+
+ ┌────────────────────────────┐
+ │ Changes in i3 v4.16 │
+ └────────────────────────────┘
+
+ • build: add conditionals for building docs/mans
+ • docs/i3bar-protocol: mention skipping blocks with empty full_text
+ • docs/ipc: add window_properties to tree node
+ • docs/layout-saving: clarify JSON non-compliance
+ • docs/userguide: clarify X resource value format
+ • docs/userguide: fix move_to_outputs link
+ • docs/userguide: link workspace_auto_back_and_forth from workspace
+ command
+ • docs/userguide: mention known issues for assign
+ • docs/userguide: use anchor for list_of_commands
+ • docs/userguide: add the default keybinding for focus parent
+ • man/*: fix title markers (for asciidoctor)
+ • man/i3-msg.man: add get_config and send_tick
+ • ipc: kill misbehaving subscribed clients instead of hanging
+ • ipc: introduce the sync IPC command for synchronization with i3bar
+ • ipc: scratchpad show now returns correct success
+ • ipc: send_tick now sets the already-documented “first” field
+ • i3bar-protocol: add modifiers to events sent by i3bar
+ • dump-asy: use Pod::Usage for --help and perldoc
+ • dump-asy: introduce -gv flag to disable opening ghostview
+ • dump-asy: introduce -save flag to store the rendered tree in a file
+ • dump-asy: add marks
+ • dump-asy: include floating containers
+ • i3bar: add --verbose flag
+ • i3bar: make modifier accept combinations (like floating_modifier)
+ • i3-config-wizard: add --modifier flag to allow for headless config
+ • i3-config-wizard: support startup notifications
+ • i3-msg: only print input + error position if they are set
+ • i3-msg: check replies also in quiet mode (-q)
+ • i3-msg: add support for the SUBSCRIBE message type
+ • i3-nagbar: support startup notifications
+ • i3-nagbar: add option for button that runs commands without a terminal
+ • i3-save-tree: exclude unsupported transient_for property
+ • i3-sensible-terminal: add alacritty
+ • i3-sensible-terminal: add hyper
+ • introduce strip_workspace_name alongside strip_workspace_numbers
+ • introduce title_align config directive
+ • “border toggle” now accepts an optional pixel argument
+ • “resize set” now interprets 0 as “no change”
+ • “resize set” now accepts the “width” and “height” keywords
+ • “resize” with pixel values now works for tiling containers
+ • the optional “absolute” method is now silently ignored in “move position”
+ commands, where it did not cause a visible difference anyway
+ • the _NET_WM_STATE_FOCUSED atom is now supported, resulting in e.g.
+ GTK applications displaying the correct window decoration
+ • moving fullscreen containers now moves them across outputs
+ • floating windows can now be used with a geometry of e.g. +1+1, i.e.
+ their top-left corner can be outside any output as long as the window
+ is contained partially by one
+ • prefer floating fullscreen containers when switching focus
+ • moving containers to an active workspace no longer changes focus
+ • the rename workspace command no longer confuses directions (e.g. “left”)
+ with output names
+ • prefer $XDG_CONFIG_HOME/i3/config over ~/.i3/config
+ • allow multiple assignments of workspaces to output
+ • respect maximum size in WM_NORMAL_HINTS
+ • reject requests for WM_STATE_ICONIC, which avoids e.g. wine
+ applications being stuck in paused state
+ • a number of code refactorings and cleanups, some of which tool-assisted
+
+ ┌────────────────────────────┐
+ │ Bugfixes │
+ └────────────────────────────┘
+
+ • build: fix static linking
+ • i3bar: fix various memory leaks
+ • i3bar: fix crash when no status_command is provided
+ • i3bar: fix chopping the first character on the very left when using the
+ full width of the output
+ • i3bar: fix relative_x and width properties of click events
+ • i3bar: fix the tray disappearing in some cases when using "tray_output"
+ • fix various memory leaks and memory correctness issues
+ • refocus focused window on FOCUS_IN events for the root window. This
+ fixes incorrect behavior with steam and some tk apps
+ • fix focus bugs when moving unfocused containers
+ • fix incorrect urgent window state edge case
+ • moving an unfocused container from inside a split container to another
+ workspace doesn’t focus siblings
+ • toggling and killing floating windows now maintains focus order
+ • don’t incorrectly focus siblings when scrolling on window decorations
+ • fix crash when moving a container to a marked workspace
+ • fix swap when first is behind a fullscreen window
+ • fix crash when renaming an existing workspace to a name assigned to the
+ focused output
+ • reframe swallowed windows if depth doesn’t match
+ • use detectable autorepeat so that --release bindings are run only when
+ the key is actually released (and not when it is repeated)
+ • fix border artifacts when moving windows
+ • correctly handle bindings for the same mod key with and without --release
+ • reset B_UPON_KEYRELEASE_IGNORE_MODS bindings when switching modes
+ • fix height offset calculation in pango text drawing
+ • fix detection of libiconv on OpenBSD
+ • free workspace assignments on reload
+ • fix mouse position at startup with multiple outputs
+ • no longer allow dragging global fullscreen floating containers
+ • fix rendering artifacts with global fullscreen containers
+ • fix disabling floating for scratchpad windows
+ • fix a crash when renaming an unfocused empty workspace matching an
+ assignment
+ • ensure containers have a size of at least 1px after resize
+ • permit invalid UTF-8 in layout JSON files (e.g. for window titles)
+ • correct invalid UTF-8 characters in window and container titles
+ • fix a crash when moving to a child of a floating container
+ • fix a crash when matching __focused__ with no window open
+ • fix no_focus when only using floating windows
+ • fix max_aspect calculation
+ • moving an unfocused container from another output now maintains
+ the correct focus order
+ • don’t change focus order when swapping containers
+ • correctly update _NET_CURRENT_DESKTOP when moving containers between outputs
+ using the directional move command
+ • don’t produce move events after attempting to directionally move a container
+ towards a direction it can’t go
+ • fix sticky focus when switching to workspace on different output
+
+
+ ┌────────────────────────────┐
+ │ Thanks! │
+ └────────────────────────────┘
+
+Thanks for testing, bugfixes, discussions and everything I forgot go out to:
+
+ Adrian Cybulski, Aestek, Alan Barr, Andriy Yablonskyy, Cassandra Fox,
+ Christian Duerr, Dan Elkouby, downzer0, Elouan Martinet, Felix Buehler,
+ Gravemind, Harry Lawrence, Hritik Vijay, hwangcc23, Ingo Bürk, Joona, Klorax,
+ lasers, Łukasz Adamczak, Martin, Michael Stapelberg, Oliver Graff,
+ Orestis Floros, Soumya, Takashi Iwai, Thomas Fischer, Todd Walton, Tony
+ Crisci, Uli Schlachter, Vivien Didelot
+
+-- Michael Stapelberg, 2018-11-04