Package evaluation to test Expronicon on Julia 1.13.0-DEV.1353 (74c32ec0b5*) started at 2025-10-21T11:20:11.882 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Set-up completed after 8.34s ################################################################################ # Installation # Installing Expronicon... Resolving package versions... Updating `~/.julia/environments/v1.13/Project.toml` [6b7a57c9] + Expronicon v0.10.14 Updating `~/.julia/environments/v1.13/Manifest.toml` [6b7a57c9] + Expronicon v0.10.14 [d8e11817] + MLStyle v0.4.17 Installation completed after 0.91s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... Precompiling package dependencies... Precompilation completed after 40.83s ################################################################################ # Testing # Testing Expronicon Status `/tmp/jl_PKuEBT/Project.toml` ⌅ [4c88cf16] Aqua v0.5.6 ⌃ [e30172f5] Documenter v1.1.1 [6b7a57c9] Expronicon v0.10.14 [d8e11817] MLStyle v0.4.17 [44cfe95a] Pkg v1.13.0 [fa267f1f] TOML v1.0.3 [8dfed614] Test v1.11.0 Status `/tmp/jl_PKuEBT/Manifest.toml` [a4c015fc] ANSIColoredPrinters v0.0.1 [1520ce14] AbstractTrees v0.4.5 ⌅ [4c88cf16] Aqua v0.5.6 [34da2185] Compat v4.18.1 [ffbed154] DocStringExtensions v0.9.5 ⌃ [e30172f5] Documenter v1.1.1 [6b7a57c9] Expronicon v0.10.14 [b5f81e59] IOCapture v0.2.5 ⌅ [682c06a0] JSON v0.21.4 [0e77f7df] LazilyInitializedFields v1.3.0 [d8e11817] MLStyle v0.4.17 [d0879d2d] MarkdownAST v0.1.2 [69de0a69] Parsers v2.8.3 [aea7be01] PrecompileTools v1.3.3 [21216c6a] Preferences v1.5.0 [2792f1a3] RegistryInstances v0.1.0 [0dad84c5] ArgTools v1.1.2 [56f22d72] Artifacts v1.11.0 [2a0f44e3] Base64 v1.11.0 [ade2ca70] Dates v1.11.0 [f43a241f] Downloads v1.7.0 [7b1f6079] FileWatching v1.11.0 [b77e0a4c] InteractiveUtils v1.11.0 [ac6e5ff7] JuliaSyntaxHighlighting v1.12.0 [b27032c2] LibCURL v1.0.0 [76f85450] LibGit2 v1.11.0 [8f399da3] Libdl v1.11.0 [56ddb016] Logging v1.11.0 [d6f4376e] Markdown v1.11.0 [a63ad114] Mmap v1.11.0 [ca575930] NetworkOptions v1.3.0 [44cfe95a] Pkg v1.13.0 [de0858da] Printf v1.11.0 [3fa0cd96] REPL v1.11.0 [9a3f8284] Random v1.11.0 [ea8e919c] SHA v1.0.0 [9e88b42a] Serialization v1.11.0 [6462fe0b] Sockets v1.11.0 [f489334b] StyledStrings v1.11.0 [fa267f1f] TOML v1.0.3 [a4e569a6] Tar v1.10.0 [8dfed614] Test v1.11.0 [cf7118a7] UUIDs v1.11.0 [4ec0a83e] Unicode v1.11.0 [e66e0078] CompilerSupportLibraries_jll v1.3.0+1 [deac9b47] LibCURL_jll v8.16.0+0 [e37daf67] LibGit2_jll v1.9.1+0 [29816b5a] LibSSH2_jll v1.11.3+1 [14a3606d] MozillaCACerts_jll v2025.9.9 [458c3c95] OpenSSL_jll v3.5.4+0 [efcefdf7] PCRE2_jll v10.46.0+0 [83775a58] Zlib_jll v1.3.1+2 [3161d3a3] Zstd_jll v1.5.7+1 [8e850ede] nghttp2_jll v1.67.1+0 [3f19e933] p7zip_jll v17.6.0+0 Info Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. Testing Running tests... Test Summary: | Pass Total Time Method ambiguity | 1 1 9.2s ┌ Warning: `isbindingresolved(m::Module, var::Symbol)` is deprecated, use `true` instead. │ caller = walkmodules(f::Aqua.var"#detect_unbound_args_recursively##0#detect_unbound_args_recursively##1"{Vector{Any}}, x::Module) at exports.jl:5 └ @ Core ~/.julia/packages/Aqua/bqhPD/src/exports.jl:5 Test Summary: | Pass Total Time Unbound type parameters | 1 1 2.4s ┌ Warning: `isbindingresolved(m::Module, var::Symbol)` is deprecated, use `true` instead. │ caller = walkmodules(f::Aqua.var"#undefined_exports##0#undefined_exports##1"{Vector{Symbol}}, x::Module) at exports.jl:5 └ @ Core ~/.julia/packages/Aqua/bqhPD/src/exports.jl:5 Test Summary: | Pass Total Time Undefined exports | 1 1 0.4s Test Summary: | Pass Total Time Compare Project.toml and test/Project.toml | 1 1 0.5s Test Summary: | Pass Total Time Stale dependencies | 1 1 4.8s Test Summary: | Pass Total Time Compat bounds | 1 1 1.9s Test Summary: | Pass Total Time Project.toml formatting | 2 2 0.7s Test Summary: | Pass Total Time @test_expr | 1 1 0.1s 1 + 1-(1 + 1)-(1 * 1)-1 * 12 * 2 - 1 * 1var"##step_1_l#259" = 1 << (var"##plain_locs#258"[1] - 1)module A; endusing A, Busing A: a, bimport A, Bimport A: a, b as cimport A as BA.Bexport a, b"aaaa""aa\"a""aaaa" * "bbbb"A{T} where {T <: B}A{T} where {T <: B, T2 <: C}Tuple{var1, var2} where {var1, var2 <: AbstractArray}A::Bprint_expr(:(function foo(x, y::T; z::Int = 1) where {N, T <: Real}; x + 1; end))struct ABC; a::Int; endmutable struct ABC; a::Int; endstruct ABC; a::Int; b::Int; endprimitive type ABC 32 endabstract type ABC endabstract type ABC <: BCD endbreakfoo(x, y, z)foo(x, y, z...)foo(x, y, z; a, b = 2)@mymacro(begin x + 1; x + 2 end, y, z + 1)in(a, b) .+ 11:10(p::InlinePrinter)(x, xs...; delim = ", ")Base.:(==)(a::Variant, b::Variant)foo() do; endfoo() do x; endfoo() do x, y, z; endfoo() do x, y, z; 1 + 1; 2 + 2 endfoo() do x, y, z...; 1 + 1; 2 + 2 endx -> x + 1(x, y -> x + 1)(x, y) -> (x + 1; y + 1)1 + x + y + z+z-z(1, 2, x)SubArray(var"##8070", (1:length(var"##8070"),))[1, 2, x][1 2 x][1; 2; x][1;; 2;; x]Float64[1, 2, x]Float64[1 2 x][[line] for line in eachsplit(ex, '\n')]Any[[line] for line in eachsplit(ex, '\n')]begin x + 1; y + 1 end:(using $(&name))"aaa$xbbb":x:(1 + 1; 2 + x)begin 1 + 1; 2 + x endlet x = 1; y + 1; endlet x = 1, y; x + 1; y + 1; endfor i in 1:10; x + 1; y + 1; endwhile x < 10; x + 1; y + 1; endif x < 10; x + 1; y + 1; endif x < 10; x + 1; y + 1; else x + 1; y + 1; endif x < 10; x + 1; y + 1; elseif x < 10; x + 1; y + 1; elsex + 1; y + 1; endtry x + 1; y + 1; catch; 1 + 1; endtry x + 1; y + 1; catch e; 1 + 1; endtry x + 1; y + 1; catch e; 1 + 1; finally 2 + 2; end$((1 + 2))$(Expr(:meta, aa, 2))var"##a#112" + 1::var"##a#112" + 1(a, b, c)(;a, b, c = 2)return (;a, b, c = 2)Base.@_inline_meta;Base.@goto abcBase.@label abc#= nothing:0 =# #= nothing:0 =##= nothing:0 =# aa #= nothing:0 =#(a; b)continue1 + 2 2 + xquote 1 + 2 2 + x endquote quote 1 + 2 2 + x end endquote quote quote 1 + 2 2 + x end end endbegin 1 + 2 2 + x endbegin quote quote 1 + 2 2 + x end end endquote quote 1 + 2 2 + x end end quote 1 + 2 2 + x endbegin quote quote 1 + 2 2 + x end end begin quote 1 + 2 2 + x end end endlet x = 1, y x + 1 endlet x = 1, y x + 1 endif a == 1 1 + 1 2 + 2 elseif a == 2 3 + 3 4 + 4 elseif a == 3 5 + 5 else 5 + 5 6 + 6 endif a == 1 1 + 1 2 + 2 else 5 + 5 6 + 6 endif a == 1 1 + 1 2 + 2 endif a == 1 if a == 1 1 + 1 2 + 2 else 1 + 1 end else 5 + 5 6 + 6 endif a == 1 1 + 1 else 5 + 5 endif a == 1 1 + 1 elseif a == 2 3 + 3 elseif a == 3 5 + 5 else 7 + 7 endif a == 1 1 + 1 elseif a == 2 3 + 3 elseif a == 3 5 + 5 endfor i in 1:10 1 + i endfor i in 1:10 #= /home/pkgeval/.julia/packages/Expronicon/m5jPv/test/print/multi.jl:101 =# 1 + i #= /home/pkgeval/.julia/packages/Expronicon/m5jPv/test/print/multi.jl:102 =# endfor (i, j) in zip(1:10, 1:5) #= /home/pkgeval/.julia/packages/Expronicon/m5jPv/test/print/multi.jl:108 =# 1 + i #= /home/pkgeval/.julia/packages/Expronicon/m5jPv/test/print/multi.jl:109 =# endwhile a < 10 1 + a endwhile a < 10 #= /home/pkgeval/.julia/packages/Expronicon/m5jPv/test/print/multi.jl:114 =# 1 + a #= /home/pkgeval/.julia/packages/Expronicon/m5jPv/test/print/multi.jl:115 =# endfunction foo(a, b; c) 1 + 1 endfunction foo(a, b; c) #= /home/pkgeval/.julia/packages/Expronicon/m5jPv/test/print/multi.jl:120 =# #= /home/pkgeval/.julia/packages/Expronicon/m5jPv/test/print/multi.jl:121 =# 1 + 1 endfunction foo(a, b; c) 1 + 1 endfunction foo(a, b; c) 1 + 1 endfoo(a, b; c) = 1 + 1macro foo(x, y::Int) 1 + 1 end@expr begin 1 + 1 end begin 1 + 1 end@__MODULE__quote """ aaaa """ sin(x) = x endquote """ aaaa $aaa """ sin(x) = x end@__MODULE__#= /home/pkgeval/.julia/packages/Expronicon/m5jPv/test/print/multi.jl:172 =# @__MODULE__struct Foo{T} <: Goo a b::Int c::T Foo(x) = new(x) Foo(x, y) = if x + 1 == y new(x, y) else new(x, y, 1) end endstruct Foo{T} <: Goo a b::Int c::T Foo(x) = new(x) Foo(x, y) = if x + 1 == y new(x, y) else new(x, y, 1) end endfoo(x, y) = x + ytry 1 + 1 catch 2 + 2 endtry 1 + 1 catch e 2 + 2 endtry 1 + 1 finally 2 + 2 endtry 1 + 1 catch e 2 + 2 finally 2 + 2 endmodule ABC 1 + 1 2 + 2 endconst X = if a == 1 1 + 1 2 + 2 else 3 + 3 4 + 4 endif x > 100 x + 1 elseif x > 90 x + 2 elseif x > 80 x + 3 else error("some error msg") endfoo() do endfoo() do x endfoo() do x, y, z endfoo() do x, y, z 1 + 1 2 + 2 endfoo() do x, y, z... 1 + 1 2 + 2 endfunction (p::InlinePrinter)(x, xs...; delim = ", ") p(x) for x in xs printstyled(p.io, delim; color = (p.color).keyword) p(x) end endfunction InlinePrinter(io::IO; color::ColorScheme = Monokai256(), line::Bool = false) InlinePrinter(io, color, line, InlinePrinterState()) end@foo "aaaaa" a b c@foo """ aaaaa aaaaa""" a b cfunction foo() msg = quote "expect $($(nargs)) arguments, got $(length(args)) arguments" end endfunction foo() msg = quote """ expect $($(nargs)) arguments , got $(length(args)) arguments""" end endfunction split_lines(ex)::Vector{Any} isa(ex, AbstractString) && return Any[[line] for line in eachsplit(ex, '\n')] endlet x, y x + 1 y + 1 endif x > 0 x + 1 endx < 0if x > 0 x + 1 elseif x > 1 x + 2 elseif x < 0 x + 3 else x + 4 endfunction foo(x, y::T; z::Int = 1) where {N, T <: Real} x + 1 endstruct Foo <: Super x::Int Foo(x::Int) = new(x) Foo(x::Int) = new(x) endmutable struct Goo <: Super x::Int Foo(x::Int) = new(x) Foo(x::Int) = new(x) endfunction compare_expr(lhs, rhs) @switch (lhs, rhs) begin @case (::Symbol, ::Symbol) lhs === rhs @case (Expr(:curly, name, lhs_vars...), Expr(:curly, &name, rhs_vars...)) all(map(compare_vars, lhs_vars, rhs_vars)) @case (Expr(:where, lbody, lparams...), Expr(:where, rbody, rparams...)) compare_expr(lbody, rbody) && all(map(compare_vars, lparams, rparams)) @case (Expr(head, largs...), Expr(&head, rargs...)) isempty(largs) && isempty(rargs) || length(largs) == length(rargs) && all(map(compare_expr, largs, rargs)) @case (::LineNumberNode, ::LineNumberNode) true @case _ lhs == rhs end endtry 1 + 1 catch e rethrow(ex) endtry 1 + 1 finally rethrow(ex) endtry 1 + 1 catch e rethrow(ex) finally 1 + 2 endfunction foo(x, y) 1 + 1 endstruct Moo x::Int end function Moo(; x = 1) Moo(x) end nothing nothingfor i in 1:10, j in 1:10 M[i, j] += 1 endfunction foo(i, j) for i in 1:10 M[i, j] += 1 end end""" foo(i, j) test function. test function. test function. test function. """ function foo(i, j) for i in 1:10 M[i, j] += 1 end end""" foo(i, j) test function. test function. test function. test function. """ function foo(i, j) function goo(x) return x end end(Base.Cartesian).@nexprs 16 k -> begin begin ST1 = U11 * st[b, (i + k)] + U12 * st[b, (i + step_1 + k)] ST2 = U21 * st[b, (i + k)] + U22 * st[b, (i + step_1 + k)] st[b, i + k] = ST1 st[b, i + step_1 + k] = ST2 end endtry ex = include_string(mod, "quote $code end", path) mod.eval(mod.eval(ex)) return nothing finally if prev === nothing delete!(tls, :SOURCE_PATH) else tls[:SOURCE_PATH] = prev end endtry x + 1; y + 1; catch e; 1 + 1; else x; finally 2 + 2; endtry 1 + 1 catch e 2 + 2 else e 3 + 3 finally 4 + 4 endtry 1 + 1 catch e 2 + 2 else e 3 + 3 endTest Summary: | Pass Total Time printings | 13 13 34.6s Test Summary: | Pass Total Time types | 5 5 0.5s function foo(x::Int, y::Type{T}) where {T <: Real} return x endfunction (x, y) return 2 endfunction ($(Expr(:parameters, kw = 2)), x, y) return "aaa" end(x, y) -> sin(x)function ($(Expr(:parameters, kw = 1)), x::Int) endfunction f((x::T); a = 10)::Int where {T} return x endf((x::Int))::Int = xstruct Foo; x::Int; end mutable struct Foo{T, (S <: Real)} <: AbstractArray; a::Float64; function foo(x, y, z); new(1); end; end Core.@doc("Foo\n", struct Foo; "xyz"; x::Int; y; Foo(x) = new(x); 1 + 1; end) begin struct Foo1{N, T}; x::T; end; begin function (Foo1{N, T})(; x = 1) where {N, T}; (Foo1{N, T})(x); end; function (Foo1{N})(; x = 1) where {N}; (Foo1{N})(x); end end; nothing end begin Core.@doc("Foo\n", mutable struct Foo; "abc"; a::Int; b; Foo(x) = new(x); 1 + 1; end); begin function Foo(; a = 1, b); Foo(a, b); end; nothing end; nothing end if foo(x); x = 1 + 1; elseif goo(x); y = 1 + 2; elseerror("abc"); end for i in 1:10; j in 1:20; k in 1:10; 1 + 1; end for i in 1:10; 1 + 1; end mutable struct Mutable const x::Int y::Int endTest Summary: | Pass Total Time analysis | 140 140 14.7s Test Summary: | Pass Total Time transform | 26 26 2.2s @match x begin;1 => true; 2 => sin(x); 3 => begin 1 + 2; 3 + 4 end; end function test_match(x); let ; true; var"##return#306" = nothing; var"##308" = x; if isa(var"##308", Int64); if var"##308" === 1; (var"##return#306" = let ; true; end; @goto(var"####final#307#309")); end; if var"##308" === 2; (var"##return#306" = let ; sin(x); end; @goto(var"####final#307#309")); end; if var"##308" === 3; (var"##return#306" = let ; 1 + 2; 3 + 4; end; @goto(var"####final#307#309")); end; end; (var"##return#306" = let ; nothing; end; @goto(var"####final#307#309")); (error)("matching non-exhaustive, at #= line 0 =#"); @label(var"####final#307#309"); var"##return#306"; end; end WARNING: Method definition test_match(Any) in module Main overwritten. @match x begin 1 => true 2 => sin(x) 3 => begin 1 + 2 3 + 4 end endTest Summary: | Pass Total Time match | 22 22 15.1s Test Summary: | Pass Total Time codegen | 13 13 0.5s contract ├─ [1, 2] ⇒ A └─ [2, 3] ⇒ reshape └─ reshape └─ Areshape └─ Ay ⊕ xx ⊕ zy ⊕ 2x ⊕ z(y ⊕ x) ⊙ (x ⊕ z) ⊙ (x ⊕ z) ⊕ (y ⊕ x) ⊙ (y ⊕ x) ⊙ (x ⊕ z)x ⊙ (y ⊕ x ⊙ (y ⊕ x ⊙ (y ⊕ x ⊙ (y ⊕ x ⊙ (y ⊕ x)))))Add ├─ 1 ⇒ Literal(y) └─ 1 ⇒ Literal(x)Add ├─ 1 ⇒ Literal(x) └─ 1 ⇒ Literal(z)Add ├─ 1 ⇒ Literal(y) ├─ 2 ⇒ Literal(x) └─ 1 ⇒ Literal(z)Add ├─ 1 ⇒ Mul │ ├─ Add │ │ ├─ 1 ⇒ Literal(y) │ │ └─ 1 ⇒ Literal(x) │ ├─ Add │ │ ├─ 1 ⇒ Literal(x) │ │ └─ 1 ⇒ Literal(z) │ └─ Add │ ├─ 1 ⇒ Literal(x) │ └─ 1 ⇒ Literal(z) └─ 1 ⇒ Mul ├─ Add │ ├─ 1 ⇒ Literal(y) │ └─ 1 ⇒ Literal(x) ├─ Add │ ├─ 1 ⇒ Literal(y) │ └─ 1 ⇒ Literal(x) └─ Add ├─ 1 ⇒ Literal(x) └─ 1 ⇒ Literal(z)Mul ├─ Literal(x) └─ Add ├─ 1 ⇒ Literal(y) └─ 1 ⇒ Mul ├─ Literal(x) └─ Add ├─ 1 ⇒ Literal(y) └─ 1 ⇒ Mul ├─ Literal(x) └─ Add ├─ 1 ⇒ Literal(y) ⋮ └─ 1 ⇒ Mul ⋮ Test Summary: | Pass Total Time adt | 87 87 2m45.1s WARNING: Detected access to binding `Expronicon.##docmeta#140` in a world prior to its definition world. Julia 1.12 has introduced more strict world age semantics for global bindings. !!! This code may malfunction under Revise. !!! This code will error in future versions of Julia. Hint: Add an appropriate `invokelatest` around the access to this binding. To make this warning an error, and hence obtain a stack trace, use `julia --depwarn=error`. WARNING: Detected access to binding `ADT.##docmeta#140` in a world prior to its definition world. Julia 1.12 has introduced more strict world age semantics for global bindings. !!! This code may malfunction under Revise. !!! This code will error in future versions of Julia. Hint: Add an appropriate `invokelatest` around the access to this binding. To make this warning an error, and hence obtain a stack trace, use `julia --depwarn=error`. WARNING: Detected access to binding `Tree.##docmeta#140` in a world prior to its definition world. Julia 1.12 has introduced more strict world age semantics for global bindings. !!! This code may malfunction under Revise. !!! This code will error in future versions of Julia. Hint: Add an appropriate `invokelatest` around the access to this binding. To make this warning an error, and hence obtain a stack trace, use `julia --depwarn=error`. WARNING: Detected access to binding `Inline.##docmeta#140` in a world prior to its definition world. Julia 1.12 has introduced more strict world age semantics for global bindings. !!! This code may malfunction under Revise. !!! This code will error in future versions of Julia. Hint: Add an appropriate `invokelatest` around the access to this binding. To make this warning an error, and hence obtain a stack trace, use `julia --depwarn=error`. ┌ Warning: Unable to determine HTML(edit_link = ...) from remote HEAD branch, defaulting to "master". │ Calling `git remote` failed with an exception. Set JULIA_DEBUG=Documenter to see the error. │ Unless this is due to a configuration error, the relevant variable should be set explicitly. └ @ Documenter ~/.julia/packages/Documenter/cxHBW/src/utilities/utilities.jl:711 [ Info: SetupBuildDirectory: setting up build directory. [ Info: Doctest: running doctests. [ Info: Skipped ExpandTemplates step (doctest only). [ Info: Skipped CrossReferences step (doctest only). [ Info: Skipped CheckDocument step (doctest only). [ Info: Skipped Populate step (doctest only). [ Info: Skipped RenderDocument step (doctest only). Test Summary: | Pass Total Time Doctests: Expronicon | 1 1 1m12.2s Testing Expronicon tests passed Testing completed after 363.58s PkgEval succeeded after 424.02s