Link.__deepcopy__ silently drops collision geometry (coal pickling limitation)
维护者通常 2 天内回复
还没有人认领这个 Issue。
评估
调研方向
使用 --tb=long 运行 test_ERobot.py,然后运行 test_Link.py::TestDHLink::test_copy。跟踪从新建的 DHLink 到 coal CollisionObject 的属性链,经过 Link 或 Robot 的共享状态。完成的标志是移除非预期的共享引用或将其改为弱引用,并且目标 copy test 在不丢失无关几何体的情况下执行 warning path。
由索引模型根据 Issue 内容生成。
描述
Migrated from tech-debt.md (deleted, see repo history via git log -- tech-debt.md).
Link.__deepcopy__ silently drops coal CollisionObject instances because the coal library doesn't support pickling. The current workaround warns at runtime when shapes are lost.
Root cause: a fresh DHLink can reach the coal objects of an unrelated URDF robot through shared class-level state in Link or Robot (exact attribute TBD). This means:
- Copied DH links that happen to run after URDF robot tests lose nothing (DH links have no collision shapes), so the warning path is never exercised in isolation.
- If the shared reference is ever followed for other purposes (iteration, serialisation) it could cause similar failures or unexpected aliasing.
Proper fix: obtain the full deepcopy traceback with --tb=long when running test_ERobot.py followed by test_Link.py::TestDHLink::test_copy, trace which attribute chain connects the fresh DHLink to a coal object, and remove or weak-ref that shared state.
- 主要语言
- C++
- 星标
- 3.5k
- 派生
- 630
- 平均合并
- 2 天 9 分钟
- 30 天内合并 PR
- 27
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
petercorke/robotics-toolbox-python 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 68/100
petercorke/robotics-toolbox-python#709 ·
维护者通常 2 天内回复
-
coriolis() and Robot.copy().rne() fail for URDF/ETS robots: copied links keep their original parent可能已有人在做 @huxiaoyi-ovo 于 1 天前认领。 未关闭bug
难度 3/5 1-2 天 新手友好度 25/100
petercorke/robotics-toolbox-python#730 · 1 条评论 ·
维护者通常 2 天内回复
-
bug
难度 4/5 3-5 天 新手友好度 35/100
petercorke/robotics-toolbox-python#729 ·
维护者通常 2 天内回复
-
paycap crashes for robots with n != 6 and its docstring does not match its behaviour可能已有人在做 @huxiaoyi-ovo 于 1 天前认领。 未关闭bug
难度 4/5 3-5 天 新手友好度 18/100
petercorke/robotics-toolbox-python#728 · 1 条评论 ·
维护者通常 2 天内回复
-
Docs: clarify ROS support; decide on the stub ROS backend可能已有人在做 @rin-katsuragi 于 1 天前认领。 未关闭Docs needed
难度 2/5 1-3 小时 新手友好度 58/100
petercorke/robotics-toolbox-python#727 · 1 条评论 ·
维护者通常 2 天内回复
查看 petercorke/robotics-toolbox-python 的全部 Issue
相似的 Issue
-
bug derived types format I/O medium priority semantics
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
Incorrect Link in README.md可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭
难度 1/5 1 小时以内 新手友好度 95/100
flameshot-org/flameshot#4996 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 64/100
utopia-rise/godot-jvm#1004 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
维护者通常 3 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
维护者通常 1 天内回复