Link.__deepcopy__ silently drops collision geometry (coal pickling limitation)
維護者通常 1 天內回覆
還沒有人認領這個 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.6k
- 分支
- 645
- 平均合併
- 1 天 8 小時
- 30 天內合併 PR
- 144
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
petercorke/robotics-toolbox-python 的其他 Issue
-
plt.pause(0) waits for ever: PoseGraph.plot_scan(pause=0) and Vehicle animation may hang可能已有人在做 @huxiaoyi-ovo 於 2 天前認領。 未關閉bug
難度 2/5 1-3 小時 新手友好度 72/100
petercorke/robotics-toolbox-python#876 · 1 則留言 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 68/100
petercorke/robotics-toolbox-python#709 ·
維護者通常 1 天內回覆
-
tech-debt
難度 4/5 1-2 天 新手友好度 55/100
petercorke/robotics-toolbox-python#898 ·
維護者通常 1 天內回覆
-
LatticePlanner: integer headings, and motion primitives with finer turn steps (design first)可能已有人在做 @kVinsom 於 2 天前認領。 未關閉enhancement help wanted
難度 5/5 一週以上 新手友好度 25/100
petercorke/robotics-toolbox-python#895 · 1 則留言 ·
維護者通常 1 天內回覆
-
tech-debt
難度 5/5 一週以上 新手友好度 18/100
petercorke/robotics-toolbox-python#894 ·
維護者通常 1 天內回覆
查看 petercorke/robotics-toolbox-python 的全部 Issue
相似的 Issue
-
area:decoder area:libnvmpi bug P3
難度 2/5 1-3 小時 新手友好度 78/100
gjrtimmer/jetson-nvmpi#164 ·
-
難度 2/5 1-3 小時 新手友好度 76/100
redis/memtier_benchmark#850 ·
維護者通常 1 天內回覆
-
bug-unconfirmed
難度 1/5 1 小時以內 新手友好度 91/100
維護者通常 1 天內回覆
-
Status: Needs confirmation Status: Needs triage
難度 1/5 1-3 小時 新手友好度 77/100
FreeCAD/FreeCAD#33863 · 1 則留言 ·
維護者通常 1 天內回覆
-
bug
難度 2/5 1-3 小時 新手友好度 68/100
pawelsalawa/letos#5839 ·