Skip to content

docs: separate contributor toolchain pin from consumer MSRV - #14

Draft
freefcw wants to merge 1 commit into
mainfrom
cursor/document-consumer-msrv-8186
Draft

docs: separate contributor toolchain pin from consumer MSRV#14
freefcw wants to merge 1 commit into
mainfrom
cursor/document-consumer-msrv-8186

Conversation

@freefcw

@freefcw freefcw commented Sep 5, 2026

Copy link
Copy Markdown
Owner

Why

The README said "Building requires the toolchain pinned in rust-toolchain.toml: Rust 1.97.1", which reads as a requirement for anyone depending on the crates. It is only the contributor pin (inherited from upstream Zed). The published fc-gpui* crates declare no rust-version, so the real consumer floor is set by the dependency tree, and it is considerably lower than 1.97.1.

What changed

Docs only — no manifest, feature, or code changes. The paragraph now distinguishes the contributor pin from the verified consumer floor and names the two dependencies that set it.

How the floor was verified

On a Linux x86_64 VM, cargo check against crates.io fc-gpui = "0.9.0" (default features and --no-default-features plus font-kit,wayland,x11) across stable toolchains:

rustc Result First error
1.85.0 fail rustc 1.85.0 is not supported by the following packages: (24 deps); forced with a 1.85-compatible lock: error[E0658]: let expressions in this position are unstable in ar_archive_writer 0.5.1
1.86.0 fail same resolution error
1.87.0 fail same; forced build hits the same ar_archive_writer E0658
1.88.0 fail cosmic-text@0.19.0 requires rustc 1.89 (no semver-compatible downgrade exists)
1.89.0 mixed ordered-float@5.5.0 requires rustc 1.90 under resolver v2; passes under resolver v3, which selects ordered-float 5.4.0
1.90.0 pass
1.94.0 / 1.95.0 / 1.96.0 / 1.97.0 / 1.97.1 pass

ordered-float 5.5.0 is the only thing standing between 1.89 and 1.90, and 1.90 holds regardless of the consumer's resolver version, so it is the honest number to publish.

Upstream Zed pins rust-toolchain.toml to the same 1.97.1 and likewise declares no rust-version on crates/gpui (published as gpui 0.2.2); this change keeps the fork aligned with that convention while telling consumers the truth.

Open in Web Open in Cursor 

Sourcery 总结

明确贡献者和使用者所需的不同 Rust 工具链版本。

增强功能:

  • 明确 Rust 1.97.1 是贡献者使用的工具链版本,而 Rust 1.90.0 是针对 crate 使用者验证的最低版本;最低版本由依赖项决定。

文档:

  • 更新 README,区分贡献者工具链固定版本与使用者 Rust 版本要求,并记录由依赖项决定的最低版本。
Original summary in English

Summary by Sourcery

Clarify the separate Rust toolchain requirements for contributors and consumers.

Enhancements:

  • Clarify that Rust 1.97.1 is the contributor toolchain while Rust 1.90.0 is the minimum verified version for crate consumers, with the floor determined by dependencies.

Documentation:

  • Update the README to distinguish the contributor toolchain pin from the consumer Rust version requirement and document the dependency-based floor.

The README implied consumers needed the pinned 1.97.1 toolchain. Verified
on Linux that the published crates check cleanly from 1.90.0 upward, so
state the consumer floor and where it comes from.

Co-authored-by: freefcw <freefcw@gmail.com>
@sourcery-ai

sourcery-ai Bot commented Sep 5, 2026

Copy link
Copy Markdown
审查者指南(小型 PR 中折叠显示)

审查者指南

更新 README,将 Rust 1.97.1 贡献者工具链与已验证的 Rust 1.90.0 使用者最低版本区分开来,并解释依赖约束以及未声明包级 rust-version 的原因。

文件级变更

变更 详细信息 文件
澄清贡献者工具链固定版本与 crate 使用者所需最低 Rust 版本之间的区别。
  • 确定 rust-toolchain.toml 中固定的贡献者工具链为 Rust 1.97.1。
  • 记录已验证的使用者最低版本为 Rust 1.90.0。
  • 说明使用者最低版本要求来自 ordered-float 5.5.0 和 cosmic-text 0.19,而不是该 fork 自身的代码。
  • 声明 fc-gpui 包有意省略 rust-version,这与上游 Zed 的惯例一致。
README.md

提示和命令

与 Sourcery 互动

  • 触发新的审查: 在拉取请求中评论 @sourcery-ai review
  • 继续讨论: 直接回复 Sourcery 的审查评论。
  • 根据审查评论生成 GitHub issue: 回复审查评论,请 Sourcery 根据该评论创建 issue。你也可以使用 @sourcery-ai issue 回复审查评论,以根据该评论创建 issue。
  • 生成拉取请求标题: 在拉取请求标题的任意位置写入 @sourcery-ai,即可随时生成标题。你也可以在拉取请求中评论 @sourcery-ai title,以便随时生成或重新生成标题。
  • 生成拉取请求摘要: 在拉取请求正文中任意位置写入 @sourcery-ai summary,即可在你指定的位置随时生成 PR 摘要。你也可以在拉取请求中评论 @sourcery-ai summary,以便随时生成或重新生成摘要。
  • 生成审查者指南: 在拉取请求中评论 @sourcery-ai guide,以便随时生成或重新生成审查者指南。
  • 解决所有 Sourcery 评论: 在拉取请求中评论 @sourcery-ai resolve,以解决所有 Sourcery 评论。如果你已经处理完所有评论且不想再看到它们,此功能非常有用。
  • 驳回所有 Sourcery 审查: 在拉取请求中评论 @sourcery-ai dismiss,以驳回所有现有的 Sourcery 审查。如果你想从头开始新的审查,这尤其有用——别忘了评论 @sourcery-ai review 来触发新的审查!

自定义你的使用体验

访问你的控制面板以:

  • 启用或禁用审查功能,例如 Sourcery 生成的拉取请求摘要、审查者指南等。
  • 更改审查语言。
  • 添加、删除或编辑自定义审查说明。
  • 调整其他审查设置。

获取帮助

Original review guide in English
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

Updates the README to separate the Rust 1.97.1 contributor toolchain from the verified Rust 1.90.0 consumer floor, explaining the dependency constraints and the absence of a package-level rust-version declaration.

File-Level Changes

Change Details Files
Clarify the distinction between the contributor toolchain pin and the minimum Rust version for crate consumers.
  • Identify Rust 1.97.1 as the contributor toolchain pinned in rust-toolchain.toml.
  • Document Rust 1.90.0 as the verified consumer floor.
  • Attribute the consumer floor to ordered-float 5.5.0 and cosmic-text 0.19 rather than the fork's own code.
  • State that the fc-gpui packages intentionally omit rust-version, matching upstream Zed's convention.
README.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant