LoweredCodeUtils does not compose with CassetteOverlay

未关闭
#80 4 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
25/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
julia
领域
compilers

调研方向

使用 Revise,通过所示的 @MethodTable PropCheckOverlay 和 @overlay 示例复现该失败。从 LoweredCodeUtils/src/signatures.jl:168 开始,其中 identify_framemethod_calls 报告缺少 :PropCheckOverlay 键。完成的标准是:此 overlay 用法能够与 CassetteOverlay 组合,且不会出现所报告的 KeyError。

由索引模型根据 Issue 内容生成。

描述

┌ Error: Failed to revise /home/keno/.julia/dev/InterfaceSpecs/src/engines/property.jl
│   exception =
│    KeyError: key :PropCheckOverlay not found
│    Stacktrace:
│     [1] getindex
│       @ Base ./dict.jl:504 [inlined]
│     [2] identify_framemethod_calls(frame::JuliaInterpreter.Frame)
│       @ LoweredCodeUtils ~/.julia/packages/LoweredCodeUtils/30gbF/src/signatures.jl:168
└ @ Revise ~/.julia/packages/Revise/7HQ7u/src/packagedef.jl:725

while trying to use revise.

@MethodTable PropCheckOverlay

@overlay PropCheckOverlay function forall(prop, T)
    instances = try
        nonoverlay(testinstances, T)
    catch err
        @error "Error during test instance creation" err=err
        rethrow(err)
    end
    for x in instances
        prop(x)()
    end
    return
end
主要语言
Julia
星标
19
派生
16
平均合并
2 天 21 小时
30 天内合并 PR
2

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

JuliaDebug/LoweredCodeUtils.jl 的其他 Issue

查看 JuliaDebug/LoweredCodeUtils.jl 的全部 Issue

相似的 Issue

更多 Julia Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。