Releases: kubecolor/kubecolor
v0.5.1
What's Changed
We now serve DEB & RPM repositories! See https://kubecolor.github.io/setup/install/#deb for more info.
This release only contains dependency updates and changes to our releases.
New features
Dependencies
- Bump the all group with 2 updates by @dependabot in #212
- Bump k8s.io/apimachinery from 0.32.1 to 0.32.2 in the all group by @dependabot in #214
- Update to Go 1.23.6 by @applejag in #215
- Bump github.com/google/go-cmp from 0.6.0 to 0.7.0 in the all group by @dependabot in #217
- Bump the all group with 2 updates by @dependabot in #218
- Bump github.com/spf13/viper from 1.20.0 to 1.20.1 in the all group by @dependabot in #223
- Update Go to 1.24.2 by @applejag in #227
Non-functional changes
- Move test-cluster to test/cluster by @applejag in #222
- Use draft releases when releasing new versions by @applejag in #228
- Merge CI workflows into the same workflow file by @applejag in #231
- Change generated config docs by @applejag in #233
- Add CODEOWNERS by @applejag in #232
- Added labeler by @applejag in #237
Full Changelog: v0.5.0...v0.5.1
v0.5.0
What's Changed
Smaller release than v0.4.0, but still contains some nice bugfixes and a few but useful features.
New features
- Colorize
kubectl diff
by @Marcel2603 in #196 - Colorize
kubectl apply --server-side
by @applejag in #210
Bug fixes
- Fixed negative tz offsets in time regex by @guppy0130 in #174
- Fixed 'kubectl version -o yaml' indentation by @applejag in #182
- Fixed --output=name using table coloring by @applejag in #181
- Fixed missing output from YAML & JSON printers, and YAML multiline support by @applejag in #180
- Fixed 'DEBU' not being read as debug log level by @applejag in #185
- Fixed completion of flag values (with equal sign, as in:
--namespace=...
) by @applejag in #208
Dependencies
- Bump k8s.io/apimachinery from 0.31.0 to 0.31.1 in the all group by @dependabot in #183
- Bump k8s.io/apimachinery from 0.31.1 to 0.31.2 in the all group by @dependabot in #189
- Bump codecov/codecov-action from 4 to 5 in the all group by @dependabot in #193
- Bump k8s.io/apimachinery from 0.31.2 to 0.31.3 in the all group by @dependabot in #197
- Update Go to 1.23.4 by @applejag in #206
- Bump k8s.io/apimachinery from 0.31.3 to 0.32.0 in the all group by @dependabot in #205
- Bump github.com/invopop/jsonschema from 0.12.0 to 0.13.0 in the all group by @dependabot in #211
Non-functional changes
- Fixed govulncheck workflow by @applejag in #176
- Fix internal/cmd/configdoc after color refactor by @applejag in #200
- Improved debug log printing for multiline strings & slices by @applejag in #209
New Contributors
- @guppy0130 made their first contribution in #174
- @Marcel2603 made their first contribution in #196
Full Changelog: v0.4.0...v0.5.0
v0.4.0
What's Changed
Big new release! Back in v0.3.0 we introduced themes. This time around, we have some more new features and a lot of added colorization of a of kubectl subcommands.
A huge thanks to everyone involved! ❤️
New features
-
Paging: Pipe output through pager by @lennartack in #122, #144
Controlled by the new flags:
--paging=auto
(alsoKUBECOLOR_PAGING
environment variable) enables paging on subcommands that supports it (e.gkubectl get pods
, while paging is always disabled forkubectl get pods --watch
)--no-paging
is an alias for--paging=never
, useful for overriding value from config or environment variable--pager="less -RF"
(alsoPAGER
orKUBECOLOR_PAGER
environment variables) sets pager command
-
Inject kubecolor flags into shell completions by @applejag in #132
Means when you have bash, zsh, fish, or PowerShell completions set up and press Tab to complete your flags, then kubecolor's additional flags will now also show up:
$ kubecolor --kubeco<TAB><TAB> --kubecolor-stdin -- Read command input from stdin or file instea --kubecolor-theme -- Set kubecolor theme preset, e.g dark or ligh --kubecolor-version -- Print the kubecolor version and then exit. --kubeconfig -- Path to the kubeconfig file to use for CLI r
-
Added colorization:
-
Colorize
kubecolor --help
help text by @applejag in #129Before After -
Colorize
kubecolor logs
(instead of just single-colored) by @applejag in #157, #168Exciting feature that should make log tailing much easier.
Before After Compared to all other parsing techniques we use in kubecolor, this feature contains the most heuristic based approach. What we're trying to accomplish is parsing and colorizing any possible log formats. If you have some log formats that are weirdly colorized, then please report them as bug reports and we'll have a closer look into them.
It's able to quite well handle JSON logs, logfmt formatted logs, and klog logs (commonly used in operators). However it's not great at dealing with multiline logs like some of Elasticsearch's logs, and sometimes the colors can become quite overwhelming on long log messages.
-
Colorize "verb based output" by @applejag in #154, #162, #161
Generalized the
kubectl apply
logic so we could use it on a lot of subcommands with a similar output where the general output structure is:"resource-name"
+"verb"
This includes subcommands:
kubectl create
kubectl delete
kubectl drain
kubectl expose
kubectl patch
kubectl rollout pause
kubectl rollout restart
kubectl rollout resume
kubectl rollout undo
kubectl scale
kubectl uncordon
-
-
Inject kubecolor version into 'kubectl version' by @applejag in #133
We have had the
--kubecolor-version
flag for a while. But you will now also see kubecolor's version in the regularkubectl version
output.$ kubecolor version --client Client Version: v1.31.0 Kustomize Version: v5.4.2 Kubecolor Version: v0.4.0 $ kubecolor version --client --output yaml clientVersion: buildDate: "1980-01-01T00:00:00Z" compiler: gc gitCommit: 9edcffcde5595e8a5b1a35f88c421764e575afce gitTreeState: archive gitVersion: v1.31.0 goVersion: go1.22.6 major: "1" minor: "31" platform: linux/amd64 kubecolorVersion: v0.4.0 kustomizeVersion: v5.4.2
This is a rare case where we actually change the output of a command. All other subcommand's outputs solely add colors while intending to keep the text identical.
-
Colorize multiple statuses (e.g node
Ready,SchedulingDisabled
) by @applejag in #158Before After -
Colorize "No resources found" by @applejag in #164
Before After -
Colorize stderr logs using "kubectl logs" logic by @applejag in #166
Sometimes
kubectl
writes output to stderr, such as when using the--v 6
flag. Previously this used a simple logic of printing it in full red if it started with the word "error", or uncolored otherwise.That "uncolored otherwise" has now been replaced with using the same log parsing and coloring as has been introduced for the
kubectl logs
subcommand. -
Added colored kubecolor debug logs by @applejag in #169
Kubecolor has had its own logs since its beginning, such as if it fails to find a
kubectl
executable to run or if an environment variable has an invalid value. But ironically, they have always been uncolored.This is now fixed :)
Bug fixes
-
BREAKING: Fixed KUBECOLOR_CONFIG targeting directory instead of file by @applejag in #145
While being a breaking change, this feature never worked as intentional to begin with. Apologies for the issue.
-
Fix --force-colors, and adds --force-colors=truecolor override support by @applejag in #127
-
Fix kubectl plugins with dashes not being detected as plugins by @larsgerber in #110
-
Skip pager integration if no default can be found by @applejag in #126
-
Don't exit immediately when pager exits by @lennartack in #139
Docs
-
Removed docs in favor of GitHub Pages by @applejag in #150
Visit https://kubecolor.github.io/setup/install/ to see our new documentation site where information is way easier to navigate than our formerly lengthy repository README.
-
Added sample screenshot for KUBECOLOR_OBJ_FRESH by @applejag in #128
Dependencies
- Update to Go 1.22.5 by @applejag in #147
- Bump github.com/spf13/viper from 1.18.2 to 1.19.0 in the all group by @dependabot in #140
- Bump goreleaser/goreleaser-action from 5 to 6 in the all group by @dependabot in #141
- Bump docker/build-push-action from 5 to 6 in the all group by @dependabot in #142
Non-functional changes
v0.3.3
v0.3.2
Changelog
- fc00697 Added coloring of Init:Error type statuses (#116)
- 7c84588 Change autocomplete documentation for fish (#114)
- 3d2be40 Fixed kubecolor adding colors in completions (#118)
- 7d31f14 Fixed kubecolor coloring
oc rsh
(#117 8000 ) - 9a6fda5 KUBECOLOR_LIGHT_BACKGROUND was working in reverse (#119)
- 53b973e VSCode settings & fixed typos (#115)
- 6d0fdc9 adding automation for HomeBrew update (#120)
v0.3.1
Changelog
This version is mostly a re-release of v0.3.0.
We had a bug in the initial release of v0.3.0, and after a quick patch v0.3.0 was deleted and released again.
However re-tagging a release has proven problematic due to the cascade of package maintainers being too fast and too good at keeping their repos up-to-date. So even though the re-tagging of v0.3.0 was done just an hour after its initial release, we still had multiple package registries like Termux using the initial (and buggy) v0.3.0.
Therefore, here is v0.3.1, which is the same code as the newer re-tagged v0.3.0.
We will avoid re-tagging in the future. Thank you all for your patience ❤️
v0.3.0
Changelog
- 044d580 Add corpus-based testing (with auto-updating) (#90)
- e49db73 Added YAML config jsonschema (#83)
- d864b4d Added docs on PowerShell completions (#82)
- b8eb64c Added docs on
oc
usage (#81) - 1401f48 Added docs on running via Docker (#84)
- 6a569b2 Added flag
--kubecolor-stdin
to allow piping in output (#101) - 876edfe Added note on AUR package to README (#53)
- 97ca3e3 Added note on version compatibility (#68)
- 345ca07 Added pre-0.0.21 color preset (#80)
- d4b08f4 Color for value of env from, annotation and label (#55)
- ef7d418 Color status for
OOMKilled
and<nil>
(#52) - d3f2d2a Colorize
kubectl events
command (#66) - 2a39126 Colorize duration & quantity (#92)
- 9b8b036 Custom coloring (#59)
- c2ccc0b Disable CGO in release binaries (#105)
- dd2adb7 Fix GLIBC_2.34 version error in Docker image (#93)
- ccd6341 Fix output from 'apply --dry-run=server' (#58)
- fc3b9ee Fix some coloring issues from the coloring PR (#79)
- 475a125 Generate screenshots using charmbracelet/freeze (#102)
- a564bda Kubecolor is now available on Termux (Android) (#89)
- 6bdf9b8 Kubecolor is now available on homebrew-core (#103)
- 0c0e834 Patch to output kubectl stdout when using plain
- 5e93987 Skip pushing Docker image for each merge (#85)
- 372526d Update Go to 1.22.2 (#95)
- ef77d2e Update defaults in config docs in README (#96)
- 62859f6 Update to Go 1.22 (#56)
- 1324c08 Update to Go 1.22.1 (#78)
- bc07e7b Updated default theme (#91)
- 82cae11 [Feature] Color-blind themes (#86)
- 9497a50 add test coverage report (#62)
- 6a32eed removed debug
- 0805484 update codeconv and add token
v0.2.2
v0.2.1
v0.2.0
Changelog
- aaaf986 Added dependabot (#31)
- e81c575 Added green status coloring (#25)
- 7b47f30 Added new screenshots (#30)
- adfadd8 Bump the all group with 1 update (#32)
- b55d00a Colorize some describe statuses (#24)
- c82abb9 Enable Go test workflow (#26)
- e6e7035 Fixed describe table detection (#23)
- 64fdd88 Move main package to repo root (#22)
- 76a110a Redesign table parsing (#29)