George Jenkins
7a7b328ba5
Merge pull request #32319 from mmorel-35/revive
...
feat(linters): add new revive rules for better code quality
2 months ago
Matthieu MOREL
16787d65f5
feat(linters): add new revive rules for better code quality
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2 months ago
Matthieu MOREL
9662fdd73b
refactor: enable several checks from gocritic
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2 months ago
Terry Howe
d262c7ca79
Merge pull request #32296 from mmorel-35/gocritic-singleCaseSwitch
...
chore: fix emptyStringTest, nestingReduce and singleCaseSwitch checks issues from gocritic
2 months ago
Matthieu MOREL
96b315f188
chore: fix emptyStringTest, nestingReduce and singleCaseSwitch checks issues from gocritic
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2 months ago
Matthieu MOREL
4ade4a5495
test: replace assert.Contains with assert.ErrorContains for better error handling
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2 months ago
Matthieu MOREL
f34ad6c337
chore: fix several checks issues from testifylint
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2 months ago
Matthieu MOREL
07259ecc86
chore: fix several checks issues from gocritic
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2 months ago
Will Noble
61bba7c659
Apply suggestions
...
Co-authored-by: George Jenkins <gvjenkins@gmail.com>
Signed-off-by: Will Noble <4642422+ouillie@users.noreply.github.com>
3 months ago
Will Noble
d887779b9b
Properly format the extra field in gzipped packages
...
Signed-off-by: Will Noble <author@will.party>
3 months ago
Matthieu MOREL
34cfdfdbe5
chore: enable contextcheck, fatcontext and noctx linters
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
3 months ago
George Jenkins
253da5106a
Merge pull request #32171 from mmorel-35/empty-len
...
Fix empty and len testifylint violations across test files
3 months ago
George Jenkins
81d6f04c82
Merge pull request #30867 from mmorel-35/gocritic
...
chore: fix deprecatedComment issues from gocritic
3 months ago
Terry Howe
59b57c5c31
Merge pull request #31885 from mmorel-35/whitespace
...
chore: fix whitespace linter
3 months ago
Matthieu MOREL
488c4a805d
Fix empty and len testifylint violations across test files
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
4 months ago
Evans Mungai
d374e823b2
Merge pull request #32086 from mmorel-35/error-is-as
...
testifylint: enable error-is-as and error-nil rules
4 months ago
Robert Sirchia
6c3f397d2c
Merge pull request #32122 from quyentonndbs/chore/lint-deprecations-comment-typo
...
docs: fix typo in deprecated API godoc
4 months ago
Kai Tanaka
2032ec5cba
docs: fix 'than'->'that' typo in deprecatedAPIError godoc
...
Signed-off-by: Kai Tanaka <275430420+quyentonndbs@users.noreply.github.com>
4 months ago
box4wangjing
432fc8a217
refactor: use slices.Backward to simplify the code
...
Signed-off-by: box4wangjing <box4wangjing@outlook.com>
4 months ago
George Jenkins
19b3656306
Bump to version v4.2 ( #32102 )
...
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
4 months ago
Matthieu MOREL
f8ba28bb17
testifylint: enable error-is-as and error-nil rules
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
5 months ago
Matheus Pimenta
a4a9cc7a31
Upgrade Go to 1.26, Kubernetes to 1.36, kstatus to 1.1
...
Signed-off-by: Matheus Pimenta <matheuscscp@gmail.com>
5 months ago
George Jenkins
4bd9e90aa0
Merge pull request #30811 from mmorel-35/testifylint
...
chore: fix bool-compare issues from testifylint
5 months ago
Evans Mungai
a8e249714f
Update pkg/chart/common/util/coalesce.go
...
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
5 months ago
Johannes Lohmer
52fc971da3
test(values): Add test for nil cleanup in partially overridden subchart maps
...
Signed-off-by: Johannes Lohmer <jojo.dev@lohmer.com>
5 months ago
Johannes Lohmer
00638773d1
fix(values): do not copy chart-default nils into coalesced values
...
Only user-supplied nils should survive coalescing. Chart-default nils
defaults, not just user overrides. This caused:
- %!s(<nil>) in templates using Bitnami common.secrets.key (#31919 )
- pluck fallbacks returning nil instead of falling through to globals
(#31971 )
Fixes #31919
Fixes #31971
Signed-off-by: Johannes Lohmer <jojo.dev@lohmer.com>
5 months ago
Johannes Lohmer
5cb4e7d992
test(values): add tests for subchart nil value regressions
...
Three test cases that cover the regression scenarios introduced
by the #31644 nil preservation fix:
- subchart default nils should be cleaned up
when parent doesn't set those keys (#31919 )
- user-supplied null should erase subchart defaults (#31919 )
- subchart default nil should not shadow global values via pluck (#31971 )
Tests are expected to fail until the regression is fixed.
Signed-off-by: Johannes Lohmer <jojo.dev@lohmer.com>
5 months ago
George Jenkins
f7c4d75574
Merge commit from fork
...
fix: Chart dot-name path bug
5 months ago
Anmol Virdi
de58531ca7
Minor nit: fix import instructions to comply with canonical import paths
...
Signed-off-by: Anmol Virdi <anmolvirdi2000@gmail.com>
5 months ago
Matthieu MOREL
7edfff33eb
chore: fix unnecessary-format issues from revive
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
6 months ago
Matthieu MOREL
071558d69f
chore: fix bool-compare issues from testifylint
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
6 months ago
Matthieu MOREL
83a0138172
chore: fix deprecatedComment issues from gocritic
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
6 months ago
Matthieu MOREL
1e0f702f00
chore: fix whitespace linter
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
6 months ago
George Jenkins
e3b4808450
Merge pull request #31874 from mmorel-35/perfsprint-pkg-4-fb6db58
...
chore(pkg): fix perfsprint linter issues part 4
6 months ago
George Jenkins
610547b570
Merge pull request #31873 from mmorel-35/perfsprint-pkg-5-3294250
...
chore(pkg): fix perfsprint linter issues part 5
6 months ago
George Jenkins
60184996e5
fix: Chart dot-name path bug
...
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
6 months ago
George Jenkins
df8e0301ed
Merge pull request #31878 from mmorel-35/perfsprint-pkg-3-39f7a9f
...
chore(pkg): fix perfsprint linter issues part 3
6 months ago
Matthieu MOREL
1d2d63cc43
chore(pkg): enable perfsprint linter
...
#### Description
enable perfsprint linter in pkg/cmd
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
7 months ago
Matthieu MOREL
63f03c0f5c
chore(pkg): enable perfsprint linter
...
#### Description
enable perfsprint linter in pkg/action
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
7 months ago
Matthieu MOREL
c25c988cfb
chore(pkg): enable perfsprint linter
...
#### Description
enable perfsprint linter in pkg/registry
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
7 months ago
Mads Jensen
36cb3a2fe9
Replace unneeded use of t.Fatalf with t.Fatal
...
Signed-off-by: Mads Jensen <atombrella@users.noreply.github.com>
7 months ago
Matthieu MOREL
5b6c6bbfc7
fix: enable nolinlint linter
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
7 months ago
George Jenkins
be7cdb69e5
Merge pull request #31806 from mmorel-35/errorlint-pkg-4-15f432a
...
fix(pkg): errorlint linter
7 months ago
George Jenkins
92b64e87ad
chore: fixes
...
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
7 months ago
Evans Mungai
ee018608f6
fix: handle OCI digest algorithm prefix in chart downloader ( #31601 )
...
* fix: strip digest algorithm prefix before hex decoding
OCI references with tag+digest (e.g., chart:1.0@sha256:abc...) failed with "invalid byte" error because the sha256: prefix was passed to hex.DecodeString().
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
* Add cmd test for OCI references with tag+digest
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
* Move oci registry push result to a struct
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
* Review comments from PR review
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
* Fix failing test
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
---------
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
7 months ago
Matt Farina
794372e317
Merge pull request #31816 from mmorel-35/errorlint-pkg-7-6d6a660
...
fix(pkg): errorlint linter
7 months ago
Joe Julian
947b429cdd
Merge pull request #31801 from mmorel-35/modernize-pkg-4-062b248
...
chore(pkg): fix modernize linter
7 months ago
Joe Julian
78f5af72be
Merge pull request #31802 from mmorel-35/modernize-pkg-5-a3c8fdb
...
chore(pkg): fix modernize linter
7 months ago
Joe Julian
7f9703fe22
Merge pull request #31811 from mmorel-35/errorlint-pkg-3-39f7a9f
...
fix(pkg): errorlint linter
7 months ago
Matthieu MOREL
259f76a849
fix(pkg): errorlint linter
...
errorlint linter in pkg/cmd
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
7 months ago
Matthieu MOREL
6d1490ed1e
fix(pkg): errorlint linter
...
#### Description
errorlint linter in pkg/cmd
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
7 months ago
Matthieu MOREL
4d0ae7f33a
fix(pkg): errorlint linter
...
#### Description
errorlint linter in pkg
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
7 months ago
Matthieu MOREL
4330bdea04
fix(pkg): errorlint linter
...
#### Description
errorlint linter in pkg
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
7 months ago
Matthieu MOREL
5cc2e55714
chore(pkg): fix modernize linter
...
#### Description
fix modernize linter in pkg/chart/v2/lint/rules
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
7 months ago
Matthieu MOREL
ba38159313
chore(pkg): fix modernize linter
...
#### Description
fix modernize linter in pkg/strvals
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
7 months ago
Matthieu MOREL
111d4e6e0e
chore(pkg): fix modernize linter
...
#### Description
fix modernize linter in pkg/chart/common/util
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
7 months ago
Evans Mungai
5b78ee8dff
Merge pull request #31644 from banjoh/em/fix-nil-values
...
fix(values): preserve nil values when chart default is empty map
7 months ago
Evans Mungai
0298b2ffd0
Remove refactorring changes from coalesce_test.go
...
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
8 months ago
Evans Mungai
b8937ad192
Fix import
...
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
8 months ago
Evans Mungai
a333bbaf27
Update pkg/chart/common/util/coalesce_test.go
...
Co-authored-by: George Jenkins <gvjenkins@gmail.com>
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
8 months ago
Mads Jensen
2d6d9c09c4
Replace reflect.Ptr with reflect.Pointer
...
The reflect package has a go:fix annotation for Ptr = Pointer.
Signed-off-by: Mads Jensen <atombrella@users.noreply.github.com>
8 months ago
Branch Vincent
c6d9a5bdc2
build: set kube version via `debug.BuildInfo`
...
Signed-off-by: Branch Vincent <branchevincent@gmail.com>
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
9 months ago
Mads Jensen
a490bb3c20
Use errors.Is to check for io.EOF and gzip.ErrHeader
...
In GoLang, using the == operator to check for a certain error will not
unwrap the error chain, and therefore may hide the problem.
Signed-off-by: Mads Jensen <atombrella@users.noreply.github.com>
9 months ago
Robert Sirchia
4cf7d8d025
Merge pull request #31641 from wangjingcun/main
...
chore: fix some comments to improve readability
9 months ago
Evans Mungai
3416dd5f21
Fix lint warning
...
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
9 months ago
Evans Mungai
679f051980
Preserve nil values in chart already
...
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
9 months ago
Evans Mungai
292fe70219
fix(values): preserve nil values when chart default is empty map
...
Only delete nil user values when overriding a non-nil chart default.
When chart has empty map or no default for a key, preserve user's nil.
| Scenario | Result |
|----------|--------|
| User sets `baz: ~`, chart has `baz: "value"` | Key deleted |
| User sets `baz: ~`, chart has empty map `{}` | Nil preserved |
| User sets `baz: ~`, chart has `baz: ~` | Nil preserved |
Fixes #31643
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
9 months ago
Terry Howe
d28853e206
Merge pull request #31624 from atombrella/feature/sloglint
...
Enable the `sloglint` linter
9 months ago
wangjingcun
858cf31583
chore: fix some comments to improve readability
...
Signed-off-by: wangjingcun <wangjingcun@aliyun.com>
9 months ago
Mads Jensen
a18e59e465
Enable the sloglint linter
...
Signed-off-by: Mads Jensen <atombrella@users.noreply.github.com>
9 months ago
George Jenkins
3165e5463a
Merge pull request #31528 from benoittgt/31423-git-version
...
fix: preserve vendor suffixes in KubeVersion.GitVersion
9 months ago
Matt Farina
ff35414bed
Merge pull request #31546 from benoittgt/31544-nil-pointer
...
fix(lint): prevent segmentation violation on only comment yaml in multidoc
9 months ago
Mads Jensen
6cceead399
Use modernize to use newer Golang features.
...
The rangeint suggestion is faster.
The maps.Copy and slices.Contains are just syntatic sugar.
Signed-off-by: Mads Jensen <atombrella@users.noreply.github.com>
10 months ago
Benoit Tigeot
81d244ca21
fix: prevent segmentation violation on empty yaml in multidoc
...
Fixes: https://github.com/helm/helm/issues/31544
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
10 months ago
Matt Farina
df6aafeeee
Merge pull request #31462 from mattfarina/load-archive
...
Adding a LoadArchive to common loader
10 months ago
Matt Farina
63858b383f
Merge pull request #31535 from mattfarina/bump-4.1
...
bump version to 4.1
10 months ago
Matt Farina
63e060fb05
bump version to 4.1
...
Signed-off-by: Matt Farina <matt.farina@suse.com>
10 months ago
shuv0id
2dc5864f44
fix: add missing context to debug logs
...
Adds chart name to dependency logs, namespace to resource waiting logs,
and confirmation message when all resources are ready.
Addresses #31520
Signed-off-by: shuv0id <110290476+shuv0id@users.noreply.github.com>
10 months ago
Benoit Tigeot
ce273eea48
fix: preserve vendor suffixes in KubeVersion.GitVersion
...
Helm 3.19.0 introduced a regression where vendor-specific suffixes
(e.g., -gke.1245000, -eks-4096722, +) are stripped from
.Capabilities.KubeVersion.GitVersion, breaking charts that detect
managed Kubernetes platforms.
The root cause was using k8sversion.ParseGeneric().String() which
intentionally discards vendor suffixes. The fix stores both the full
version (with vendor suffix) and a normalized version. String() returns
the normalized version for constraint checking (e.g., ">= 1.21.0"),
while Version/GitVersion preserve the full string for template access.
Fixes #31423
Related to #31063 , #31078
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
10 months ago
Scott Rigby
b740071279
Merge pull request #31342 from TerryHowe/chore-remove-mitchellh-dependency-3
...
chore: replace github.com/mitchellh/copystructure
10 months ago
Matt Farina
0f5eda74c1
Adding a LoadArchive to common loader
...
LoadArchive is in the individual loaders for the chart versions.
It is used by SDK users to load a stream rather than a file on
the filesystem. Adding to support SDK users like Flux.
Signed-off-by: Matt Farina <matt.farina@suse.com>
10 months ago
Benoit Tigeot
97b7a1c9ae
Merge branch 'main' into fix-31170-URN
...
Signed-off-by: Benoit Tigeot <benoittgt@users.noreply.github.com>
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
11 months ago
Matt Farina
15300549f0
When time not available, using time.Now
...
Note, when time is not available, the builds are not reproducible.
This problem would only happen when an SDK user is using parts of
the API to build their own tooling. Helm will consistently inject
the dates through the higher level APIs.
Signed-off-by: Matt Farina <matt.farina@suse.com>
11 months ago
Matt Farina
ca8eae9361
Reproducible chart archive builds
...
Building the same chart into an archive multiple times will have
the same sha256 hash.
Perviously, the time in the headers for a file was time.Now() which
changed each time. The time is now collected from the operating
system when the file is loaded and this time is used.
Fixes : #3612
Signed-off-by: Matt Farina <matt.farina@suse.com>
11 months ago
Matt Farina
1da2b0a6d4
Merge pull request #31204 from benoittgt/fix-31202
...
Avoid panic in helm.sh/helm/v3/pkg/chartutil.ValidateAgainstSchema
11 months ago
Matt Farina
37de51428c
Merge pull request #31376 from benoittgt/accept-yaml-yml
...
Do not ignore *.yml file on linting while accepting *.yaml
11 months ago
Benoit Tigeot
06188f9dfe
Add test for isYamlFileExtension functions
...
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
11 months ago
Matt Farina
78cd44bd75
Merge pull request #30712 from gjenkins8/gjenkins/cleanup_lint_template
...
cleanup: Remove extra lint/rules.Template functions
11 months ago
Matt Farina
94bfe9ba12
Move action get metadata to chart interfaces
...
Signed-off-by: Matt Farina <matt.farina@suse.com>
11 months ago
Benoit Tigeot
4a944230ea
Do not ignore *.yml file on linting while accepting *.yaml
...
From : https://github.com/helm/helm/pull/30712/files#r2417446037
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
11 months ago
Terry Howe
ee322a9671
fix: flakey lint test on shuffle
...
Signed-off-by: Terry Howe <terrylhowe@gmail.com>
11 months ago
Terry Howe
bee9c1a108
chore: replace github.com/mitchellh/copystructure
...
Signed-off-by: Terry Howe <terrylhowe@gmail.com>
12 months ago
George Jenkins
efcb5735e5
cleanup: Remove extra lint/rules.Template functions
...
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
12 months ago
Matt Farina
8dc7c57f50
Update the action interfaces for chart apiversions
...
This change is about handling the interfaces to public functions for
different chart apiVersions. The internals are still focused on v2.
This enables v3 to be layered in layer.
Signed-off-by: Matt Farina <matt.farina@suse.com>
12 months ago
Benoit Tigeot
072e2a689a
Extend --skip-schema-validation for lint command
...
When --skip-schema-validation is enabled, the lint command will now skip
JSON schema validation for values.yaml files, allowing charts with schema
validation errors to pass linting when the flag is used.
This addresses the gap where --skip-schema-validation only applied to
templates but not to values files, providing complete schema validation
bypass when needed.
Fixes : #13413
Signed-off-by: Suleiman Dibirov <idsulik@gmail.com>
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
1 year ago
Benoit Tigeot
939fff9cb9
Avoid "panic: interface conversion: interface {} is nil"
...
Closes : #31202
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
1 year ago
Kamil Swiechowski
a645dfb7f8
fix:semverv2 lint test error message
...
Signed-off-by: Kamil Swiechowski <kamil.swiechowski@iprally.com>
1 year ago
Benoit Tigeot
8025a397e6
Ignore duplicated URN in logs
...
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
1 year ago
Benoit Tigeot
03bb62f63d
jsonschema: warn and ignore unresolved URN $ref to match v3.18.4
...
- v3.18.5 switched jsonschema and began resolving external $ref
at compile-time, exposing missing urn handling
(“no URLLoader registered for urn:…”).
- Add urn scheme loader and pluggable URNResolver. If unresolved, log
a warning and return a permissive true schema (back-compat).
- Apply to pkg/chart/v2 and internal/chart/v3 validators. Not sure about
that
Note: external URNs need AddResource/Resolver (the CLI uses --map for
this). Warning may appear twice since both validators run.
Another strategy could be to add the option to import more "external
schema" explicitly but it is another PR. Something similar to `--map`
from jsonschema package
(santhosh-tekuri/jsonschema@ed65924).
Close : #31170
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
1 year ago
Kamil Swiechowski
38d1a7376f
fix: throw warning when chart version is not semverv2
...
Signed-off-by: Kamil Swiechowski <kamil.swiechowski@iprally.com>
1 year ago