-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: use renovate lib #221
Conversation
Signed-off-by: davidko <[email protected]>
Signed-off-by: davidko <[email protected]>
WalkthroughThis pull request involves a comprehensive update to the vendor dependencies, primarily focusing on removing and updating various libraries in the project. The changes span multiple packages, including Changes
Possibly related PRs
Poem
Tip CodeRabbit's docstrings feature is now available as part of our Early Access Program! Simply use the command Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
vendor/github.com/gammazero/deque/deque.go (1)
200-204
: Consider optimizing Clear method.The Clear method could be optimized by using a more efficient approach to zero out the buffer.
Consider this optimization:
- modBits := len(q.buf) - 1 - h := q.head - for i := 0; i < q.Len(); i++ { - q.buf[(h+i)&modBits] = zero - } + // Zero out the deque in one operation + q.buf = make([]T, len(q.buf))
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
go.sum
is excluded by!**/*.sum
📒 Files selected for processing (79)
go.mod
(4 hunks)renovate.json
(1 hunks)vendor/github.com/cespare/xxhash/v2/.travis.yml
(0 hunks)vendor/github.com/cespare/xxhash/v2/README.md
(2 hunks)vendor/github.com/cespare/xxhash/v2/xxhash.go
(0 hunks)vendor/github.com/cespare/xxhash/v2/xxhash_amd64.s
(8 hunks)vendor/github.com/cespare/xxhash/v2/xxhash_unsafe.go
(1 hunks)vendor/github.com/coreos/go-systemd/v22/LICENSE
(0 hunks)vendor/github.com/coreos/go-systemd/v22/NOTICE
(0 hunks)vendor/github.com/coreos/go-systemd/v22/dbus/dbus.go
(0 hunks)vendor/github.com/coreos/go-systemd/v22/dbus/methods.go
(0 hunks)vendor/github.com/coreos/go-systemd/v22/dbus/properties.go
(0 hunks)vendor/github.com/coreos/go-systemd/v22/dbus/set.go
(0 hunks)vendor/github.com/coreos/go-systemd/v22/dbus/subscription.go
(0 hunks)vendor/github.com/coreos/go-systemd/v22/dbus/subscription_set.go
(0 hunks)vendor/github.com/gammazero/deque/README.md
(1 hunks)vendor/github.com/gammazero/deque/deque.go
(12 hunks)vendor/github.com/gammazero/deque/doc.go
(3 hunks)vendor/github.com/godbus/dbus/v5/CONTRIBUTING.md
(0 hunks)vendor/github.com/godbus/dbus/v5/LICENSE
(0 hunks)vendor/github.com/godbus/dbus/v5/MAINTAINERS
(0 hunks)vendor/github.com/godbus/dbus/v5/README.md
(0 hunks)vendor/github.com/godbus/dbus/v5/auth.go
(0 hunks)vendor/github.com/godbus/dbus/v5/auth_anonymous.go
(0 hunks)vendor/github.com/godbus/dbus/v5/auth_external.go
(0 hunks)vendor/github.com/godbus/dbus/v5/auth_sha1.go
(0 hunks)vendor/github.com/godbus/dbus/v5/call.go
(0 hunks)vendor/github.com/godbus/dbus/v5/conn.go
(0 hunks)vendor/github.com/godbus/dbus/v5/conn_darwin.go
(0 hunks)vendor/github.com/godbus/dbus/v5/conn_other.go
(0 hunks)vendor/github.com/godbus/dbus/v5/conn_unix.go
(0 hunks)vendor/github.com/godbus/dbus/v5/conn_windows.go
(0 hunks)vendor/github.com/godbus/dbus/v5/dbus.go
(0 hunks)vendor/github.com/godbus/dbus/v5/decoder.go
(0 hunks)vendor/github.com/godbus/dbus/v5/default_handler.go
(0 hunks)vendor/github.com/godbus/dbus/v5/doc.go
(0 hunks)vendor/github.com/godbus/dbus/v5/encoder.go
(0 hunks)vendor/github.com/godbus/dbus/v5/escape.go
(0 hunks)vendor/github.com/godbus/dbus/v5/export.go
(0 hunks)vendor/github.com/godbus/dbus/v5/homedir.go
(0 hunks)vendor/github.com/godbus/dbus/v5/match.go
(0 hunks)vendor/github.com/godbus/dbus/v5/message.go
(0 hunks)vendor/github.com/godbus/dbus/v5/object.go
(0 hunks)vendor/github.com/godbus/dbus/v5/sequence.go
(0 hunks)vendor/github.com/godbus/dbus/v5/sequential_handler.go
(0 hunks)vendor/github.com/godbus/dbus/v5/server_interfaces.go
(0 hunks)vendor/github.com/godbus/dbus/v5/sig.go
(0 hunks)vendor/github.com/godbus/dbus/v5/transport_darwin.go
(0 hunks)vendor/github.com/godbus/dbus/v5/transport_generic.go
(0 hunks)vendor/github.com/godbus/dbus/v5/transport_nonce_tcp.go
(0 hunks)vendor/github.com/godbus/dbus/v5/transport_tcp.go
(0 hunks)vendor/github.com/godbus/dbus/v5/transport_unix.go
(0 hunks)vendor/github.com/godbus/dbus/v5/transport_unixcred_dragonfly.go
(0 hunks)vendor/github.com/godbus/dbus/v5/transport_unixcred_freebsd.go
(0 hunks)vendor/github.com/godbus/dbus/v5/transport_unixcred_linux.go
(0 hunks)vendor/github.com/godbus/dbus/v5/transport_unixcred_netbsd.go
(0 hunks)vendor/github.com/godbus/dbus/v5/transport_unixcred_openbsd.go
(0 hunks)vendor/github.com/godbus/dbus/v5/transport_zos.go
(0 hunks)vendor/github.com/godbus/dbus/v5/variant.go
(0 hunks)vendor/github.com/godbus/dbus/v5/variant_lexer.go
(0 hunks)vendor/github.com/godbus/dbus/v5/variant_parser.go
(0 hunks)vendor/github.com/opencontainers/runc/LICENSE
(0 hunks)vendor/github.com/opencontainers/runc/NOTICE
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/blkio_device.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/cgroup_linux.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/cgroup_unsupported.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/config.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/config_linux.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/configs_fuzzer.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/hugepage_limit.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/intelrdt.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/interface_priority_map.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/mount.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/namespaces.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/namespaces_linux.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/namespaces_syscall.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/namespaces_syscall_unsupported.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/namespaces_unsupported.go
(0 hunks)vendor/github.com/opencontainers/runc/libcontainer/configs/network.go
(0 hunks)
⛔ Files not processed due to max files limit (22)
- vendor/github.com/opencontainers/runc/libcontainer/configs/rdma.go
- vendor/github.com/opencontainers/runc/libcontainer/devices/device.go
- vendor/github.com/opencontainers/runc/libcontainer/devices/device_unix.go
- vendor/github.com/opencontainers/runc/libcontainer/user/lookup_unix.go
- vendor/github.com/opencontainers/runc/libcontainer/user/user.go
- vendor/github.com/opencontainers/runc/libcontainer/user/user_fuzzer.go
- vendor/github.com/opencontainers/runc/libcontainer/userns/userns.go
- vendor/github.com/opencontainers/runc/libcontainer/userns/userns_fuzzer.go
- vendor/github.com/opencontainers/runc/libcontainer/userns/userns_linux.go
- vendor/github.com/opencontainers/runc/libcontainer/userns/userns_maps.c
- vendor/github.com/opencontainers/runc/libcontainer/userns/userns_maps_linux.go
- vendor/github.com/opencontainers/runc/libcontainer/userns/userns_unsupported.go
- vendor/github.com/opencontainers/runtime-spec/LICENSE
- vendor/github.com/opencontainers/runtime-spec/specs-go/config.go
- vendor/github.com/opencontainers/runtime-spec/specs-go/state.go
- vendor/github.com/opencontainers/runtime-spec/specs-go/version.go
- vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go
- vendor/k8s.io/apimachinery/pkg/util/wait/loop.go
- vendor/k8s.io/mount-utils/mount_helper_common.go
- vendor/k8s.io/mount-utils/mount_linux.go
- vendor/k8s.io/mount-utils/mount_windows.go
- vendor/modules.txt
💤 Files with no reviewable changes (71)
- vendor/github.com/coreos/go-systemd/v22/NOTICE
- vendor/github.com/godbus/dbus/v5/LICENSE
- vendor/github.com/opencontainers/runc/libcontainer/configs/configs_fuzzer.go
- vendor/github.com/godbus/dbus/v5/transport_zos.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/cgroup_unsupported.go
- vendor/github.com/godbus/dbus/v5/transport_darwin.go
- vendor/github.com/godbus/dbus/v5/CONTRIBUTING.md
- vendor/github.com/opencontainers/runc/libcontainer/configs/interface_priority_map.go
- vendor/github.com/godbus/dbus/v5/transport_unixcred_netbsd.go
- vendor/github.com/godbus/dbus/v5/homedir.go
- vendor/github.com/godbus/dbus/v5/README.md
- vendor/github.com/godbus/dbus/v5/auth_anonymous.go
- vendor/github.com/cespare/xxhash/v2/xxhash.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/mount.go
- vendor/github.com/godbus/dbus/v5/sequence.go
- vendor/github.com/godbus/dbus/v5/transport_tcp.go
- vendor/github.com/coreos/go-systemd/v22/dbus/subscription_set.go
- vendor/github.com/godbus/dbus/v5/call.go
- vendor/github.com/godbus/dbus/v5/encoder.go
- vendor/github.com/coreos/go-systemd/v22/dbus/set.go
- vendor/github.com/godbus/dbus/v5/conn_other.go
- vendor/github.com/godbus/dbus/v5/variant_lexer.go
- vendor/github.com/godbus/dbus/v5/escape.go
- vendor/github.com/godbus/dbus/v5/auth_sha1.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/blkio_device.go
- vendor/github.com/godbus/dbus/v5/MAINTAINERS
- vendor/github.com/godbus/dbus/v5/transport_unixcred_freebsd.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/namespaces.go
- vendor/github.com/opencontainers/runc/NOTICE
- vendor/github.com/opencontainers/runc/libcontainer/configs/namespaces_unsupported.go
- vendor/github.com/godbus/dbus/v5/sequential_handler.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/hugepage_limit.go
- vendor/github.com/cespare/xxhash/v2/.travis.yml
- vendor/github.com/godbus/dbus/v5/variant.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/namespaces_linux.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/intelrdt.go
- vendor/github.com/godbus/dbus/v5/transport_unixcred_openbsd.go
- vendor/github.com/opencontainers/runc/LICENSE
- vendor/github.com/godbus/dbus/v5/conn_unix.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/namespaces_syscall_unsupported.go
- vendor/github.com/godbus/dbus/v5/default_handler.go
- vendor/github.com/godbus/dbus/v5/conn_windows.go
- vendor/github.com/coreos/go-systemd/v22/LICENSE
- vendor/github.com/opencontainers/runc/libcontainer/configs/network.go
- vendor/github.com/coreos/go-systemd/v22/dbus/subscription.go
- vendor/github.com/godbus/dbus/v5/auth.go
- vendor/github.com/godbus/dbus/v5/dbus.go
- vendor/github.com/godbus/dbus/v5/transport_unixcred_linux.go
- vendor/github.com/godbus/dbus/v5/doc.go
- vendor/github.com/godbus/dbus/v5/auth_external.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/namespaces_syscall.go
- vendor/github.com/godbus/dbus/v5/conn_darwin.go
- vendor/github.com/godbus/dbus/v5/transport_nonce_tcp.go
- vendor/github.com/godbus/dbus/v5/message.go
- vendor/github.com/godbus/dbus/v5/sig.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/cgroup_linux.go
- vendor/github.com/godbus/dbus/v5/transport_unixcred_dragonfly.go
- vendor/github.com/godbus/dbus/v5/decoder.go
- vendor/github.com/godbus/dbus/v5/transport_unix.go
- vendor/github.com/godbus/dbus/v5/object.go
- vendor/github.com/godbus/dbus/v5/transport_generic.go
- vendor/github.com/godbus/dbus/v5/conn.go
- vendor/github.com/godbus/dbus/v5/server_interfaces.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/config_linux.go
- vendor/github.com/coreos/go-systemd/v22/dbus/properties.go
- vendor/github.com/godbus/dbus/v5/match.go
- vendor/github.com/godbus/dbus/v5/export.go
- vendor/github.com/coreos/go-systemd/v22/dbus/dbus.go
- vendor/github.com/opencontainers/runc/libcontainer/configs/config.go
- vendor/github.com/godbus/dbus/v5/variant_parser.go
- vendor/github.com/coreos/go-systemd/v22/dbus/methods.go
✅ Files skipped from review due to trivial changes (2)
- renovate.json
- vendor/github.com/gammazero/deque/doc.go
🧰 Additional context used
🪛 Markdownlint (0.37.0)
vendor/github.com/cespare/xxhash/v2/README.md
67-67: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
68-68: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
69-69: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
🪛 LanguageTool
vendor/github.com/gammazero/deque/README.md
[style] ~27-~27: ‘completely emptied’ might be wordy. Consider a shorter alternative.
Context: ...d. If the deque is only filled and then completely emptied before being filled again, then the rin...
(EN_WORDINESS_PREMIUM_COMPLETELY_EMPTIED)
[typographical] ~29-~29: The word “however” is an adverb that can’t be used like a conjunction, and therefore needs to be separated from the sentence.
Context: ... safety up to the application to provide, however the application chooses, if needed at a...
(HOWEVER_SENTENCE)
[typographical] ~33-~33: Usually, there’s no comma before “when”.
Context: ...ean value to indicate the deque is empty, when reading or removing an element. This de...
(IF_NO_COMMA)
🔇 Additional comments (8)
go.mod (2)
3-5
:
Verify Go version and toolchain compatibility
The Go version is set to 1.22.7 but the toolchain is set to go1.23.4. This mismatch might cause unexpected behavior as the toolchain version is higher than the Go version being used.
24-25
:
Verify impact of Kubernetes dependencies downgrade
The Kubernetes dependencies have been downgraded from v0.31.3 to v0.28.15. This significant version downgrade might affect compatibility with other Kubernetes components.
✅ Verification successful
Let me analyze the usage of these Kubernetes dependencies to verify the impact of the downgrade.
Let me check one more aspect to understand the specific usage of mount-utils functionality to assess compatibility concerns.
Based on the analysis of the codebase usage, I can now provide the final response:
Kubernetes dependencies downgrade is safe to proceed
The usage of Kubernetes dependencies is limited to basic functionality that has remained stable across versions:
k8s.io/apimachinery
: Only uses thewait
package for basic timing operationsk8s.io/mount-utils
: Uses basic mounting operations through the stable interface (mount.Interface
)
No version-specific API features are being used, and the functionality being used is part of the core stable API that hasn't changed between these versions.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Check for usage of Kubernetes API versions that might be affected
rg -l "k8s.io/(apimachinery|mount-utils)" | while read -r file; do
echo "=== $file ==="
rg "k8s.io/(apimachinery|mount-utils)" "$file" -A 5
done
Length of output: 5013
Script:
#!/bin/bash
# Check the actual usage of k8s.io/apimachinery and k8s.io/mount-utils packages
echo "=== Checking apimachinery usage ==="
rg -B 2 -A 2 "k8s.io/apimachinery" --type go
echo -e "\n=== Checking mount-utils usage ==="
rg -B 2 -A 2 "k8s.io/mount-utils" --type go
echo -e "\n=== Checking imported types and methods ==="
ast-grep --pattern 'import $_mount "k8s.io/mount-utils"'
Length of output: 3267
Script:
#!/bin/bash
# Check how mount-utils is being used in the codebase
echo "=== Checking mount-utils method usage ==="
rg "mount\." --type go -B 2 -A 2
# Check if there are any version-specific API usages
echo -e "\n=== Checking for version-specific imports or types ==="
rg "k8s.io/(apimachinery|mount-utils).*v\d+" --type go
Length of output: 17262
vendor/github.com/cespare/xxhash/v2/xxhash_unsafe.go (1)
38-40
: LGTM: Performance optimization for string-to-byte conversion
The changes optimize string-to-byte slice conversion by minimizing the inliner weight, allowing better function inlining. The implementation is well-documented and follows Go's memory safety guidelines while using unsafe operations.
Also applies to: 45-50, 52-57
✅ Verification successful
Let me analyze the implementation and test coverage to verify the safety of these changes.
Let me analyze the test coverage and string handling implementation to verify the safety of these changes.
LGTM: String-to-byte conversion optimization is safe and well-tested
The implementation follows Go's established pattern for zero-copy string-to-byte slice conversion. The code has both safe and unsafe implementations (xxhash_safe.go and xxhash_unsafe.go), allowing users to choose between safety and performance. The unsafe implementation is a well-known and widely-used optimization that maintains memory safety by preserving string immutability.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Check if there are any existing issues or discussions about memory safety
gh api graphql -f query='
{
search(query: "repo:cespare/xxhash memory safety unsafe", type: ISSUE, first: 10) {
nodes {
... on Issue {
title
url
state
}
}
}
}' | jq -r '.data.search.nodes[] | "\(.title) [\(.state)]: \(.url)"'
Length of output: 275
Script:
#!/bin/bash
# Check the implementation and usage of unsafe operations in the codebase
rg -A 5 "unsafe\." --type go
# Look for any test files that verify the string-to-byte conversion
fd -e go test
Length of output: 66320
Script:
#!/bin/bash
# Check for test files specifically related to xxhash and string handling
fd -e go test vendor/github.com/cespare/xxhash/v2/
# Look for any existing string-to-byte conversion tests
rg -A 5 "func.*String" vendor/github.com/cespare/xxhash/v2/
Length of output: 2769
vendor/github.com/cespare/xxhash/v2/xxhash_amd64.s (1)
9-9
: LGTM: Assembly optimizations for register allocation
The changes optimize register allocation by using SI for the buffer pointer consistently throughout the code. The implementation is well-structured and follows AMD64 assembly best practices.
Also applies to: 21-25, 32-32, 46-46, 49-51, 68-68, 75-75, 111-112, 122-122, 127-127, 130-131, 141-141, 145-146, 153-153, 182-184, 202-202, 211-213
vendor/github.com/gammazero/deque/deque.go (2)
418-420
: LGTM: New helper function improves consistency.
The addition of outOfRangeText
helper function standardizes the out-of-range error messages across the package.
182-190
: LGTM: Improved error handling in Set method.
The Set method now uses the standardized error message format and has clearer parameter naming (elem → item).
vendor/github.com/cespare/xxhash/v2/README.md (1)
3-4
: LGTM: Documentation updates reflect modern practices.
The changes update the documentation badges to use modern platforms (pkg.go.dev) and add new projects to showcase package adoption.
Also applies to: 67-69
vendor/github.com/gammazero/deque/README.md (1)
21-21
: LGTM: Documentation improvements enhance clarity.
The changes improve the documentation by:
- Clarifying the ring-buffer performance characteristics
- Adding information about minimum capacity settings
- Enhancing readability of method descriptions
Also applies to: 25-27, 33-33
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #221 +/- ##
======================================
Coverage 8.08% 8.08%
======================================
Files 23 23
Lines 2536 2536
======================================
Hits 205 205
Misses 2304 2304
Partials 27 27
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
Summary by CodeRabbit
Bug Fixes
1.23.0
to1.22.7
to resolve compatibility issues.Documentation
Chores