Commit graph

898 commits

Author SHA1 Message Date
Tim Abell
686b980a0f
Merge 1f035a8d6d into 7e7aadc207 2026-05-20 14:36:32 +01:00
Tim Abell
1f035a8d6d
Stop project panel from over-expanding on focus
Focus previously switched the box from Size to Weight: 2, giving the
panel ~2/7 of the side area regardless of how many rows it had. That
also ignored Gui.ExpandFocusedSidePanel — every other side panel only
expands on focus when accordion mode is on.

Route the project box through the same accordionBox helper as the
others. Stays fitted to content normally; expands on focus only when
the user opted in.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 12:22:13 +01:00
Tim Abell
fb6f7fd380
Size project panel to fit its rows when unfocused
Previously hard-coded to Size: 3 (one visible row) on the assumption
there was only ever one project. With profile pseudo-projects you can
have several rows, but they were hidden until you focused the panel.

Sizes to Len()+2 (rows plus borders), clamped to [3, 8] so the
single-project case is unchanged and a project with many profiles
can't squeeze out the other side panels.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 11:44:19 +01:00
Tim Abell
9545538106
Add docker-compose profile support
Implements the design captured in docs/adr/0001-docker-compose-profile-support.md
(jesseduffield/lazydocker#423). Profiles render as pseudo-projects in the
project panel; selecting one filters the services and containers panels to
the services that activate with that profile, and Up/Down/Restart on the
selection use docker compose --profile X invocations.

Key choices:

- Profile is a flag on Project (IsProfile bool), not a new type. Avoids a
  generic-type split across the SideListPanel and CommandObject.

- Reuse existing command templates (Up, Down, DownWithVolumes, Restart,
  AllLogs, DockerComposeConfig). NewCommandObject appends --profile X when
  a profile context is set, so no separate UpProfile/DownProfile/... family
  is needed. Adds a new Restart template (master had no project-level
  restart at all).

- Discovery via 'docker compose config --profiles' and
  'docker compose --profile X config --services', cached on DockerCommand
  for the session. Soft-fails on error (logs once, caches empty) so the UI
  degrades to "no profile rows" rather than popping an error.

- Per-profile service filtering uses the local project and the profile's
  service set (default services + profile-X services, per docker semantics).

- No new keybinding for project/profile restart in this PR; handler exists
  for follow-up discussion.

- New unit tests cover NewCommandObject --profile injection, GetProfiles
  caching, GetProfileServices caching, and the soft-fail path.

fixes: https://github.com/jesseduffield/lazydocker/issues/423

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 14:48:50 +01:00
Tim Abell
9d1c7bcbd8
Set mise go version to 1.26.3
Latest golang from https://mise.jdx.dev/
2026-05-19 14:48:50 +01:00
Tim Abell
c0ff1bccfd
Add plan for profile support
This Architecture Decision Record was generated following trying out the
stale PR that attempted to add profiles that didn't work for me and was
conflicted with latest master. The ADR/plan was generated by discussion
with claude code. Seems like a reasonable approach to me.
2026-05-19 12:27:45 +01:00
Jesse Duffield
7e7aadc207
Merge pull request #797 from jesseduffield/support-p-flag
Support -p flag again
2026-04-19 12:50:06 +10:00
Jesse Duffield
f5ff116af9 Use IsProjectScoped at remaining call sites + add test
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>
2026-04-19 12:47:30 +10:00
Jesse Duffield
3974f6fec1 Support -p flag and DRY up code 2026-04-19 12:16:55 +10:00
Jesse Duffield
697cd441aa Add some claude stuff 2026-04-19 12:16:43 +10:00
Jesse Duffield
9134abeefd
Merge pull request #776 from jesseduffield/copilot/disable-forced-project-view
Hide project/services panels when not in a docker-compose project directory
2026-04-19 11:55:51 +10:00
Jesse Duffield
8106125441
Merge pull request #795 from ddibiasi/copilot/disable-forced-project-view
Fixed forced project view
2026-04-19 11:55:00 +10:00
Daniel Dibiasi
b17d474148
Fixed forced project view 2026-04-16 09:23:12 +02:00
copilot-swe-agent[bot]
e3c1c8630a Hide project/services panels when not in a docker-compose project
Co-authored-by: jesseduffield <8456633+jesseduffield@users.noreply.github.com>
2026-03-15 22:26:03 +00:00
copilot-swe-agent[bot]
ebce4fc631 Initial plan 2026-03-15 22:20:36 +00:00
Jesse Duffield
2ebe3848d6
Merge pull request #774 from jesseduffield/better-project-support
Improve projects support
2026-03-15 14:55:35 +11:00
Jesse Duffield
b65137addf Add claude settings file 2026-03-15 14:53:48 +11:00
Jesse Duffield
26ce871368 Improve projects support 2026-03-15 14:53:48 +11:00
Jesse Duffield
577797d9ed
Merge pull request #744 from jesseduffield/fix-version-lock
Fix version lock issue
2026-01-17 17:14:40 +11:00
Jesse Duffield
3c9d134d05 Fix version lock issue 2026-01-17 17:03:34 +11:00
Jesse Duffield
f4fc3669ca
Merge pull request #716 from ManManavadaria/bugfix/index-out-of-range-713
Fix index out of range panic using containerID fallback (#713)
2025-12-20 09:44:26 +11:00
Jesse Duffield
322e10dcb5 Use even newer Go version 2025-12-20 09:39:26 +11:00
Jesse Duffield
3580e04b8d Use new go version 2025-12-20 09:32:38 +11:00
Jesse Duffield
b38db60ead Use new setup-go version 2025-12-20 09:25:03 +11:00
ManManavadaria
43db69da00 Fix panic: validate Names slice length and use containerID as container name if Names slice is empty in container summary 2025-11-27 19:54:53 +05:30
Jesse Duffield
78edbf3d2e
Merge pull request #706 from nickspaargaren/upgrade-go-version-1.23
Upgrade Go version from 1.21 to 1.23 in Dockerfile
2025-11-15 14:01:07 +11:00
Nick Spaargaren
753c0269d7 Upgrade Go version from 1.21 to 1.23 in Dockerfile 2025-11-14 13:32:29 +01:00
Jesse Duffield
4137d216aa
Merge pull request #703 from jesseduffield/fix-docker-api
fix: Update Docker client to support API version 1.52
2025-11-14 21:23:17 +11:00
Jesse Duffield
826f0293f1 Fix types 2025-11-14 21:20:28 +11:00
Jesse Duffield
c7b58683ae Fix CI 2025-11-14 21:03:38 +11:00
Jesse Duffield
5e0aeec310 run go mod vendor 2025-11-14 20:59:29 +11:00
Jesse Duffield
992c138844 Clean up 2025-11-14 20:59:23 +11:00
Md. Asaduzzaman
c8d2fbdfdc fix: Update Docker client to support API version 1.52
- 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.
2025-11-12 08:49:01 +06:00
Jesse Duffield
f023b42c89
Add Subble job ad 2025-10-29 21:58:38 +11:00
Jesse Duffield
123af388b0 Add subble job ad 2025-10-29 21:56:08 +11:00
Jesse Duffield
3314ecb66c
Updated README.md
Updated the image source for the Warp logo in the README.
2025-10-11 15:51:02 +11:00
Jesse Duffield
4e2f26b21e
Update README.md
Updated image widths for Warp, Tuple, and Subble.
2025-09-06 17:11:19 +10:00
Jesse Duffield
8a1975ef4a
Update README.md 2025-09-06 17:08:36 +10:00
Jesse Duffield
4332656606 Add Subble image 2025-09-06 17:07:12 +10:00
Jesse Duffield
99bf41c873
Update README.md 2025-09-06 17:04:26 +10:00
Jesse Duffield
587bbbf4b5 Change warp logo explicitly 2025-09-06 17:04:10 +10:00
Jesse Duffield
46400c4d32
Update README.md 2025-09-06 17:01:58 +10:00
Jesse Duffield
8ee57bffaf Add tuple png 2025-09-06 16:59:05 +10:00
Jesse Duffield
bedde4a037
Merge pull request #564 from viviannevilar/patch-1
Update Config.md: location of the config in windows
2024-12-22 21:43:29 +11:00
Jesse Duffield
07558afdc8
Merge pull request #605 from A11Might/readme-add-manual-install
readme add manual install part
2024-12-22 21:40:08 +11:00
Jesse Duffield
1178381e00
Merge pull request #599 from A11Might/feat-show-panel-number
Show jump panel keybindings in panel titles
2024-12-22 21:37:21 +11:00
Jesse Duffield
c45bdea3a0
Merge pull request #540 from peauc/feature/issue-522-add-number-like-lazygit
Add navigation with numbers
2024-12-22 21:26:21 +11:00
kohath
15677ac3d2 readme add manual install part 2024-12-07 22:04:56 +08:00
kohath
b8a3ca1550 Show jump panel keybindings in panel titles 2024-11-25 21:27:27 +08:00
Jesse Duffield
be05115352
Merge pull request #568 from thaJeztah/update_docker_27.1
go.mod: github.com/docker/docker, docker/cli v27.1.1
2024-11-23 17:24:22 +11:00