Rerun 0.27 迁移指南:Intel Mac 支持终止、Python 3.10 底线与 TimePanel 游标选项移除
2026/9/16 11:48:34 网站建设 项目流程

Rerun 0.27 迁移指南:Intel Mac 支持终止、Python 3.10 底线与 TimePanel 游标选项移除

【免费下载链接】rerunVisualize, query, and stream to train on multimodal robotics data.项目地址: https://gitcode.com/GitHub_Trending/re/rerun

本篇指南面向所有从 Rerun 0.26 升级到 0.27 的开发者,系统梳理该版本引入的三项破坏性变更:Intel(x86)版 macOS 官方支持终止、Python SDK 最低版本提升到 3.10,以及TimePanel蓝图上的*_cursor选项移除。读完本文,你将明确每一项变更对现有工程的具体影响、如何检测自身环境是否受影响,以及对应的升级与替代方案。

迁移背景:0.27 的三项破坏性变更总览

Rerun 0.27(迁移文档见 docs/content/reference/migration/migration-0-27.md)是 0.26 之后的一次升级,共带来三项需要开发者注意的破坏性变更:

变更项影响范围核心结论
终止 Intel Mac 官方支持Python wheels 与预构建产物PyPI 上的 wheels 不再包含 x86_64 macOS 二进制,可自行从源码构建
Python 最低版本提升至 3.10Python SDKPython 3.9 已停止支持,不再提供对应 wheel
TimePanel*_cursor选项移除Python SDK 蓝图 APIsequence_cursorduration_cursortimestamp_cursor在 0.27.0 中无直接替代

需要说明的是,这份迁移指南属于 Rerun 早期版本的历史文档。当前仓库的迁移索引页 docs/content/reference/migration.md 中说明:0.34 及以后的破坏性变更与迁移指南已并入 CHANGELOG.md,0.33 及之前的版本仍然由独立的migration-0-X-Y.md系列文档覆盖。

终止 Intel Mac 官方支持:谁受影响、如何应对

变更内容

从 0.27 开始,Rerun 不再为 Intel(x86)架构的 macOS 提供官方支持。这直接意味着:

  • PyPI 上发布的 Python wheels 不再包含 Intel Mac 的二进制;
  • 其他预构建产物(如 rerun-cli、Rerun.app 等)同样不再提供 x86_64 macOS 版本。

这一决定在源码仓库的发布与 CI 脚本中可以得到印证:

  • scripts/ci/build_and_upload_wheels.py 中,构建目标架构仅保留x86_64aarch64两个分支,且 macOS 目标统一映射为apple-darwin
  • scripts/ci/sync_release_assets.py 中列出的 macOS 预构建产物(如librerun_c-{tag}-aarch64-apple-darwin.arerun-cli-{tag}-aarch64-apple-darwinRerun-{tag}-aarch64-apple-darwin.app.tar.gz)均已切换为aarch64-apple-darwin命名,不再出现x86_64-apple-darwin的对应条目。

如何判断你是否受影响

在终端执行以下命令即可确认本机架构:

uname -m
  • 输出为x86_64:说明你使用的是 Intel Mac,升级到 0.27 后将无法通过pip install rerun-sdk直接获取到包含二进制扩展的 wheel;
  • 输出为arm64(Apple Silicon,如 M1/M2/M3 系列):不受此项变更影响,可继续使用官方预构建产物。

备选方案一:升级到 Apple Silicon

如果条件允许,迁移到 Apple Silicon(arm64)机器是最省事的路径。Rerun 对 Apple Silicon 的官方支持依然完整,BUILD.md 中还专门给出提示:在 Apple Silicon Mac 上从源码构建时,应确认rustc -vV输出的 host 为aarch64-apple-darwin,否则执行:

rustup set default-host aarch64-apple-darwin && rustup install 1.96.0

备选方案二:从源码构建

Intel Mac 用户仍可以自行从源码构建 Rerun,官方在迁移文档中明确保留了这条路径,完整的构建指引见仓库根目录的 BUILD.md。构建的基本前提包括:

  1. 安装 Rust 工具链,并确认cargo --version输出与 rust-toolchain 文件指定的版本一致(当前仓库要求 1.96.0);
  2. 安装pixi包管理器(仓库的 pixi.toml 定义了统一的环境与任务);
  3. 克隆仓库后先运行pixi run ensure-pyo3-build-cfg生成 PyO3 配置文件,否则直接调用cargo会报failed to open PyO3 config file错误(详见 BUILD.md)。

从源码构建意味着你不再依赖 PyPI 的预编译产物,因此不受 0.27 停止分发 Intel Mac 二进制的限制。

Python SDK:最低支持版本提升至 3.10

0.27 同时移除了对 Python 3.9 的支持,原因在于 Python 3.9 已到达官方生命周期终点(end-of-life),不再维护。这意味着:

  • pip install rerun-sdk时,Python 3.9 环境将无法解析到 0.27 及之后版本的 wheel;
  • 官方文档建议如有必要,将 Python 升级到 3.10 或更高版本。

这一约束在当前仓库的 Python SDK 工程配置中仍然有效:rerun_py/pyproject.toml 中声明:

requires-python = ">=3.10"

升级检查清单

  1. 确认当前 Python 版本:
python3 --version
  1. 若版本低于 3.10,使用系统包管理器、pyenv或 conda 安装 Python 3.10+;
  2. 在全新虚拟环境中重新安装 SDK:
python3 -m venv .venv && source .venv/bin/activate pip install --upgrade rerun-sdk
  1. 运行python -c "import rerun; print(rerun.__version__)"验证安装结果。

Python SDK:TimePanel*_cursor选项移除

变更内容

0.27 中,TimePanel蓝图上的三个游标选项被整体移除:

  • sequence_cursor
  • duration_cursor
  • timestamp_cursor

官方迁移文档明确说明:这三个选项在 0.27.0 中没有直接替代品。也就是说,如果你此前通过蓝图 API 设置过这些选项,升级后必须删除相关代码,且不能期望以等价参数直接平移。

从源码看TimePanel蓝图当前的字段构成

当前仓库中TimePanel对应的蓝图类型定义为 panel_blueprint.def.rs(这是 Rerun 类型定义文件,会被re_types_builder解析以生成 Rust、Python 与 C++ 绑定)。可以看到TimePanelBlueprint现存的字段为:

字段组件类型说明
statePanelState面板当前状态(展开/折叠等)
timelineTimelineName面板当前所在的时间线
playback_speedPlaybackSpeed时间播放速度倍率
fpsFps每秒帧数,仅适用于序列(sequence)时间线
play_statePlayState当前是暂停、播放还是跟随状态
loop_modeLoopMode时间循环方式,默认关闭
time_selectionAbsoluteTimeRange在时间面板上选中的时间范围

对照可见,sequence_cursorduration_cursortimestamp_cursor三个字段确实已从蓝图定义中彻底移除。TimePanel面板本身在 crates/panels/re_time_panel/src 中实现,其公共类型(TimePanelTimePanelSourceTimePanelItem等)的导出见 crates/panels/re_time_panel/src/lib.rs。

迁移操作建议

  1. 全局搜索你的代码,定位所有sequence_cursorduration_cursortimestamp_cursor的使用点;
  2. 删除这些选项的设置代码——它们已不存在于 0.27 的 API 中,保留会导致编译或运行时报错;
  3. 如果依赖"定位到某个时间点播放"之类的行为,需自行评估新的替代方案,例如:
    • 使用play_state控制播放/暂停/跟随状态;
    • 使用time_selectionloop_mode配合实现区间循环播放;
    • 或在数据侧记录自定义时间轴信息,通过timeline字段切换视图所关注的时间线。

升级总检清单

完成 0.26 → 0.27 的升级后,建议逐项核对:

  • uname -m确认 macOS 架构;Intel Mac 用户已决定升级硬件或改用源码构建(见 BUILD.md);
  • python3 --version确认 Python ≥ 3.10;
  • 代码中已无sequence_cursor/duration_cursor/timestamp_cursor引用;
  • 在全新虚拟环境中验证pip install rerun-sdkimport rerun正常。

本文所涉及的迁移文档与实现证据均可在当前仓库中找到:迁移原文见 docs/content/reference/migration/migration-0-27.md,更早/更晚版本的迁移指南可从 docs/content/reference/migration.md 索引进入。

【免费下载链接】rerunVisualize, query, and stream to train on multimodal robotics data.项目地址: https://gitcode.com/GitHub_Trending/re/rerun

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询