<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sl0ppij.git/src/tests/e2e/cases.rs, branch main</title>
<subtitle>a sl0p.foo repository</subtitle>
<id>https://git.sl0p.foo/sl0ppij.git/atom/src/tests/e2e/cases.rs?h=main</id>
<link rel='self' href='https://git.sl0p.foo/sl0ppij.git/atom/src/tests/e2e/cases.rs?h=main'/>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0ppij.git/'/>
<updated>2026-07-29T15:08:08Z</updated>
<entry>
<title>More dependency upgrades for debian (#5421)</title>
<updated>2026-07-29T15:08:08Z</updated>
<author>
<name>Aram Drevekenin</name>
<email>aram@poor.dev</email>
</author>
<published>2026-07-29T15:08:08Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0ppij.git/commit/?id=cab75c58fec089d7ee97c0e7ca1abafa9ef5e33f'/>
<id>urn:sha1:cab75c58fec089d7ee97c0e7ca1abafa9ef5e33f</id>
<content type='text'>
* upgrade insta, rand, sha2, strum, thiserror, tokio-tungstenite, toml, which; drop unused semver and typetag

* upgrade sysinfo to 0.39.5, bump toolchain (msrv) to 1.95.0

* remote legacy yaml config converter and thus drop serde_yaml

* upgrade unicode-width to 0.2.2

* fix(tests): run ipc roundtrip test on a larger stack</content>
</entry>
<entry>
<title>fix: input spam when moving mouse while typing by splitting the input bytes into their respective events (#5323)</title>
<updated>2026-07-17T13:24:52Z</updated>
<author>
<name>Pierre Kisters</name>
<email>1524059+lhns@users.noreply.github.com</email>
</author>
<published>2026-07-17T13:24:52Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0ppij.git/commit/?id=d9682a2eef5ac0236808f05337f4f224bcf9d55f'/>
<id>urn:sha1:d9682a2eef5ac0236808f05337f4f224bcf9d55f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Title frames (#5318)</title>
<updated>2026-06-29T16:10:59Z</updated>
<author>
<name>Aram Drevekenin</name>
<email>aram@poor.dev</email>
</author>
<published>2026-06-29T16:10:59Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0ppij.git/commit/?id=245f5141c9bb7eb91f003efac4defc94470243fd'/>
<id>urn:sha1:245f5141c9bb7eb91f003efac4defc94470243fd</id>
<content type='text'>
* initial implementation

* improve single line title design

* hint text plugin infra

* add proto regen task

* display alt text in status bar

* don't display text with full frames

* style alt hover text

* fix + style control own pane hover

* make multiplayer indications responsive

* update snapshots

* plugin api

* single pane as tab

* better scroll styling

* fix tests

* tab-bar plus hover

* plugin surface tests

* integration tests

* adjust all integration tests

* reduce hover noise

* add pane id to in place

* more integration tests

* style: rustfmt

* update plugin assets

* update assets and snapshots

* add pr</content>
</entry>
<entry>
<title>chore: new test infra (#5269)</title>
<updated>2026-06-16T13:44:22Z</updated>
<author>
<name>Aram Drevekenin</name>
<email>aram@poor.dev</email>
</author>
<published>2026-06-16T13:44:22Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0ppij.git/commit/?id=8c7e41c9aaafc44520380a2c86db517fde54ad31'/>
<id>urn:sha1:8c7e41c9aaafc44520380a2c86db517fde54ad31</id>
<content type='text'>
* initial implementation

* refactoring and cleanups

* port basic e2e tests

* fix tab rotation

* migrate client and mouse tests

* migrate the rest of the tests

* remove old e2e tests

* rustfmt

* add e2e note

* fix stale test

* fix: cross platform locking/cleanup

* fix: change mode race discovered by tests

* rustfmt

* fix: attach/detach race in tests

* fix plugin test assertion

* add pr</content>
</entry>
<entry>
<title>fix(e2e): stabilize tests and support Apple Silicon local dev (#4952)</title>
<updated>2026-04-01T10:41:07Z</updated>
<author>
<name>Thomas Linford</name>
<email>tlinford@users.noreply.github.com</email>
</author>
<published>2026-04-01T10:41:07Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0ppij.git/commit/?id=6542afabd80e44ab730413b92e3456a15a5f0a2f'/>
<id>urn:sha1:6542afabd80e44ab730413b92e3456a15a5f0a2f</id>
<content type='text'>
- cross-compile musl binary on macOS via cargo-zigbuild, with
arch-independent symlink so snapshots are stable across x86_64 and aarch64

- kill_running_sessions() now calls stop_zellij() instead of
start_zellij(), eliminating 3s startup per test

- prevent steps from firing prematurely by tightening completion conditions
and adding re-send logic for garbled keys</content>
</entry>
<entry>
<title>fix: performance regression when switching tabs (#4918)</title>
<updated>2026-03-26T11:49:05Z</updated>
<author>
<name>Aram Drevekenin</name>
<email>aram@poor.dev</email>
</author>
<published>2026-03-26T11:49:05Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0ppij.git/commit/?id=12ee607532d8894b7dff1f29143f073783bd4445'/>
<id>urn:sha1:12ee607532d8894b7dff1f29143f073783bd4445</id>
<content type='text'>
* remove pane render report

* only collect pane contents if pane should render

* add logs

* conditional keybinding serialization

* remove logs

* rustfmt

* fix tests

* tests

* rustfmt</content>
</entry>
<entry>
<title>remove sequence plugin (#4761)</title>
<updated>2026-02-24T12:10:40Z</updated>
<author>
<name>Aram Drevekenin</name>
<email>aram@poor.dev</email>
</author>
<published>2026-02-24T12:10:40Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0ppij.git/commit/?id=8cd6286c3ffc10d14fdafd5005fa89b0f7fdcd44'/>
<id>urn:sha1:8cd6286c3ffc10d14fdafd5005fa89b0f7fdcd44</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix loading short layouts and custom config dirs (#4640)</title>
<updated>2026-01-26T18:05:51Z</updated>
<author>
<name>har7an</name>
<email>99636919+har7an@users.noreply.github.com</email>
</author>
<published>2026-01-26T18:05:51Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0ppij.git/commit/?id=bdf20eef50f2d68501be708ec5ee38dbe9366a91'/>
<id>urn:sha1:bdf20eef50f2d68501be708ec5ee38dbe9366a91</id>
<content type='text'>
* test(e2e): Write a regression test to validate behavior

w.r.t. loading and determining the session layout file. Compared to
release v0.43.1, right now there is a problem where `zellij --layout
NAME`, with `NAME` being the filename of a layout in the
`$ZELLIJ_DATA_DIR/layouts/` subfolder, doesn't resolve to the correct
layout file. Instead, zellij will silently fall back to its default
config. It does, however, recognize nonexistent configuration files.

* fix(utils): Treat bare layout names as file paths first

before defaulting to builtin layout names. This restores the behavior
shown by zellij up until 0.43.1, which was altered in a recent extension
of the server-client API.

* fix: Forward client layout information to startup code

and ensure it isn't ignored along the way. Update a bunch of tests to
react to the new function interface and write new tests to catch
deviations in the future.

* test: Fix misconfigured e2e test

to ensure that a custom `--config-dir` is indeed respected during
application startup.

* test: Rewrite config dir test to not use variable metadata

since the `LayoutInfo` object previously dumped into the snapshot
contains information that isn't platform agnostic, including an absolute
file path and a timestamp.

* docs(CHANGELOG): Mention PR #4640

in the list of changes for the next release.

* fix: Handle bare layouts with name "default" correctly

and assume a "default" layout if no layout name is given during layout
resolution. "default" may not always be the builtin default layout,
since users can write their own "default.kdl" that takes effect when
placed in the layout directory an no other layouts are explicitly
specified.</content>
</entry>
<entry>
<title>Feature: allow overriding a layout for a currently running tab (change layout at runtime) (#4566)</title>
<updated>2025-12-23T12:41:56Z</updated>
<author>
<name>Aram Drevekenin</name>
<email>aram@poor.dev</email>
</author>
<published>2025-12-23T12:41:56Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0ppij.git/commit/?id=3fe48a972c55537502128779116d38d8f8aedb7e'/>
<id>urn:sha1:3fe48a972c55537502128779116d38d8f8aedb7e</id>
<content type='text'>
* add tests for LayoutApplier

* initial untested implementation of override functions

* add override-layout cli action with stub in screen

* filter run instructions to ignore

* implement override-layout roundtrip through plugin and pty threads

* initial full-cycle working override implementation

* fix some bugs (eg. actually start new terminals)

* fix some bugs with focus after override

* fix floating pane matching bug in layout applier

* formatting

* use first tab, error on more than 1 tab

* fix some floating_panes ordering and shell issues

* get new tab name to work

* respect swap layouts

* allow specifying tab properties on main layout node if we just have one tab

* add tests for new override methods

* start work on retaining panes, hard-coded things, kind of working but broken in many places

* fixed most tiled pane override bugs

* reset viewport before reapplying

* revert constraint system changes

* retain-existing-terminal-panes flag

* add retain terminal panes tests

* add retain plugin panes flag

* add keybind

* add retain plugin panes tests

* add override-layout e2e test

* refactor: layout_applier

* style: rustfmt

* some cleanups

* fix cli flags

* no crashy

* formatting and artifacts

* moar cleanups

* fix: respect expanded in stack when overriding

* docs(changelog): add PR</content>
</entry>
<entry>
<title>Improve CLI interface (add detach, switch session, blocking zellij run and more) (#4492)</title>
<updated>2025-10-31T19:15:32Z</updated>
<author>
<name>Aram Drevekenin</name>
<email>aram@poor.dev</email>
</author>
<published>2025-10-31T19:15:32Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0ppij.git/commit/?id=82f30e2cde5207e5b51301633686b2c7feac54f3'/>
<id>urn:sha1:82f30e2cde5207e5b51301633686b2c7feac54f3</id>
<content type='text'>
* initial implementation

* fix tests

* move more ations

* screen adjustments (does not compile)

* plugin/pty adjustments (does not compile)

* more progress, tests not compiling

* fix tests

* more progress, does not compile

* more progress, compiles, tests failing

* tests passing

* rely on Drop for NotificationEnd

* atomicify some more actions

* fmt

* move unblock input to route

* don't pass hard-coded action names

* refactor: consolidate completion channel logic

* comment

* track last active client

* track cli clients explicitly

* use the last active client for cli commands when possible

* fix focus-next-pane for multiple clients

* various fixes for multi-client actions from the cli

* add detach action

* fix tests

* add switch session cli action

* fix switch session deadlock

* add and layout to switch-session cli action

* blocking zellij run: add NewBlockingPane variant

* blocking zellij run: wait forever mechanism

* blocking zellij run: thread NotificationEnd as needed  until TerminalPane (tests not compiling)

* blocking zellij run: update cli

* blocking zellij run: add command

* blocking zellij run: finish implementation

* fix tests

* e2e test and close_on_exit fixes

* fmt

* fix e2e tests

* fix plugin tests</content>
</entry>
</feed>
