Package evaluation of DrelTools on Julia 1.11.4 (a71dd056e0*) started at 2025-04-08T11:28:11.980 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Set-up completed after 8.61s ################################################################################ # Installation # Installing DrelTools... Resolving package versions... Installed DrelTools ─ v0.3.0 Updating `~/.julia/environments/v1.11/Project.toml` [fc805444] + DrelTools v0.3.0 Updating `~/.julia/environments/v1.11/Manifest.toml` [34da2185] + Compat v4.16.0 [a8cc5b0e] + Crayons v4.1.1 ⌅ [6007d9b0] + CrystalInfoFramework v0.6.3 [9a962f9c] + DataAPI v1.16.0 [a93c6f00] + DataFrames v1.7.0 [864edb3b] + DataStructures v0.18.22 [e2d170a0] + DataValueInterfaces v1.0.0 [fc805444] + DrelTools v0.3.0 ⌅ [8fc22ac5] + FilePaths v0.8.3 [48062228] + FilePathsBase v0.9.24 [842dd82b] + InlineStrings v1.4.3 [41ab1584] + InvertedIndices v1.3.1 [82899510] + IteratorInterfaceExtensions v1.0.0 [692b3bcd] + JLLWrappers v1.7.0 [b964fa9f] + LaTeXStrings v1.4.0 [d42ef402] + Lerche v0.5.6 [1914dd2f] + MacroTools v0.5.15 [e1d29d7a] + Missings v1.2.0 [bac558e1] + OrderedCollections v1.8.0 [2dfb63ee] + PooledArrays v1.4.3 ⌅ [aea7be01] + PrecompileTools v1.2.1 [21216c6a] + Preferences v1.4.3 [08abe8d2] + PrettyTables v2.4.0 [189a3867] + Reexport v1.2.2 [ae029012] + Requires v1.3.1 [6c6a2e73] + Scratch v1.2.1 [91c51154] + SentinelArrays v1.4.8 [a2af1166] + SortingAlgorithms v1.2.1 [10745b16] + Statistics v1.11.1 [892a3eda] + StringManipulation v0.4.1 [3783bdb8] + TableTraits v1.0.1 [bd369af6] + Tables v1.12.0 [5c2747f8] + URIs v1.5.2 ⌅ [a51ab1cf] + ICU_jll v69.1.0+0 [76ed43ae] + SQLite_jll v3.48.0+0 [6fcef0ae] + cif_api_jll v0.4.2+0 [0dad84c5] + ArgTools v1.1.2 [56f22d72] + Artifacts v1.11.0 [2a0f44e3] + Base64 v1.11.0 [ade2ca70] + Dates v1.11.0 [f43a241f] + Downloads v1.6.0 [7b1f6079] + FileWatching v1.11.0 [9fa8497b] + Future v1.11.0 [b77e0a4c] + InteractiveUtils v1.11.0 [b27032c2] + LibCURL v0.6.4 [76f85450] + LibGit2 v1.11.0 [8f399da3] + Libdl v1.11.0 [37e2e46d] + LinearAlgebra v1.11.0 [56ddb016] + Logging v1.11.0 [d6f4376e] + Markdown v1.11.0 [ca575930] + NetworkOptions v1.2.0 [44cfe95a] + Pkg v1.11.0 [de0858da] + Printf v1.11.0 [9a3f8284] + Random v1.11.0 [ea8e919c] + SHA v0.7.0 [9e88b42a] + Serialization v1.11.0 [fa267f1f] + TOML v1.0.3 [a4e569a6] + Tar v1.10.0 [cf7118a7] + UUIDs v1.11.0 [4ec0a83e] + Unicode v1.11.0 [e66e0078] + CompilerSupportLibraries_jll v1.1.1+0 [deac9b47] + LibCURL_jll v8.6.0+0 [e37daf67] + LibGit2_jll v1.7.2+0 [29816b5a] + LibSSH2_jll v1.11.0+1 [c8ffd9c3] + MbedTLS_jll v2.28.6+0 [14a3606d] + MozillaCACerts_jll v2023.12.12 [4536629a] + OpenBLAS_jll v0.3.27+1 [83775a58] + Zlib_jll v1.2.13+1 [8e850b90] + libblastrampoline_jll v5.11.0+0 [8e850ede] + nghttp2_jll v1.59.0+0 [3f19e933] + p7zip_jll v17.4.0+2 Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m` Building DrelTools → `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/c4212f2adcc7a03f6e3b153bd6342065f9a71942/build.log` Installation completed after 70.89s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... Precompiling package dependencies... Precompilation completed after 136.77s ################################################################################ # Testing # Testing DrelTools Status `/tmp/jl_yjBOuT/Project.toml` ⌅ [6007d9b0] CrystalInfoFramework v0.6.3 [a93c6f00] DataFrames v1.7.0 [fc805444] DrelTools v0.3.0 ⌅ [8fc22ac5] FilePaths v0.8.3 [d42ef402] Lerche v0.5.6 [1914dd2f] MacroTools v0.5.15 [6c6a2e73] Scratch v1.2.1 [37e2e46d] LinearAlgebra v1.11.0 [9e88b42a] Serialization v1.11.0 [8dfed614] Test v1.11.0 Status `/tmp/jl_yjBOuT/Manifest.toml` [34da2185] Compat v4.16.0 [a8cc5b0e] Crayons v4.1.1 ⌅ [6007d9b0] CrystalInfoFramework v0.6.3 [9a962f9c] DataAPI v1.16.0 [a93c6f00] DataFrames v1.7.0 [864edb3b] DataStructures v0.18.22 [e2d170a0] DataValueInterfaces v1.0.0 [fc805444] DrelTools v0.3.0 ⌅ [8fc22ac5] FilePaths v0.8.3 [48062228] FilePathsBase v0.9.24 [842dd82b] InlineStrings v1.4.3 [41ab1584] InvertedIndices v1.3.1 [82899510] IteratorInterfaceExtensions v1.0.0 [692b3bcd] JLLWrappers v1.7.0 [b964fa9f] LaTeXStrings v1.4.0 [d42ef402] Lerche v0.5.6 [1914dd2f] MacroTools v0.5.15 [e1d29d7a] Missings v1.2.0 [bac558e1] OrderedCollections v1.8.0 [2dfb63ee] PooledArrays v1.4.3 ⌅ [aea7be01] PrecompileTools v1.2.1 [21216c6a] Preferences v1.4.3 [08abe8d2] PrettyTables v2.4.0 [189a3867] Reexport v1.2.2 [ae029012] Requires v1.3.1 [6c6a2e73] Scratch v1.2.1 [91c51154] SentinelArrays v1.4.8 [a2af1166] SortingAlgorithms v1.2.1 [10745b16] Statistics v1.11.1 [892a3eda] StringManipulation v0.4.1 [3783bdb8] TableTraits v1.0.1 [bd369af6] Tables v1.12.0 [5c2747f8] URIs v1.5.2 ⌅ [a51ab1cf] ICU_jll v69.1.0+0 [76ed43ae] SQLite_jll v3.48.0+0 [6fcef0ae] cif_api_jll v0.4.2+0 [0dad84c5] ArgTools v1.1.2 [56f22d72] Artifacts v1.11.0 [2a0f44e3] Base64 v1.11.0 [ade2ca70] Dates v1.11.0 [f43a241f] Downloads v1.6.0 [7b1f6079] FileWatching v1.11.0 [9fa8497b] Future v1.11.0 [b77e0a4c] InteractiveUtils v1.11.0 [b27032c2] LibCURL v0.6.4 [76f85450] LibGit2 v1.11.0 [8f399da3] Libdl v1.11.0 [37e2e46d] LinearAlgebra v1.11.0 [56ddb016] Logging v1.11.0 [d6f4376e] Markdown v1.11.0 [ca575930] NetworkOptions v1.2.0 [44cfe95a] Pkg v1.11.0 [de0858da] Printf v1.11.0 [9a3f8284] Random v1.11.0 [ea8e919c] SHA v0.7.0 [9e88b42a] Serialization 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.1.1+0 [deac9b47] LibCURL_jll v8.6.0+0 [e37daf67] LibGit2_jll v1.7.2+0 [29816b5a] LibSSH2_jll v1.11.0+1 [c8ffd9c3] MbedTLS_jll v2.28.6+0 [14a3606d] MozillaCACerts_jll v2023.12.12 [4536629a] OpenBLAS_jll v0.3.27+1 [83775a58] Zlib_jll v1.2.13+1 [8e850b90] libblastrampoline_jll v5.11.0+0 [8e850ede] nghttp2_jll v1.59.0+0 [3f19e933] p7zip_jll v17.4.0+2 Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. Testing Running tests... WARNING: Method definition (::Type{URIs.URI})(FilePathsBase.AbstractPath) in module FilePaths at /home/pkgeval/.julia/packages/FilePaths/ULnpu/src/uris.jl:5 overwritten in module CrystalInfoFramework at /home/pkgeval/.julia/packages/CrystalInfoFramework/FpKpL/src/ddlm_dictionary_ng.jl:1304. WARNING: Method definition kwcall(NamedTuple{names, T} where T<:Tuple where names, Type{URIs.URI}, FilePathsBase.AbstractPath) in module FilePaths at /home/pkgeval/.julia/packages/FilePaths/ULnpu/src/uris.jl:5 overwritten in module CrystalInfoFramework at /home/pkgeval/.julia/packages/CrystalInfoFramework/FpKpL/src/ddlm_dictionary_ng.jl:1304. cumsum = 0 q = [[1,2],[3,4],[5,6]] for a,b in q { cumsum += a*b } rv.output = cumsum ======== function (__datablock::DynamicRelationalContainer, __packet::CatPacket) #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/drel_ast.jl:413 =# __dict = missing cumsum = missing q = missing __dreltarget = missing #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/jl_transformer.jl:118 =# #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/jl_transformer.jl:120 =# begin __dict = get_dictionary(__datablock, "CORE_DIC") begin cumsum = 0 q = [[1, 2], [3, 4], [5, 6]] for (a, b) = q cumsum += a * b end __dreltarget = cumsum end return __dreltarget end end cumsum = 0 q = [[1,2,3,4],[3,4,5,6],[5,6,7,8]] for a,b,c,d in q { cumsum += a*b+c*d } rv.output = cumsum ======== function (__datablock::DynamicRelationalContainer, __packet::CatPacket) #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/drel_ast.jl:413 =# __dict = missing cumsum = missing q = missing __dreltarget = missing #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/jl_transformer.jl:118 =# #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/jl_transformer.jl:120 =# begin __dict = get_dictionary(__datablock, "CORE_DIC") begin cumsum = 0 q = [[1, 2, 3, 4], [3, 4, 5, 6], [5, 6, 7, 8]] for (a, b, c, d) = q cumsum += a * b .+ c * d end __dreltarget = cumsum end return __dreltarget end end Test Summary: | Pass Total Time Test compound expressions | 2 2 1m09.3s 0.5 * (1.0 + 2.0) ======== function (__datablock::DynamicRelationalContainer, __packet::CatPacket) #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/drel_ast.jl:413 =# __dict = missing __dreltarget = missing #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/jl_transformer.jl:118 =# #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/jl_transformer.jl:120 =# begin __dict = get_dictionary(__datablock, "CORE_DIC") __dreltarget = 0.5 * (1.0 .+ 2.0) return __dreltarget end end Test Summary: | Pass Total Time Test evaluation of simple expressions | 1 1 1.5s Test Summary: | Pass Total Time Test simple expression processing | 8 8 0.6s ┌ Warning: `delete!(df::DataFrame, inds)` is deprecated, use `deleteat!(df::DataFrame, inds)` instead. │ caller = resolve_templated_imports!(d::Dict{Symbol, DataFrames.DataFrame}, original_dir::PosixPath, cached_dicts::Dict{Any, Any}) at ddlm_dictionary_ng.jl:1516 └ @ CrystalInfoFramework ~/.julia/packages/CrystalInfoFramework/FpKpL/src/ddlm_dictionary_ng.jl:1516 Test Summary: | Pass Total Time Test dynamic relational container type | 3 3 7.5s Test Summary: | Pass Total Time Test construction of empty Set categories | 1 1 18.3s Test Summary: | Pass Total Time Test dynamic set categories | 3 3 3.9s Test Summary: | Pass Total Time Test dynamic loop categories | 1 1 21.5s New text: begin a = [1, 2, 3, 4] #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:4 =# b = a[0 + 1] #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:4 =# return b end New text: begin a = [1, 2, 3, 4, 5, 6, 7, 8, 9] #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:9 =# c = 4 #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:9 =# b = a[(c - 4) + 1:2:c + 4] #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:9 =# return b[2 + 1] end WARNING: Method definition f(Any) in module Main at /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:13 overwritten at /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/drel_ast.jl:413. New text: function (x,) #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/drel_ast.jl:413 =# s = missing i = missing qq = missing a = missing #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:21 =# #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:21 =# s = 1 #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:21 =# for i = 1:5 #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:21 =# if i == 3 #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:21 =# qq = 1 elseif #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:21 =# i == 4 #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:21 =# a = qq end #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:21 =# end #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:21 =# a end begin __dreltarget = to_julia_array([[1, 2, 3], [4, 5, 6]]) #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/expressions.jl:31 =# return __dreltarget end Test Summary: | Pass Total Time Testing complex expression processing | 7 7 4.6s ┌ Warning: Warning: recognising only categories from DDL_TRANS_DIC └ @ DrelTools ~/.julia/packages/DrelTools/CCLCE/src/drel_execution.jl:656 function (__datablock::DynamicRelationalContainer, __packet::CatPacket) #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/drel_ast.jl:413 =# __dict = missing ddlmѫdictionary_audit = missing latest = missing d = missing __dreltarget = missing #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/jl_transformer.jl:118 =# #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/jl_transformer.jl:120 =# begin __dict = get_dictionary(__datablock, "ddlm") ddlmѫdictionary_audit = get_packets(get_category(__datablock, "dictionary_audit", "ddlm")) begin latest = "1900-01-01" for d = ddlmѫdictionary_audit if drel_property_access(d, "date", __datablock) > latest latest = drel_property_access(d, "date", __datablock) end end __dreltarget = latest end return __dreltarget end end Test Summary: | Total Time Test namespace presence | 0 8.2s Added implicit value for category_methods.category_id Added implicit value for item_methods.name function (__datablock::DynamicRelationalContainer, __packet::CatPacket) #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/drel_ast.jl:413 =# __dict = missing ce = missing __dreltarget = missing #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/jl_transformer.jl:118 =# #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/jl_transformer.jl:120 =# begin __dict = get_dictionary(__datablock, "ddl2") begin ce = __packet #= /home/pkgeval/.julia/packages/DrelTools/CCLCE/src/jl_transformer.jl:635 =# begin __dreltarget = drel_property_access(description_example[:master_id => drel_property_access(ce, "id", __datablock), :case => drel_property_access(ce, "case", __datablock)], "detail", __datablock) end end return __dreltarget end end Test Summary: | Total Time Test dREL processing | 0 14.7s WARNING: Method definition setup() in module Main at /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/runtests.jl:15 overwritten at /home/pkgeval/.julia/packages/DrelTools/CCLCE/test/drel_exec.jl:3. ["symop", "seitzfromjones", "closest", "symlat", "symequiv", "symkey", "atomtype"] Test Summary: | Pass Total Time Test dictionary-defined functions | 1 1 0.7s Test Summary: | Pass Total Time Test generation of missing keys | 1 1 5.9s Any[CodeInfo( 1 ── %1 = (isa)(__datablock, DynamicDDLmRC)::Bool └─── goto #7 if not %1 2 ── %3 = π (__datablock, DynamicDDLmRC) │ %4 = Base.getfield(%3, :dict)::Dict{String, AbstractCifDictionary} │ %5 = invoke Base.ht_keyindex(%4::Dict{String, AbstractCifDictionary}, "CifCore"::String)::Int64 │ %6 = Base.slt_int(%5, 0)::Bool └─── goto #4 if not %6 3 ── %8 = Base.KeyError("CifCore")::Any │ Base.throw(%8)::Union{} └─── unreachable 4 ── %11 = Base.getfield(%4, :vals)::Memory{AbstractCifDictionary} │ %12 = Base.memoryrefnew(%11)::MemoryRef{AbstractCifDictionary} │ %13 = $(Expr(:boundscheck, false))::Bool │ %14 = Base.memoryrefnew(%12, %5, %13)::MemoryRef{AbstractCifDictionary} │ Base.memoryrefget(%14, :not_atomic, false)::AbstractCifDictionary └─── goto #5 5 ── goto #6 6 ── goto #8 7 ── DrelTools.get_dictionary(__datablock, "CifCore")::AbstractCifDictionary └─── goto #8 8 ┄─ %21 = (isa)(__datablock, DynamicDDLmRC)::Bool └─── goto #10 if not %21 9 ── %23 = π (__datablock, DynamicDDLmRC) │ %24 = invoke DrelTools.find_namespace(%23::DynamicDDLmRC, "atom_type"::String)::String │ %25 = invoke DrelTools.get_category(%23::DynamicDDLmRC, "atom_type"::String, %24::String)::Union{Missing, CifCategory} └─── goto #11 10 ─ %27 = DrelTools.get_category(__datablock, "atom_type")::Union{Missing, CifCategory} └─── goto #11 11 ┄ %29 = φ (#9 => false, #10 => false)::Bool │ %30 = φ (#9 => %25, #10 => %27)::Union{Missing, CifCategory} │ %31 = (isa)(%30, Missing)::Bool └─── goto #13 if not %31 12 ─ %33 = Core.getproperty(Memory{Any}, :instance)::Memory{Any} │ %34 = invoke Core.memoryref(%33::Memory{Any})::MemoryRef{Any} │ %35 = %new(Vector{Any}, %34, (0,))::Vector{Any} └─── goto #18 13 ─ %37 = (isa)(%30, LoopCategory)::Bool └─── goto #15 if not %37 14 ─ %39 = π (%30, LoopCategory) └─── goto #18 15 ─ %41 = (isa)(%30, SetCategory)::Bool └─── goto #17 if not %41 16 ─ %43 = π (%30, SetCategory) │ %44 = %new(CrystalInfoFramework.DataContainer.CatPacket, 1, %43)::CatPacket └─── goto #18 17 ─ nothing::Nothing │ %47 = Core.getproperty(Memory{Any}, :instance)::Memory{Any} │ %48 = invoke Core.memoryref(%47::Memory{Any})::MemoryRef{Any} │ %49 = %new(Vector{Any}, %48, (0,))::Vector{Any} └─── goto #18 18 ┄ %51 = φ (#12 => true, #14 => %29, #16 => false, #17 => true)::Bool │ %52 = φ (#12 => %35, #14 => %39, #16 => %44, #17 => %49)::Union{CatPacket, LoopCategory, Vector{Any}} │ %53 = Base.iterate::typeof(iterate) └─── goto #29 if not %51 19 ─ %55 = π (%52, Vector{Any}) │ %56 = Base.sub_int(1, 1)::Int64 │ %57 = Base.bitcast(UInt64, %56)::UInt64 │ %58 = Base.getfield(%55, :size)::Tuple{Int64} │ %59 = $(Expr(:boundscheck, true))::Bool │ %60 = Base.getfield(%58, 1, %59)::Int64 │ %61 = Base.bitcast(UInt64, %60)::UInt64 │ %62 = Base.ult_int(%57, %61)::Bool └─── goto #26 if not %62 20 ─ %64 = $(Expr(:boundscheck, false))::Bool └─── goto #24 if not %64 21 ─ %66 = Base.sub_int(1, 1)::Int64 │ %67 = Base.bitcast(Base.UInt, %66)::UInt64 │ %68 = Base.getfield(%55, :size)::Tuple{Int64} │ %69 = $(Expr(:boundscheck, true))::Bool │ %70 = Base.getfield(%68, 1, %69)::Int64 │ %71 = Base.bitcast(Base.UInt, %70)::UInt64 │ %72 = Base.ult_int(%67, %71)::Bool └─── goto #23 if not %72 22 ─ goto #24 23 ─ %75 = Core.tuple(1)::Tuple{Int64} │ invoke Base.throw_boundserror(%55::Vector{Any}, %75::Tuple{Int64})::Union{} └─── unreachable 24 ┄ %78 = Base.getfield(%55, :ref)::MemoryRef{Any} │ %79 = Base.memoryrefnew(%78, 1, false)::MemoryRef{Any} │ %80 = Base.memoryrefget(%79, :not_atomic, false)::Any └─── goto #25 25 ─ %82 = Base.add_int(1, 1)::Int64 │ %83 = Core.tuple(%80, %82)::Tuple{Any, Int64} └─── goto #27 26 ─ goto #27 27 ┄ %86 = φ (#25 => %83, #26 => Base.nothing)::Union{Nothing, Tuple{Any, Int64}} └─── goto #28 28 ─ goto #32 29 ─ %89 = (isa)(%52, LoopCategory)::Bool └─── goto #31 if not %89 30 ─ %91 = π (%52, LoopCategory) │ %92 = invoke %53(%91::LoopCategory)::Union{Nothing, Tuple{Any, Int64}, Tuple{CatPacket, Tuple{Any, Any}}} └─── goto #32 31 ─ %94 = Base.iterate(%52)::Union{Nothing, Tuple{Any, Int64}, Tuple{CatPacket, Tuple{Any, Any}}} └─── goto #32 32 ┄ %96 = φ (#28 => %86, #30 => %92, #31 => %94)::Union{Nothing, Tuple{Any, Int64}, Tuple{CatPacket, Tuple{Any, Any}}} │ %97 = (%96 === nothing)::Bool │ %98 = Base.not_int(%97)::Bool └─── goto #35 if not %98 33 ┄ %100 = φ (#32 => %96, #34 => %108)::Any │ %101 = φ (#32 => 0.0, #34 => %107)::Any │ %102 = Core.getfield(%100, 1)::Any │ %103 = Core.getfield(%100, 2)::Any │ %104 = DrelTools.drel_property_access(%102, "number_in_cell", __datablock)::Any │ %105 = DrelTools.drel_property_access(%102, "atomic_mass", __datablock)::Any │ %106 = (%104 * %105)::Any │ %107 = (%101 + %106)::Any │ %108 = Base.iterate(%52, %103)::Any │ %109 = (%108 === nothing)::Bool │ %110 = Base.not_int(%109)::Bool └─── goto #35 if not %110 34 ─ goto #33 35 ┄ %113 = φ (#33 => %107, #32 => 0.0)::Any └─── return %113 ) => Any] Test Summary: | Pass Total Time Test single-step derivation | 1 1 9.7s Test Summary: | Pass Total Time Test multi-step derivation | 1 1 4.5s Test Summary: | Pass Total Time Test matrix multiplication | 1 1 2.0s 1.087937 seconds (11.16 M allocations: 485.747 MiB, 8.47% gc time) 0.039930 seconds (151.47 k allocations: 5.898 MiB, 35.74% gc time) Test Summary: | Pass Total Time Test density | 1 1 1.3s 13.774501 seconds (96.02 M allocations: 3.871 GiB, 5.15% gc time, 5.71% compilation time) [[0.004314228357823332 -0.0012229144412099233 0.005921632195094768; -0.0012229144412099233 0.005183474683224992 -0.002505483245405697; 0.005921632195094768 -0.002505483245405697 0.03507101535344505], [0.004314228357823332 -0.0012229144412099233 0.005224969583907148; -0.0012229144412099233 0.0048693247024234766 -0.0035792617791509953; 0.005224969583907148 -0.0035792617791509953 0.032624200328786095], [0.004909294338212758 -0.00045859291545372125 0.0062699635006885765; -0.0004585929154537213 0.005183474683224992 -0.002505483245405697; 0.006269963500688577 -0.002505483245405697 0.05219872052605775], [0.004165461862725976 0.0 0.0017416565279690494; 0.0 0.005654699654427262 -0.0014317047116603982; 0.0017416565279690494 -0.0014317047116603982 0.018758915189052004], [0.00401669536762862 0.00045859291545372125 0.0010449939167814296; 0.0004585929154537213 0.005026399692824234 -0.002505483245405697; 0.0010449939167814296 -0.002505483245405697 0.028546175287687832], [0.006545725784283677 0.0016815073566636446 0.0010449939167814296; 0.0016815073566636444 0.00644007460643105 -0.0035792617791509953; 0.0010449939167814296 -0.0035792617791509953 0.028546175287687832], [0.00847969022054931 0.002140100272117366 -0.002089987833562859; 0.002140100272117366 0.005340549673625749 -0.0035792617791509953; -0.002089987833562859 -0.0035792617791509953 0.03670222536988435], [0.00847969022054931 0.0016815073566636446 -0.0006966626111876197; 0.0016815073566636444 0.006597149596831807 -0.0035792617791509953; -0.0006966626111876197 -0.0035792617791509953 0.028546175287687832], [0.006545725784283677 0.00045859291545372125 -0.0006966626111876197; 0.0004585929154537213 0.00408394975041969 -0.0017896308895754976; -0.0006966626111876197 -0.0017896308895754976 0.0358866203616647], [0.004314228357823332 0.0007643215257562021 0.002089987833562859; 0.0007643215257562021 0.004398099731221205 -0.0007158523558301991; 0.002089987833562859 -0.0007158523558301991 0.025283755254809224]] Any[CodeInfo( 1 ── %1 = (isa)(__datablock, DynamicDDLmRC)::Bool └─── goto #7 if not %1 2 ── %3 = π (__datablock, DynamicDDLmRC) │ %4 = Base.getfield(%3, :dict)::Dict{String, AbstractCifDictionary} │ %5 = invoke Base.ht_keyindex(%4::Dict{String, AbstractCifDictionary}, "CifCore"::String)::Int64 │ %6 = Base.slt_int(%5, 0)::Bool └─── goto #4 if not %6 3 ── %8 = Base.KeyError("CifCore")::Any │ Base.throw(%8)::Union{} └─── unreachable 4 ── %11 = Base.getfield(%4, :vals)::Memory{AbstractCifDictionary} │ %12 = Base.memoryrefnew(%11)::MemoryRef{AbstractCifDictionary} │ %13 = $(Expr(:boundscheck, false))::Bool │ %14 = Base.memoryrefnew(%12, %5, %13)::MemoryRef{AbstractCifDictionary} │ Base.memoryrefget(%14, :not_atomic, false)::AbstractCifDictionary └─── goto #5 5 ── goto #6 6 ── goto #8 7 ── DrelTools.get_dictionary(__datablock, "CifCore")::AbstractCifDictionary └─── goto #8 8 ┄─ %21 = (isa)(__datablock, DynamicDDLmRC)::Bool └─── goto #10 if not %21 9 ── %23 = π (__datablock, DynamicDDLmRC) │ %24 = invoke DrelTools.find_namespace(%23::DynamicDDLmRC, "atom_site_aniso"::String)::String │ %25 = invoke DrelTools.get_category(%23::DynamicDDLmRC, "atom_site_aniso"::String, %24::String)::Union{Missing, CifCategory} └─── goto #11 10 ─ %27 = DrelTools.get_category(__datablock, "atom_site_aniso")::Union{Missing, CifCategory} └─── goto #11 11 ┄ %29 = φ (#9 => false, #10 => false)::Bool │ %30 = φ (#9 => false, #10 => false)::Bool │ %31 = φ (#9 => %25, #10 => %27)::Union{Missing, CifCategory} │ %32 = (isa)(%31, Missing)::Bool └─── goto #13 if not %32 12 ─ %34 = Core.getproperty(Memory{Any}, :instance)::Memory{Any} │ %35 = invoke Core.memoryref(%34::Memory{Any})::MemoryRef{Any} │ %36 = %new(Vector{Any}, %35, (0,))::Vector{Any} └─── goto #18 13 ─ %38 = (isa)(%31, LoopCategory)::Bool └─── goto #15 if not %38 14 ─ %40 = π (%31, LoopCategory) └─── goto #18 15 ─ %42 = (isa)(%31, SetCategory)::Bool └─── goto #17 if not %42 16 ─ %44 = π (%31, SetCategory) │ %45 = %new(CrystalInfoFramework.DataContainer.CatPacket, 1, %44)::CatPacket └─── goto #18 17 ─ nothing::Nothing │ %48 = Core.getproperty(Memory{Any}, :instance)::Memory{Any} │ %49 = invoke Core.memoryref(%48::Memory{Any})::MemoryRef{Any} │ %50 = %new(Vector{Any}, %49, (0,))::Vector{Any} └─── goto #18 18 ┄ %52 = φ (#12 => true, #14 => %29, #16 => false, #17 => true)::Bool │ %53 = φ (#12 => true, #14 => %30, #16 => false, #17 => true)::Bool │ %54 = φ (#12 => %36, #14 => %40, #16 => %45, #17 => %50)::Union{CatPacket, LoopCategory, Vector{Any}} │ %55 = (isa)(__datablock, DynamicDDLmRC)::Bool └─── goto #20 if not %55 19 ─ %57 = π (__datablock, DynamicDDLmRC) │ %58 = invoke DrelTools.find_namespace(%57::DynamicDDLmRC, "cell"::String)::String │ %59 = invoke DrelTools.get_category(%57::DynamicDDLmRC, "cell"::String, %58::String)::Union{Missing, CifCategory} └─── goto #21 20 ─ %61 = DrelTools.get_category(__datablock, "cell")::Union{Missing, CifCategory} └─── goto #21 21 ┄ %63 = φ (#19 => %59, #20 => %61)::Union{Missing, CifCategory} │ %64 = (isa)(%63, Missing)::Bool └─── goto #23 if not %64 22 ─ %66 = Core.getproperty(Memory{Any}, :instance)::Memory{Any} │ %67 = invoke Core.memoryref(%66::Memory{Any})::MemoryRef{Any} │ %68 = %new(Vector{Any}, %67, (0,))::Vector{Any} └─── goto #28 23 ─ %70 = (isa)(%63, LoopCategory)::Bool └─── goto #25 if not %70 24 ─ %72 = π (%63, LoopCategory) └─── goto #28 25 ─ %74 = (isa)(%63, SetCategory)::Bool └─── goto #27 if not %74 26 ─ %76 = π (%63, SetCategory) │ %77 = %new(CrystalInfoFramework.DataContainer.CatPacket, 1, %76)::CatPacket └─── goto #28 27 ─ nothing::Nothing │ %80 = Core.getproperty(Memory{Any}, :instance)::Memory{Any} │ %81 = invoke Core.memoryref(%80::Memory{Any})::MemoryRef{Any} │ %82 = %new(Vector{Any}, %81, (0,))::Vector{Any} └─── goto #28 28 ┄ %84 = φ (#22 => %68, #24 => %72, #26 => %77, #27 => %82)::Union{CatPacket, LoopCategory, Vector{Any}} │ %85 = DrelTools.drel_property_access(__packet, "label", __datablock)::Any │ Core.typeassert(%85, DrelTools.CaselessString)::CaselessString │ %87 = π (%85, CaselessString) │ %88 = DrelTools.drel_property_access(__packet, "adp_type", __datablock)::Any │ Core.typeassert(%88, String)::String │ %90 = π (%88, String) │ %91 = (%90 === "Uani")::Bool └─── goto #49 if not %91 29 ─ %93 = Base.iterate::typeof(iterate) └─── goto #40 if not %52 30 ─ %95 = π (%54, Vector{Any}) │ %96 = Base.sub_int(1, 1)::Int64 │ %97 = Base.bitcast(UInt64, %96)::UInt64 │ %98 = Base.getfield(%95, :size)::Tuple{Int64} │ %99 = $(Expr(:boundscheck, true))::Bool │ %100 = Base.getfield(%98, 1, %99)::Int64 │ %101 = Base.bitcast(UInt64, %100)::UInt64 │ %102 = Base.ult_int(%97, %101)::Bool └─── goto #37 if not %102 31 ─ %104 = $(Expr(:boundscheck, false))::Bool └─── goto #35 if not %104 32 ─ %106 = Base.sub_int(1, 1)::Int64 │ %107 = Base.bitcast(Base.UInt, %106)::UInt64 │ %108 = Base.getfield(%95, :size)::Tuple{Int64} │ %109 = $(Expr(:boundscheck, true))::Bool │ %110 = Base.getfield(%108, 1, %109)::Int64 │ %111 = Base.bitcast(Base.UInt, %110)::UInt64 │ %112 = Base.ult_int(%107, %111)::Bool └─── goto #34 if not %112 33 ─ goto #35 34 ─ %115 = Core.tuple(1)::Tuple{Int64} │ invoke Base.throw_boundserror(%95::Vector{Any}, %115::Tuple{Int64})::Union{} └─── unreachable 35 ┄ %118 = Base.getfield(%95, :ref)::MemoryRef{Any} │ %119 = Base.memoryrefnew(%118, 1, false)::MemoryRef{Any} │ %120 = Base.memoryrefget(%119, :not_atomic, false)::Any └─── goto #36 36 ─ %122 = Base.add_int(1, 1)::Int64 │ %123 = Core.tuple(%120, %122)::Tuple{Any, Int64} └─── goto #38 37 ─ goto #38 38 ┄ %126 = φ (#36 => %123, #37 => Base.nothing)::Union{Nothing, Tuple{Any, Int64}} └─── goto #39 39 ─ goto #43 40 ─ %129 = (isa)(%54, LoopCategory)::Bool └─── goto #42 if not %129 41 ─ %131 = π (%54, LoopCategory) │ %132 = invoke %93(%131::LoopCategory)::Union{Nothing, Tuple{Any, Int64}, Tuple{CatPacket, Tuple{Any, Any}}} └─── goto #43 42 ─ %134 = Base.iterate(%54)::Union{Nothing, Tuple{Any, Int64}, Tuple{CatPacket, Tuple{Any, Any}}} └─── goto #43 43 ┄ %136 = φ (#39 => %126, #41 => %132, #42 => %134)::Union{Nothing, Tuple{Any, Int64}, Tuple{CatPacket, Tuple{Any, Any}}} │ %137 = (%136 === nothing)::Bool │ %138 = Base.not_int(%137)::Bool └─── goto #48 if not %138 44 ┄ %140 = φ (#43 => %136, #47 => %148)::Any │ %141 = Core.getfield(%140, 1)::Any │ %142 = Core.getfield(%140, 2)::Any │ %143 = DrelTools.drel_property_access(%141, "label", __datablock)::Any │ %144 = (%87 == %143)::Any └─── goto #46 if not %144 45 ─ %146 = DrelTools.drel_property_access(%141, "matrix_u", __datablock)::Any └─── goto #48 46 ─ %148 = Base.iterate(%54, %142)::Any │ %149 = (%148 === nothing)::Bool │ %150 = Base.not_int(%149)::Bool └─── goto #48 if not %150 47 ─ goto #44 48 ┄ %153 = φ (#45 => %146, #46 => DrelTools.missing, #43 => DrelTools.missing)::Any └─── goto #79 49 ─ %155 = DrelTools.drel_property_access(__packet, "adp_type", __datablock)::Any │ Core.typeassert(%155, String)::String │ %157 = π (%155, String) │ %158 = (%157 === "Bani")::Bool └─── goto #70 if not %158 50 ─ %160 = Base.iterate::typeof(iterate) └─── goto #61 if not %53 51 ─ %162 = π (%54, Vector{Any}) │ %163 = Base.sub_int(1, 1)::Int64 │ %164 = Base.bitcast(UInt64, %163)::UInt64 │ %165 = Base.getfield(%162, :size)::Tuple{Int64} │ %166 = $(Expr(:boundscheck, true))::Bool │ %167 = Base.getfield(%165, 1, %166)::Int64 │ %168 = Base.bitcast(UInt64, %167)::UInt64 │ %169 = Base.ult_int(%164, %168)::Bool └─── goto #58 if not %169 52 ─ %171 = $(Expr(:boundscheck, false))::Bool └─── goto #56 if not %171 53 ─ %173 = Base.sub_int(1, 1)::Int64 │ %174 = Base.bitcast(Base.UInt, %173)::UInt64 │ %175 = Base.getfield(%162, :size)::Tuple{Int64} │ %176 = $(Expr(:boundscheck, true))::Bool │ %177 = Base.getfield(%175, 1, %176)::Int64 │ %178 = Base.bitcast(Base.UInt, %177)::UInt64 │ %179 = Base.ult_int(%174, %178)::Bool └─── goto #55 if not %179 54 ─ goto #56 55 ─ %182 = Core.tuple(1)::Tuple{Int64} │ invoke Base.throw_boundserror(%162::Vector{Any}, %182::Tuple{Int64})::Union{} └─── unreachable 56 ┄ %185 = Base.getfield(%162, :ref)::MemoryRef{Any} │ %186 = Base.memoryrefnew(%185, 1, false)::MemoryRef{Any} │ %187 = Base.memoryrefget(%186, :not_atomic, false)::Any └─── goto #57 57 ─ %189 = Base.add_int(1, 1)::Int64 │ %190 = Core.tuple(%187, %189)::Tuple{Any, Int64} └─── goto #59 58 ─ goto #59 59 ┄ %193 = φ (#57 => %190, #58 => Base.nothing)::Union{Nothing, Tuple{Any, Int64}} └─── goto #60 60 ─ goto #64 61 ─ %196 = (isa)(%54, LoopCategory)::Bool └─── goto #63 if not %196 62 ─ %198 = π (%54, LoopCategory) │ %199 = invoke %160(%198::LoopCategory)::Union{Nothing, Tuple{Any, Int64}, Tuple{CatPacket, Tuple{Any, Any}}} └─── goto #64 63 ─ %201 = Base.iterate(%54)::Union{Nothing, Tuple{Any, Int64}, Tuple{CatPacket, Tuple{Any, Any}}} └─── goto #64 64 ┄ %203 = φ (#60 => %193, #62 => %199, #63 => %201)::Union{Nothing, Tuple{Any, Int64}, Tuple{CatPacket, Tuple{Any, Any}}} │ %204 = (%203 === nothing)::Bool │ %205 = Base.not_int(%204)::Bool └─── goto #69 if not %205 65 ┄ %207 = φ (#64 => %203, #68 => %217)::Any │ %208 = Core.getfield(%207, 1)::Any │ %209 = Core.getfield(%207, 2)::Any │ %210 = DrelTools.drel_property_access(%208, "label", __datablock)::Any │ %211 = (%87 == %210)::Any └─── goto #67 if not %211 66 ─ %213 = DrelTools.drel_property_access(%208, "matrix_b", __datablock)::Any │ %214 = Base.broadcasted(DrelTools.:/, %213, 78.95683520871486)::Any │ %215 = Base.materialize(%214)::Any └─── goto #69 67 ─ %217 = Base.iterate(%54, %209)::Any │ %218 = (%217 === nothing)::Bool │ %219 = Base.not_int(%218)::Bool └─── goto #69 if not %219 68 ─ goto #65 69 ┄ %222 = φ (#66 => %215, #67 => DrelTools.missing, #64 => DrelTools.missing)::Any └─── goto #79 70 ─ %224 = DrelTools.drel_property_access(__packet, "adp_type", __datablock)::Any │ Core.typeassert(%224, String)::String │ %226 = π (%224, String) │ %227 = (%226 === "Uiso")::Bool └─── goto #72 if not %227 71 ─ %229 = DrelTools.drel_property_access(__packet, "u_iso_or_equiv", __datablock)::Any │ Core.typeassert(%229, Float64)::Float64 │ %231 = π (%229, Float64) └─── goto #78 72 ─ %233 = DrelTools.drel_property_access(__packet, "b_iso_or_equiv", __datablock)::Any │ Core.typeassert(%233, Float64)::Float64 │ %235 = π (%233, Float64) │ %236 = $(Expr(:boundscheck, true))::Bool └─── goto #74 if not %236 73 ─ nothing::Nothing 74 ┄ %239 = Base.div_float(%235, 78.95683520871486)::Float64 └─── goto #75 75 ─ goto #76 76 ─ goto #77 77 ─ nothing::Nothing 78 ┄ %244 = φ (#71 => %231, #77 => %239)::Float64 │ %245 = DrelTools.drel_property_access(%84, "convert_uiso_to_uij", __datablock)::Any └─── %246 = (%244 * %245)::Any 79 ┄ %247 = φ (#48 => %153, #69 => %222, #78 => %246)::Any │ %248 = DrelTools.drel_property_access(%84, "convert_uij_to_betaij", __datablock)::Any │ %249 = (%248 * %247)::Any │ %250 = (%249 * %248)::Any └─── return %250 ) => Any] Test Summary: | Total Time Test tensor beta | 0 14.6s Test Summary: | Pass Total Time Test value lookup | 1 1 3.9s Type specification too complex or unproductive, ignoring Test Summary: | Pass Total Time Test F_calc | 1 1 1m04.9s Category geom_bond Length 20 20×5 DataFrame Row │ site_symmetry_2 site_symmetry_1 distance atom_site_label_1 atom_site_label_2 │ Any Any Any CaselessString CaselessString ─────┼────────────────────────────────────────────────────────────────────────────────── 1 │ 1_555 1_555 1.31225 o1 c7 2 │ 1_555 1_555 1.31225 c7 o1 3 │ 1_555 1_555 1.24537 c7 o2 4 │ 1_555 1_555 1.46095 c7 c1 5 │ 1_555 1_555 1.24537 o2 c7 6 │ 1_555 1_555 1.46095 c1 c7 7 │ 1_555 1_555 1.41673 c1 c2 8 │ 1_555 1_555 1.39902 c1 c6 9 │ 1_555 1_555 1.41673 c2 c1 10 │ 1_555 1_555 1.355 c2 o3 11 │ 1_555 1_555 1.36943 c2 c3 12 │ 1_555 1_555 1.39902 c6 c1 13 │ 1_555 1_555 1.37664 c6 c5 14 │ 1_555 1_555 1.355 o3 c2 15 │ 1_555 1_555 1.36943 c3 c2 16 │ 1_555 1_555 1.39148 c3 c4 17 │ 1_555 1_555 1.37664 c5 c6 18 │ 1_555 1_555 1.41508 c5 c4 19 │ 1_555 1_555 1.39148 c4 c3 20 │ 1_555 1_555 1.41508 c4 c5 Any[1.3122488396121414, 1.3122488396121414, 1.2453667702306042, 1.4609474012083343, 1.2453667702306042, 1.4609474012083343, 1.41672573626104, 1.3990232592123757, 1.41672573626104, 1.3550046018539565, 1.3694290032383079, 1.3990232592123757, 1.3766354224369557, 1.3550046018539565, 1.3694290032383079, 1.3914783791734342, 1.3766354224369557, 1.4150766159179704, 1.3914783791734342, 1.4150766159179704] Test Summary: | Pass Total Time Test category methods | 1 1 1m58.4s Testing DrelTools tests passed Testing completed after 433.6s PkgEval succeeded after 658.13s