* chore(deps): bump bubbletea to v2.0.10, drop the uncloud fork
v2.0.10 carries the upstream fix for terminal capability replies leaking into
the shell (charmbracelet/bubbletea#1801). It skips every query that expects a
reply when input is disabled: the startup probe for synchronized output and
Unicode core, clipboard reads, background, foreground and cursor colour
requests, cursor position reports, and terminal version and termcap queries.
That supersedes the unlabs-dev fork, whose patch covered only the startup
probe, so the replace directive goes away and uncloud tracks upstream again.
The bump on its own does not fix the leak. Bubble Tea skips the queries only
when a program declares that it has no input, and nothing in uncloud declares
that yet. Measured: this tree still leaks "^[[?2026;2$y^[[?2027;0$y" under a
PTY harness. The next commit is what makes the spinners declare it.
Refs: #286, charmbracelet/bubbletea#1801
* chore: fix landing logo shadow
* feat: implement service logs command with colored output and strict ordering
* revert Makefile
* fix after rebase
* move logs command under services with root shortcut
* simplify server options for streaming logs and CLI flags
* refactor ContainerLogs grpc server
* update --tail flag
* minor docker.proto
* refactor client ServiceLogs and ContainerLogs
* move ProxyMachinesContext from api to client pkg
* minor refactor proto Stream
* add api/logs
* implement LogMerger
* fix LogMerger to correctly use semaphore
* increate inflish entries to 100 per stream
* send heartbeats
* refactor ContainerLogs to synchronise Send of entries and heartbeats to the steram
* minor logmerege
* remove ContainerName form ServiceLogEntryMetadata
* refactor ContainerLogs into docker.Service
* detect stalled container logs streams
* update logmerger tests
* fix comment in test
* refactor LogMerger with options
* uc logs: format one or multiple services
* make LogMerger emit heartbeats, emit entries <= watermark, rewrite tests
* update uc logs with new LogMerger
* go mod tidy
* fix after merge
---------
Co-authored-by: Evgenii Orlov <evgenii.orlov@semrush.com>
* feat: Add `uc ps` command to list all containers in the cluster
* Fix indentation
* Improvements to the container state highlights code (use enum, better var naming)
* Add group/sort option by "health"
* Rename `uc ps --group-by` flag to `--sort`. Also, remove `--context` flag.
* Use huh.spinner with standard style/type
* Remove pointless TrimPrefix on container name
* Move machine lookup out of services loop
* Use more efficient `ListServiceContainers`
* Use consistent header other
* Use api.ProxyMachinesContext helper for context to query all machines for service containers
* Make errored MachineServiceContainer entries a warning, not return an error immediately, in `uc ps`
* Use lipgloss table instead of tabwriter for "uc ps" command
* Handle nil metadata in `uc ps` on container when cluster only has one machine