Update serde, so TiKV can update time crate#390
Update serde, so TiKV can update time crate#390ti-chi-bot[bot] merged 12 commits intotikv:masterfrom
Conversation
Signed-off-by: Yang Zhang <yang.zhang@pingcap.com>
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughUpdated crate edition to "2024", loosened the Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches🧪 Generate unit tests (beta)
Tip Issue Planner is now in beta. Read the docs and try it out! Share your feedback on Discord. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In `@Cargo.toml`:
- Line 61: The serde dependency is pinned to an exact version via version =
"=1.0" which normalizes to =1.0.0; update the serde entry in Cargo.toml (the
serde dependency line) to remove the '=' prefix so the version becomes a
caret-compatible range (e.g., version = "1.0") and keep features = ["derive"]
unchanged so the resolver can pick any compatible 1.0.x release.
Signed-off-by: Yang Zhang <yang.zhang@pingcap.com>
336c273 to
67bdcf6
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In `@Cargo.toml`:
- Around line 5-6: You bumped the Cargo.toml edition to "2024" while setting
rust-version = "1.85.0"; confirm this change aligns with project and downstream
requirements by running full CI and integration tests, validate downstream
consumers (e.g., TiKV) can consume 2024-edition artifacts, scan the codebase for
patterns affected by the edition (search for unsafe functions that may trigger
the unsafe_op_in_unsafe_fn lint and uses of impl Trait with inferred lifetime
captures), and if any incompatibilities appear either fix the offending code or
revert the edition change until downstream/CI compatibility is ensured.
| edition = "2024" | ||
| rust-version = "1.85.0" |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
# First, let's look at the repository structure
git ls-files | head -20Repository: tikv/raft-engine
Length of output: 360
🏁 Script executed:
# Check for 'gen' usage as identifier
rg -n --type rust '\bgen\b' -g '!target/' -g '!Cargo.toml' | head -50Repository: tikv/raft-engine
Length of output: 250
🏁 Script executed:
# Check unsafe fn patterns that might be affected by 2024 edition changes
ast-grep --pattern 'unsafe fn $NAME($$$) { $$$ }'Repository: tikv/raft-engine
Length of output: 1751
🏁 Script executed:
# Let's also check the full Cargo.toml context
cat Cargo.tomlRepository: tikv/raft-engine
Length of output: 2619
Edition jump from 2018 → 2024 is significant — confirm this aligns with project requirements and downstream consumers.
The 2024 edition introduces breaking changes across two skipped editions (2021 and 2024), including the unsafe_op_in_unsafe_fn lint and new lifetime capture rules in impl Trait. The MSRV of 1.85.0 correctly matches the 2024 edition requirement.
A code scan shows no gen identifier conflicts (only .gen() method calls from rand) and no problematic unsafe function patterns, so the migration itself appears sound. Ensure CI passes cleanly with this edition, and verify compatibility with downstream consumers like TiKV that will depend on 2024-edition artifacts.
🤖 Prompt for AI Agents
In `@Cargo.toml` around lines 5 - 6, You bumped the Cargo.toml edition to "2024"
while setting rust-version = "1.85.0"; confirm this change aligns with project
and downstream requirements by running full CI and integration tests, validate
downstream consumers (e.g., TiKV) can consume 2024-edition artifacts, scan the
codebase for patterns affected by the edition (search for unsafe functions that
may trigger the unsafe_op_in_unsafe_fn lint and uses of impl Trait with inferred
lifetime captures), and if any incompatibilities appear either fix the offending
code or revert the edition change until downstream/CI compatibility is ensured.
Signed-off-by: Yang Zhang <yang.zhang@pingcap.com>
Signed-off-by: Yang Zhang <yang.zhang@pingcap.com>
Signed-off-by: Yang Zhang <yang.zhang@pingcap.com>
Signed-off-by: Yang Zhang <yang.zhang@pingcap.com>
Signed-off-by: Yang Zhang <yang.zhang@pingcap.com>
Signed-off-by: Yang Zhang <yang.zhang@pingcap.com>
.github/workflows/rust.yml
Outdated
| EXTRA_CARGO_ARGS: '--verbose' | ||
| # The macOS nightly CI job was removed because grpc-io 0.13 fails with the | ||
| # macOS C++ toolchain. Without a committed Cargo.lock, we cannot pin | ||
| # grpc-io to 0.10 as a workaround. |
There was a problem hiding this comment.
Can't we pin grpc-io in Cargo.toml?
There was a problem hiding this comment.
grpc-io is not a direct dependency. raft-engine depend on kvproto which then depend on grpc-io, I don't think we want to pin it in this repo
There was a problem hiding this comment.
I will pin grpc-io there
Signed-off-by: Yang Zhang <yang.zhang@pingcap.com>
|
/approve |
Signed-off-by: Yang Zhang <yang.zhang@pingcap.com>
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: Connor1996, LykxSassinator The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
[LGTM Timeline notifier]Timeline:
|
Summary by CodeRabbit
Chores
Style
Tests / Refactor