The services panel's Logs tab renders the underlying container's logs
through the same code path, so bind 't' there as well and include the
tail value in the services context cache key so the tab re-renders
when the value changes. Also switch the tail-limiting writer to
SetContent so the clear+rewrite is atomic and the view never renders
empty in between.
Previously the selected --tail value only trimmed the initial log
snapshot; since logs are followed live afterwards, the view kept
growing unbounded past the chosen count. Now the main panel writer
re-truncates to the last N lines on every new line, so e.g. tail: 50
always shows only the 50 most recent lines. Behavior when
following logs to stdout (the 'm' keybinding) is unchanged, matching
plain `docker logs --tail N -f` there.
Lets you press 't' while focused on the containers panel to cycle
through common --tail presets (all, 50, 100, 200, 500) for the
selected container's Logs tab, instead of only being able to set a
fixed value via the logs.tail config option. The current value is
shown in the Logs tab subtitle.
Addresses Copilot review comments on PR #797:
- Containers panel title, initial focus selection, and the local-project
inclusion in getDiscoveredProjects all switched from
InDockerComposeProject to IsProjectScoped, so they stay consistent
when -p is given outside a compose dir.
- Adds TestIsProjectScoped table test covering all four combinations.
InDockerComposeProject is still used at the call sites that genuinely
require a compose dir (renderDockerComposeConfig, GetServices).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Upgrade Docker client from v27.1.1 to v28.5.2
- Update hardcoded API version from 1.25 to 1.52
- Enable API version negotiation for better compatibility
- Fix compatibility with Docker Engine 29.0.0 and newer versions
Resolves issues with lazydocker not working with latest Docker clients.
A la lazygit, we can now navigate between panels using numbers
(1,2,3,4,5,6,7)
Add translation for number navigation
reformat
oops
fix translation case & generate docs
pluralize networks
Turns out that upon switching to a subprocess we were cancelling ALL
periodic tasks, which includes re-rendering the main view ever 30ms.
This completely broke our log rendering and meant that it only updated
when an event occurred
Previously we separately obtained container details every second,
meaning there was a second of not knowing whether a given container was
using a TTY or not, and that meant we were using the wrong streaming
method for logs, which led to a black screen.
This commit fix a Portuguese word gender typo "todos as redes" as "redes" (network) represent a female portuguese word. The word "todos" (all) which is a male word should be "todas" (female) to follow the word "as" to match the gender.