diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0af3edf7..68fee49a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,18 +23,16 @@ jobs: - '1.10' - '1' - 'pre' + - 'nightly' os: - ubuntu-latest - macOS-latest - windows-latest - arch: - - x64 steps: - uses: actions/checkout@v4 - uses: julia-actions/setup-julia@v2 with: version: ${{ matrix.version }} - arch: ${{ matrix.arch }} show-versioninfo: ${{ matrix.version == 'nightly' }} - uses: actions/cache@v4 env: diff --git a/src/parcel_snoop_inference.jl b/src/parcel_snoop_inference.jl index 6862ef4d..e6360acf 100644 --- a/src/parcel_snoop_inference.jl +++ b/src/parcel_snoop_inference.jl @@ -31,7 +31,12 @@ isROOT(node::InferenceTimingNode) = isROOT(node.mi_timing) getroot(node::InferenceTimingNode) = isdefined(node.parent, :parent) ? getroot(node.parent) : node # Record instruction pointers we've already looked up (performance optimization) -const lookups = Dict{Union{UInt, Core.Compiler.InterpreterIP}, Vector{StackTraces.StackFrame}}() +const lookups = if isdefined(Core.Compiler, :InterpreterIP) + Dict{Union{UInt, Core.Compiler.InterpreterIP}, Vector{StackTraces.StackFrame}}() +else + # Julia 1.12+ + Dict{Union{UInt, Base.InterpreterIP}, Vector{StackTraces.StackFrame}}() +end lookups_key(ip) = ip lookups_key(ip::Ptr{Nothing}) = UInt(ip)