From 198c5c2843461ba52b922acb19cc49496608f5ac Mon Sep 17 00:00:00 2001 From: MilesCranmer Date: Tue, 29 Nov 2022 12:57:02 -0500 Subject: [PATCH 1/8] Create expanded precompilation --- src/PyCall.jl | 12 ++----- src/precompile.jl | 80 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+), 10 deletions(-) create mode 100644 src/precompile.jl diff --git a/src/PyCall.jl b/src/PyCall.jl index 7f0317ec..ad3d754c 100644 --- a/src/PyCall.jl +++ b/src/PyCall.jl @@ -980,16 +980,8 @@ include("serialize.jl") include("pyinit.jl") ######################################################################### -# Precompilation: just an optimization to speed up initialization. -# Here, we precompile functions that are passed to cfunction by __init__, -# for the reasons described in JuliaLang/julia#12256. -precompile(pyjlwrap_call, (PyPtr,PyPtr,PyPtr)) -precompile(pyjlwrap_dealloc, (PyPtr,)) -precompile(pyjlwrap_repr, (PyPtr,)) -precompile(pyjlwrap_hash, (PyPtr,)) -precompile(pyjlwrap_hash32, (PyPtr,)) - -# TODO: precompilation of the io.jl functions +include("precompile.jl") +######################################################################### end # module PyCall diff --git a/src/precompile.jl b/src/precompile.jl new file mode 100644 index 00000000..fb086e86 --- /dev/null +++ b/src/precompile.jl @@ -0,0 +1,80 @@ +# Here, we precompile functions that are passed to cfunction by __init__, +# for the reasons described in JuliaLang/julia#12256. + +precompile(pyjlwrap_call, (PyPtr,PyPtr,PyPtr)) +precompile(pyjlwrap_dealloc, (PyPtr,)) +precompile(pyjlwrap_repr, (PyPtr,)) +precompile(pyjlwrap_hash, (PyPtr,)) +precompile(pyjlwrap_hash32, (PyPtr,)) + + +# The following calls were mostly generated by running PySR +# with `--trace-compile=stderr` (see https://github.com/MilesCranmer/PySR/pull/230) + +# pyjlwrap_new +precompile(Tuple{typeof(pyjlwrap_new), Nothing}) +precompile(Tuple{typeof(pyjlwrap_new), Function}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Float32, 2}}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Float32, 1}}) + +# _pyjlwrap_call +precompile(Tuple{typeof(_pyjlwrap_call), Type, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(_pyjlwrap_call), Function, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) + +# Conversions: +precompile(Tuple{typeof(convert), Type{Tuple{}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{String}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Integer, Integer}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Array{Float32, N} where N, Array{Float32, N} where N}}, PyObject}) +precompile(Tuple{typeof(convert), Type{PyObject}, Type}) +precompile(Tuple{typeof(convert), Type{PyObject}, String}) +precompile(Tuple{typeof(convert), Type{PyObject}, PyObject}) +precompile(Tuple{typeof(convert), Type{PyObject}, Nothing}) +precompile(Tuple{typeof(convert), Type{PyObject}, Function}) +precompile(Tuple{typeof(convert), Type{PyObject}, Bool}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Function, 1}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float32, 2}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float32, 1}}) +precompile(Tuple{typeof(convert), Type{Integer}, PyObject}) +precompile(Tuple{typeof(convert), Type{Float64}, PyObject}) +precompile(Tuple{typeof(convert), Type{Bool}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{T, N} where N where T}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Float32, N} where N}, PyObject}) + +# Ref conversions: +precompile(Tuple{typeof(convert), Type{Ref{PyMethodDef}}, Base.RefValue{PyMethodDef}}) +precompile(Tuple{typeof(unsafe_convert), Type{Ref{Ptr{PyObject_struct}}}, Base.RefValue{Ptr{PyObject_struct}}}) +precompile(Tuple{typeof(unsafe_convert), Type{Ptr{PyObject_struct}}, Ptr{Nothing}}) + +# C Conversions: +precompile(Tuple{typeof(Base.cconvert), Type{Ptr{PyObject_struct}}, Ptr{Nothing}}) +precompile(Tuple{typeof(Base.cconvert), Type, Base.RefValue{PyMethodDef}}) + +# Arrays: +precompile(Tuple{typeof(pyocopy), PyArray{Float32, 2}}) +precompile(Tuple{typeof(pyocopy), PyArray{Float32, 1}}) +precompile(Tuple{Type{PyArray{Float32, 2}}, PyObject, PyArray_Info{Float32, 2}}) +precompile(Tuple{Type{PyArray{Float32, 1}}, PyObject, PyArray_Info{Float32, 1}}) +precompile(Tuple{Type{PyArray_Info{Float32, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Float32, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{typeof(py2array), Type, Array{Any, 1}, PyObject, Int64, Int64}) + +# Assorted: +precompile(Tuple{typeof(weakref_callback), Ptr{PyObject_struct}, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(unsafe_load), Ptr{Ptr{PyObject_struct}}}) +precompile(Tuple{typeof(tuptype), DataType, Bool, Int64}) +precompile(Tuple{typeof(pyreturn), PyObject}) +precompile(Tuple{typeof(pyreturn), Module}) +precompile(Tuple{typeof(pyo2ptr), Type}) +precompile(Tuple{typeof(pyisinstance), PyObject, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(pyfunctionret), Function, Type, Type}) +precompile(Tuple{typeof(pyerror), String, PyError}) +precompile(Tuple{typeof(pydecref), PyObject}) +precompile(Tuple{typeof(pydecref), PyBuffer}) +precompile(Tuple{typeof(pyany_toany), Type}) +precompile(Tuple{typeof(istuplen), Type, Bool, Int64}) +precompile(Tuple{typeof(getproperty), PyError, Symbol}) +precompile(Tuple{typeof(current_python)}) +precompile(Tuple{typeof(_set_finalized)}) +precompile(Tuple{typeof(Base._append!), Array{PyMemberDef, 1}, Base.HasLength, Tuple{PyMemberDef, PyMemberDef}}) +precompile(Tuple{Type{PyDict{Symbol, PyObject, true}}, PyObject}) \ No newline at end of file From 5f628db8603e5ab09c39999b83f608cab9deb277 Mon Sep 17 00:00:00 2001 From: MilesCranmer Date: Tue, 29 Nov 2022 13:10:30 -0500 Subject: [PATCH 2/8] Expand conversions for precompile --- src/precompile.jl | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/precompile.jl b/src/precompile.jl index fb086e86..d5720391 100644 --- a/src/precompile.jl +++ b/src/precompile.jl @@ -35,9 +35,20 @@ precompile(Tuple{typeof(convert), Type{PyObject}, Bool}) precompile(Tuple{typeof(convert), Type{PyObject}, Array{Function, 1}}) precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float32, 2}}) precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float32, 1}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Integer}) +precompile(Tuple{typeof(convert), Type{PyObject}, Float32}) +precompile(Tuple{typeof(convert), Type{PyObject}, Float64}) +precompile(Tuple{typeof(convert), Type{Type}, PyObject}) +precompile(Tuple{typeof(convert), Type{String}, PyObject}) +precompile(Tuple{typeof(convert), Type{Nothing}, PyObject}) +precompile(Tuple{typeof(convert), Type{Function}, PyObject}) +precompile(Tuple{typeof(convert), Type{Bool}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Function, 1}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Float32, 2}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Float32, 1}}, PyObject}) precompile(Tuple{typeof(convert), Type{Integer}, PyObject}) +precompile(Tuple{typeof(convert), Type{Float32}, PyObject}) precompile(Tuple{typeof(convert), Type{Float64}, PyObject}) -precompile(Tuple{typeof(convert), Type{Bool}, PyObject}) precompile(Tuple{typeof(convert), Type{Array{T, N} where N where T}, PyObject}) precompile(Tuple{typeof(convert), Type{Array{Float32, N} where N}, PyObject}) From 8fdc8c9e86a4a5f48d3202ec7fbae95c5491bdb5 Mon Sep 17 00:00:00 2001 From: MilesCranmer Date: Wed, 30 Nov 2022 16:59:11 -0500 Subject: [PATCH 3/8] Precompile more types --- src/precompile.jl | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/src/precompile.jl b/src/precompile.jl index d5720391..fecd0754 100644 --- a/src/precompile.jl +++ b/src/precompile.jl @@ -14,6 +14,10 @@ precompile(pyjlwrap_hash32, (PyPtr,)) # pyjlwrap_new precompile(Tuple{typeof(pyjlwrap_new), Nothing}) precompile(Tuple{typeof(pyjlwrap_new), Function}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Int64, 2}}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Int64, 1}}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Float64, 2}}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Float64, 1}}) precompile(Tuple{typeof(pyjlwrap_new), Array{Float32, 2}}) precompile(Tuple{typeof(pyjlwrap_new), Array{Float32, 1}}) @@ -31,13 +35,21 @@ precompile(Tuple{typeof(convert), Type{PyObject}, String}) precompile(Tuple{typeof(convert), Type{PyObject}, PyObject}) precompile(Tuple{typeof(convert), Type{PyObject}, Nothing}) precompile(Tuple{typeof(convert), Type{PyObject}, Function}) +precompile(Tuple{typeof(convert), Type{PyObject}, Float64}) +precompile(Tuple{typeof(convert), Type{PyObject}, Dict{Function, Int64}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Dict{Function, Dict{K, Int64} where K}}) precompile(Tuple{typeof(convert), Type{PyObject}, Bool}) precompile(Tuple{typeof(convert), Type{PyObject}, Array{Function, 1}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float64, 2}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float64, 1}}) precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float32, 2}}) precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float32, 1}}) -precompile(Tuple{typeof(convert), Type{PyObject}, Integer}) -precompile(Tuple{typeof(convert), Type{PyObject}, Float32}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Int64, 2}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Int64, 1}}) precompile(Tuple{typeof(convert), Type{PyObject}, Float64}) +precompile(Tuple{typeof(convert), Type{PyObject}, Float32}) +precompile(Tuple{typeof(convert), Type{PyObject}, Int64}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Any, 1}}) precompile(Tuple{typeof(convert), Type{Type}, PyObject}) precompile(Tuple{typeof(convert), Type{String}, PyObject}) precompile(Tuple{typeof(convert), Type{Nothing}, PyObject}) @@ -46,6 +58,10 @@ precompile(Tuple{typeof(convert), Type{Bool}, PyObject}) precompile(Tuple{typeof(convert), Type{Array{Function, 1}}, PyObject}) precompile(Tuple{typeof(convert), Type{Array{Float32, 2}}, PyObject}) precompile(Tuple{typeof(convert), Type{Array{Float32, 1}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Float64, 2}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Float64, 1}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Int64, 2}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Int64, 1}}, PyObject}) precompile(Tuple{typeof(convert), Type{Integer}, PyObject}) precompile(Tuple{typeof(convert), Type{Float32}, PyObject}) precompile(Tuple{typeof(convert), Type{Float64}, PyObject}) @@ -62,13 +78,17 @@ precompile(Tuple{typeof(Base.cconvert), Type{Ptr{PyObject_struct}}, Ptr{Nothing} precompile(Tuple{typeof(Base.cconvert), Type, Base.RefValue{PyMethodDef}}) # Arrays: +precompile(Tuple{typeof(pyocopy), PyArray{Int64, 2}}) +precompile(Tuple{typeof(pyocopy), PyArray{Int64, 1}}) +precompile(Tuple{typeof(pyocopy), PyArray{Float64, 2}}) +precompile(Tuple{typeof(pyocopy), PyArray{Float64, 1}}) precompile(Tuple{typeof(pyocopy), PyArray{Float32, 2}}) precompile(Tuple{typeof(pyocopy), PyArray{Float32, 1}}) +precompile(Tuple{typeof(py2array), Type, Array{Any, 1}, PyObject, Int64, Int64}) precompile(Tuple{Type{PyArray{Float32, 2}}, PyObject, PyArray_Info{Float32, 2}}) precompile(Tuple{Type{PyArray{Float32, 1}}, PyObject, PyArray_Info{Float32, 1}}) precompile(Tuple{Type{PyArray_Info{Float32, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) precompile(Tuple{Type{PyArray_Info{Float32, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{typeof(py2array), Type, Array{Any, 1}, PyObject, Int64, Int64}) # Assorted: precompile(Tuple{typeof(weakref_callback), Ptr{PyObject_struct}, Ptr{PyObject_struct}}) From 1c8dca1c76f89c43e64102711f854eeb9e33cd18 Mon Sep 17 00:00:00 2001 From: MilesCranmer Date: Fri, 2 Dec 2022 18:38:00 -0500 Subject: [PATCH 4/8] Add calls from running `runtests.jl` --- src/precompile.jl | 653 +++++++++++++++++++++++++++++++++++++++------- 1 file changed, 563 insertions(+), 90 deletions(-) diff --git a/src/precompile.jl b/src/precompile.jl index fecd0754..f2fa5360 100644 --- a/src/precompile.jl +++ b/src/precompile.jl @@ -8,104 +8,577 @@ precompile(pyjlwrap_hash, (PyPtr,)) precompile(pyjlwrap_hash32, (PyPtr,)) -# The following calls were mostly generated by running PySR -# with `--trace-compile=stderr` (see https://github.com/MilesCranmer/PySR/pull/230) +# The following calls were generated by running a PySR example +# (see https://github.com/MilesCranmer/PySR/pull/230), +# and also test/runtests.jl of PyCall.jl v1.94.1, with `--trace-compile=stderr`, +# and with `@testset` and `@test` replaced with identity macros. +# Overly-specific calls were then removed. +# All calls are sorted in the following list. # pyjlwrap_new -precompile(Tuple{typeof(pyjlwrap_new), Nothing}) -precompile(Tuple{typeof(pyjlwrap_new), Function}) -precompile(Tuple{typeof(pyjlwrap_new), Array{Int64, 2}}) -precompile(Tuple{typeof(pyjlwrap_new), Array{Int64, 1}}) -precompile(Tuple{typeof(pyjlwrap_new), Array{Float64, 2}}) -precompile(Tuple{typeof(pyjlwrap_new), Array{Float64, 1}}) -precompile(Tuple{typeof(pyjlwrap_new), Array{Float32, 2}}) -precompile(Tuple{typeof(pyjlwrap_new), Array{Float32, 1}}) - -# _pyjlwrap_call -precompile(Tuple{typeof(_pyjlwrap_call), Type, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) +precompile(Tuple{FuncWrapper{Tuple{Complex{Int64}}, typeof(sin)}, Complex{Int64}}) +precompile(Tuple{FuncWrapper{Tuple{Int64}, typeof(factorial)}, Int64}) +precompile(Tuple{PyObject, Array{Any, 1}, Vararg{Any}}) +precompile(Tuple{PyObject, Array{Int64, 1}, Vararg{Any}}) +precompile(Tuple{PyObject, Array{String, 1}}) +precompile(Tuple{PyObject, Bool}) +precompile(Tuple{PyObject, Dict{Int64, PyObject}}) +precompile(Tuple{PyObject, Function}) +precompile(Tuple{PyObject, Int64, Vararg{Any}}) +precompile(Tuple{PyObject, Int64, Vararg{Int64}}) +precompile(Tuple{PyObject, Int64}) +precompile(Tuple{PyObject, PyObject, Vararg{Any}}) +precompile(Tuple{PyObject, PyObject, Vararg{PyObject}}) +precompile(Tuple{PyObject, String, Vararg{Any}}) +precompile(Tuple{PyObject, String, Vararg{String}}) +precompile(Tuple{PyObject, UnitRange{Int64}, Vararg{UnitRange{Int64}}}) +precompile(Tuple{PyObject}) +precompile(Tuple{Type{Base.IteratorSize}, PyIterator{PyObject, Base.SizeUnknown}}) +precompile(Tuple{Type{Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{1}, Axes, F, Args} where Args<:Tuple where F where Axes}, typeof(:(==)), Tuple{Array{Float64, 1}, PyArray{Float64, 1}}}) +precompile(Tuple{Type{Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{1}, Axes, F, Args} where Args<:Tuple where F where Axes}, typeof(pyincref), Tuple{PyArray{Ptr{PyObject_struct}, 1}}}) +precompile(Tuple{Type{Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{2}, Axes, F, Args} where Args<:Tuple where F where Axes}, typeof(pyincref), Tuple{PyArray{Ptr{PyObject_struct}, 2}}}) +precompile(Tuple{Type{Dict{K, V} where V where K}, Pair{Int64, PyObject}}) +precompile(Tuple{Type{Dict{Module, PyDict{String, PyObject, true}}}}) +precompile(Tuple{Type{Dict{Ptr{PyObject_struct}, Any}}}) +precompile(Tuple{Type{Docs.Binding}, PyObject, Symbol}) +precompile(Tuple{Type{FuncWrapper{Tuple{Complex{Int64}}, typeof(sin)}}, Function, Dict{Symbol, Any}}) +precompile(Tuple{Type{FuncWrapper{Tuple{Int64}, typeof(factorial)}}, Function, Dict{Symbol, Any}}) +precompile(Tuple{Type{IdDict{DataType, Ptr{PyObject_struct}}}}) +precompile(Tuple{Type{Iterators.Zip{Is} where Is<:Tuple}, Tuple{PyIterator{Int64, Base.SizeUnknown}, UnitRange{Int64}}}) +precompile(Tuple{Type{Iterators.Zip{Is} where Is<:Tuple}, Tuple{PyIterator{PyObject, Base.HasLength}, UnitRange{Int64}}}) +precompile(Tuple{Type{Iterators.Zip{Is} where Is<:Tuple}, Tuple{PyObject, UnitRange{Int64}}}) +precompile(Tuple{Type{NamedTuple{(:dtype,), T} where T<:Tuple}, Tuple{PyObject}}) +precompile(Tuple{Type{Pair{A, B} where B where A}, Int64, PyObject}) +precompile(Tuple{Type{Pair{A, B} where B where A}, Symbol, PyObject}) +precompile(Tuple{Type{Ptr{PyObject_struct}}, Ptr{Nothing}}) +precompile(Tuple{Type{Ptr{PyObject_struct}}, Ptr{PyObject_struct}}) +precompile(Tuple{Type{Ptr{PyObject_struct}}, PyObject}) +precompile(Tuple{Type{PyAny}, PyObject}) +precompile(Tuple{Type{PyArray_Info{Bool, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Bool, 3}}, Bool, Tuple{Int64, Int64, Int64}, Tuple{Int64, Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Complex{Float64}, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Float16, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Float16, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Float32, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Float32, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Float64, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Float64, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Float64, 3}}, Bool, Tuple{Int64, Int64, Int64}, Tuple{Int64, Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Int16, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Int32, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Int32, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Int64, 0}}, Bool, Tuple{}, Tuple{}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Int64, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Int64, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Int64, 3}}, Bool, Tuple{Int64, Int64, Int64}, Tuple{Int64, Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Ptr{Nothing}, 0}}, Bool, Tuple{}, Tuple{}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Ptr{PyObject_struct}, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray_Info{Ptr{PyObject_struct}, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) +precompile(Tuple{Type{PyArray{Bool, 1}}, PyObject, PyArray_Info{Bool, 1}}) +precompile(Tuple{Type{PyArray{Bool, 3}}, PyObject, PyArray_Info{Bool, 3}}) +precompile(Tuple{Type{PyArray{Complex{Float64}, 2}}, PyObject, PyArray_Info{Complex{Float64}, 2}}) +precompile(Tuple{Type{PyArray{Float16, 1}}, PyObject, PyArray_Info{Float16, 1}}) +precompile(Tuple{Type{PyArray{Float16, 2}}, PyObject, PyArray_Info{Float16, 2}}) +precompile(Tuple{Type{PyArray{Float32, 1}}, PyObject, PyArray_Info{Float32, 1}}) +precompile(Tuple{Type{PyArray{Float32, 2}}, PyObject, PyArray_Info{Float32, 2}}) +precompile(Tuple{Type{PyArray{Float64, 1}}, PyObject, PyArray_Info{Float64, 1}}) +precompile(Tuple{Type{PyArray{Float64, 2}}, PyObject, PyArray_Info{Float64, 2}}) +precompile(Tuple{Type{PyArray{Float64, 3}}, PyObject, PyArray_Info{Float64, 3}}) +precompile(Tuple{Type{PyArray{Int16, 1}}, PyObject, PyArray_Info{Int16, 1}}) +precompile(Tuple{Type{PyArray{Int32, 1}}, PyObject, PyArray_Info{Int32, 1}}) +precompile(Tuple{Type{PyArray{Int32, 2}}, PyObject, PyArray_Info{Int32, 2}}) +precompile(Tuple{Type{PyArray{Int64, 0}}, PyObject, PyArray_Info{Int64, 0}}) +precompile(Tuple{Type{PyArray{Int64, 1}}, PyObject, PyArray_Info{Int64, 1}}) +precompile(Tuple{Type{PyArray{Int64, 2}}, PyObject, PyArray_Info{Int64, 2}}) +precompile(Tuple{Type{PyArray{Int64, 3}}, PyObject, PyArray_Info{Int64, 3}}) +precompile(Tuple{Type{PyArray{Int8, 1}}, PyObject, PyArray_Info{Int64, 1}}) +precompile(Tuple{Type{PyArray{Ptr{Nothing}, 0}}, PyObject, PyArray_Info{Ptr{Nothing}, 0}}) +precompile(Tuple{Type{PyArray{Ptr{PyObject_struct}, 1}}, PyObject, PyArray_Info{Ptr{PyObject_struct}, 1}}) +precompile(Tuple{Type{PyArray{Ptr{PyObject_struct}, 2}}, PyObject, PyArray_Info{Ptr{PyObject_struct}, 2}}) +precompile(Tuple{Type{PyArray{T, N} where N where T}, PyObject}) +precompile(Tuple{Type{PyBuffer}, PyObject}) +precompile(Tuple{Type{PyDict{Int64, Int64, true}}, PyObject}) +precompile(Tuple{Type{PyDict{Int64, PyObject, false}}, PyObject}) +precompile(Tuple{Type{PyDict{Int64, String, true}}, PyObject}) +precompile(Tuple{Type{PyDict{K, V, isdict} where isdict where V where K}, Dict{Int64, Int64}}) +precompile(Tuple{Type{PyDict{K, V, isdict} where isdict where V where K}, Dict{Int64, String}}) +precompile(Tuple{Type{PyDict{K, V, isdict} where isdict where V where K}, PyObject}) +precompile(Tuple{Type{PyDict{PyAny, PyAny, true}}, PyObject}) +precompile(Tuple{Type{PyDict{Symbol, PyObject, true}}, PyObject}) +precompile(Tuple{Type{PyIterator{Float64, Base.HasLength}}, PyObject}) +precompile(Tuple{Type{PyIterator{Float64, S} where S}, PyObject}) +precompile(Tuple{Type{PyIterator{Int64, Base.SizeUnknown}}, PyObject}) +precompile(Tuple{Type{PyIterator{Int64, S} where S}, PyObject}) +precompile(Tuple{Type{PyIterator{PyAny, Base.HasLength}}, PyObject}) +precompile(Tuple{Type{PyIterator{PyAny, S} where S}, PyObject}) +precompile(Tuple{Type{PyIterator{PyObject, Base.HasLength}}, PyObject}) +precompile(Tuple{Type{PyIterator{PyObject, Base.SizeUnknown}}, PyObject}) +precompile(Tuple{Type{PyIterator{T, S} where S where T}, PyObject}) +precompile(Tuple{Type{PyMemberDef}, Ptr{Nothing}, Int64, Int64, Int64, Ptr{Nothing}}) +precompile(Tuple{Type{PyObject}, Array{Any, 0}}) +precompile(Tuple{Type{PyObject}, Array{Any, 1}}) +precompile(Tuple{Type{PyObject}, Array{Complex{Float64}, 1}}) +precompile(Tuple{Type{PyObject}, Array{Float64, 3}}) +precompile(Tuple{Type{PyObject}, Array{PyObject, 1}}) +precompile(Tuple{Type{PyObject}, Array{UInt32, 1}}) +precompile(Tuple{Type{PyObject}, Array{UInt8, 1}}) +precompile(Tuple{Type{PyObject}, Base.Generator{UnitRange{Int64}, typeof(identity)}}) +precompile(Tuple{Type{PyObject}, Bool}) +precompile(Tuple{Type{PyObject}, Complex{Int64}}) +precompile(Tuple{Type{PyObject}, Float64}) +precompile(Tuple{Type{PyObject}, Function}) +precompile(Tuple{Type{PyObject}, Int128}) +precompile(Tuple{Type{PyObject}, Int64}) +precompile(Tuple{Type{PyObject}, Module}) +precompile(Tuple{Type{PyObject}, Ptr{Nothing}}) +precompile(Tuple{Type{PyObject}, PyObject}) +precompile(Tuple{Type{PyObject}, String}) +precompile(Tuple{Type{PyObject}, Tuple{Int64}}) +precompile(Tuple{Type{PyObject}, Type}) +precompile(Tuple{Type{PyObject}, UnitRange{Int64}}) +precompile(Tuple{Type{PyTypeObject}}) +precompile(Tuple{Type{Py_buffer}, Ptr{Nothing}, Ptr{PyObject_struct}, Int64, Int64, Int64, Int64, Ptr{Nothing}, Ptr{Nothing}, Ptr{Nothing}, Ptr{Nothing}, Ptr{Nothing}, Ptr{Nothing}, Ptr{Nothing}}) +precompile(Tuple{Type{Ref{Ptr{PyObject_struct}}}, Int64}) +precompile(Tuple{Type{Ref{PyMethodDef}}}) +precompile(Tuple{Type{Ref{Union{Nothing, Tuple{PyObject, Int64}}}}, Tuple{PyObject, Int64}}) +precompile(Tuple{typeof(:(!=)), Ptr{PyObject_struct}, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(:(!=)), PyObject, Float64}) +precompile(Tuple{typeof(:(&)), Int64, PyObject}) +precompile(Tuple{typeof(:(&)), PyObject, Int64}) +precompile(Tuple{typeof(:(&)), PyObject, PyObject}) +precompile(Tuple{typeof(:(*)), Int64, PyObject}) +precompile(Tuple{typeof(:(*)), PyObject, Int64}) +precompile(Tuple{typeof(:(*)), PyObject, PyObject}) +precompile(Tuple{typeof(:(-)), Int64, PyObject}) +precompile(Tuple{typeof(:(-)), PyObject, Int128}) +precompile(Tuple{typeof(:(-)), PyObject, Int64}) +precompile(Tuple{typeof(:(-)), PyObject, PyObject}) +precompile(Tuple{typeof(:(-)), PyObject}) +precompile(Tuple{typeof(:(/)), Int64, PyObject}) +precompile(Tuple{typeof(:(/)), PyObject, Int64}) +precompile(Tuple{typeof(:(/)), PyObject, PyObject}) +precompile(Tuple{typeof(:(<)), PyObject, Float64}) +precompile(Tuple{typeof(:(<)), PyObject, PyObject}) +precompile(Tuple{typeof(:(<<)), Int64, PyObject}) +precompile(Tuple{typeof(:(<<)), PyObject, Int64}) +precompile(Tuple{typeof(:(<<)), PyObject, PyObject}) +precompile(Tuple{typeof(:(<=)), PyObject, Float64}) +precompile(Tuple{typeof(:(<=)), PyObject, PyObject}) +precompile(Tuple{typeof(:(==)), Array{PyObject, 1}, Array{Int64, 1}}) +precompile(Tuple{typeof(:(==)), Array{PyObject, 2}, Array{Int64, 2}}) +precompile(Tuple{typeof(:(==)), Array{Tuple{PyObject, Int64}, 1}, Array{Tuple{Int64, Int64}, 1}}) +precompile(Tuple{typeof(:(==)), Dict{Int64, Int64}, PyDict{Int64, Int64, true}}) +precompile(Tuple{typeof(:(==)), Dict{Int64, PyObject}, Dict{Int64, PyObject}}) +precompile(Tuple{typeof(:(==)), Ptr{PyObject_struct}, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(:(==)), PyArray{Float64, 2}, Array{Float64, 2}}) +precompile(Tuple{typeof(:(==)), PyDict{Int64, Int64, true}, Dict{Int64, Int64}}) +precompile(Tuple{typeof(:(==)), PyDict{PyAny, PyAny, true}, Dict{Int64, String}}) +precompile(Tuple{typeof(:(==)), PyObject, Float64}) +precompile(Tuple{typeof(:(==)), PyObject, Int64}) +precompile(Tuple{typeof(:(==)), Tuple{PyObject, PyObject, PyObject, PyObject, PyObject}, Tuple{PyObject, PyObject, PyObject, PyObject, PyObject}}) +precompile(Tuple{typeof(:(==)), Tuple{PyObject, PyObject, PyObject}, Tuple{PyObject, PyObject, PyObject}}) +precompile(Tuple{typeof(:(==)), Tuple{PyObject, PyObject}, Tuple{PyObject, PyObject}}) +precompile(Tuple{typeof(:(>)), PyObject, Float64}) +precompile(Tuple{typeof(:(>)), PyObject, PyObject}) +precompile(Tuple{typeof(:(>=)), PyObject, Float64}) +precompile(Tuple{typeof(:(>>)), Int64, PyObject}) +precompile(Tuple{typeof(:(>>)), PyObject, Int64}) +precompile(Tuple{typeof(:(>>)), PyObject, PyObject}) +precompile(Tuple{typeof(:(^)), Int64, PyObject}) +precompile(Tuple{typeof(:(^)), PyObject, Int64}) +precompile(Tuple{typeof(:(^)), PyObject, PyObject}) +precompile(Tuple{typeof(:(|)), Int64, PyObject}) +precompile(Tuple{typeof(:(|)), PyObject, Int64}) +precompile(Tuple{typeof(:(|)), PyObject, PyObject}) +precompile(Tuple{typeof(:(~)), PyObject}) +precompile(Tuple{typeof(Base._append!), Array{PyMemberDef, 1}, Base.HasLength, Tuple{PyMemberDef, PyMemberDef}}) +precompile(Tuple{typeof(Base.cconvert), Type, Base.RefValue{PyMethodDef}}) +precompile(Tuple{typeof(Base.cconvert), Type{Ptr{PyObject_struct}}, Ptr{Nothing}}) +precompile(Tuple{typeof(Base.cconvert), Type{Ptr{PyObject_struct}}, PyObject}) +precompile(Tuple{typeof(Base.indexed_iterate), Array{PyObject, 1}, Int64, Int64}) +precompile(Tuple{typeof(Base.indexed_iterate), Array{PyObject, 1}, Int64}) +precompile(Tuple{typeof(Base.indexed_iterate), Pair{Symbol, PyObject}, Int64, Int64}) +precompile(Tuple{typeof(Base.indexed_iterate), Pair{Symbol, PyObject}, Int64}) +precompile(Tuple{typeof(Base.indexed_iterate), Tuple{PyObject, Int64}, Int64, Int64}) +precompile(Tuple{typeof(Base.indexed_iterate), Tuple{PyObject, Int64}, Int64}) +precompile(Tuple{typeof(Base.literal_pow), typeof(:(^)), PyObject, Val{-1}}) +precompile(Tuple{typeof(Base.literal_pow), typeof(:(^)), PyObject, Val{0}}) +precompile(Tuple{typeof(Base.literal_pow), typeof(:(^)), PyObject, Val{4}}) +precompile(Tuple{typeof(Base.vect), PyObject, Vararg{PyObject}}) +precompile(Tuple{typeof(Base.vect), PyObject}) +precompile(Tuple{typeof(Broadcast.broadcasted), Broadcast.DefaultArrayStyle{1}, Function, Base.RefValue{PyObject}, Array{Int64, 1}}) +precompile(Tuple{typeof(Broadcast.broadcasted), Function, Array{Float64, 1}, PyArray{Float64, 1}}) +precompile(Tuple{typeof(Broadcast.broadcasted), Function, PyArray{Ptr{PyObject_struct}, 1}}) +precompile(Tuple{typeof(Broadcast.broadcasted), Function, PyArray{Ptr{PyObject_struct}, 2}}) +precompile(Tuple{typeof(Broadcast.broadcasted), Function, PyObject, Array{Int64, 1}}) +precompile(Tuple{typeof(Broadcast.materialize), Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{1}, Nothing, typeof(:(==)), Tuple{Array{Float64, 1}, PyArray{Float64, 1}}}}) +precompile(Tuple{typeof(Broadcast.materialize), Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{1}, Nothing, typeof(pyincref), Tuple{PyArray{Ptr{PyObject_struct}, 1}}}}) +precompile(Tuple{typeof(Broadcast.materialize), Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{2}, Nothing, typeof(pyincref), Tuple{PyArray{Ptr{PyObject_struct}, 2}}}}) +precompile(Tuple{typeof(Core.Compiler.eltype), Type{Array{PyObject, 1}}}) +precompile(Tuple{typeof(Core.convert), Type{DataType}, Type{Ptr{PyObject_struct}}}) +precompile(Tuple{typeof(Docs.doc), PyObject}) +precompile(Tuple{typeof(Iterators.zip), PyIterator{Int64, Base.SizeUnknown}, Vararg{Any}}) +precompile(Tuple{typeof(Iterators.zip), PyIterator{PyObject, Base.HasLength}, Vararg{Any}}) +precompile(Tuple{typeof(Iterators.zip), PyObject, Vararg{Any}}) +precompile(Tuple{typeof(NoCopyArray), PyObject}) +precompile(Tuple{typeof(PyNULL)}) +precompile(Tuple{typeof(PyReverseDims), Array{Int64, 3}}) +precompile(Tuple{typeof(PyReverseDims), BitArray{3}}) +precompile(Tuple{typeof(Py_Finalize)}) +precompile(Tuple{typeof(Py_GetVersion), Ptr{Nothing}}) +precompile(Tuple{typeof(Py_SetPythonHome), Ptr{Nothing}, VersionNumber, String}) +precompile(Tuple{typeof(__init__)}) +precompile(Tuple{typeof(_insert!), PyObject, Int64, Int64}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{Array{Float64, 2}, String}, Base.Pairs{Symbol, String, Tuple{Symbol}, NamedTuple{(:order,), Tuple{String}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{Array{Int64, 1}, Int64}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{Int64, Int64, Int64}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{Int64, Int64}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{Int64}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{PyObject, Nothing, Nothing, Nothing}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{PyObject, PyObject}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{PyObject}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String, Int64, Float64}, Base.Pairs{Symbol, Any, Tuple{Symbol, Symbol}, NamedTuple{(:b, :c), Tuple{Int64, String}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String, Int64, Float64}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String, String}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String, Tuple{PyObject, PyObject}, Dict{Any, Any}}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String, Tuple{PyObject}, Dict{Any, Any}}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{UnitRange{Int64}, UnitRange{Int64}, UnitRange{Int64}}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) +precompile(Tuple{typeof(_pyjlwrap_call), FuncWrapper{Tuple{Complex{Int64}}, typeof(sin)}, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(_pyjlwrap_call), FuncWrapper{Tuple{Int64}, typeof(factorial)}, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) precompile(Tuple{typeof(_pyjlwrap_call), Function, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) - -# Conversions: -precompile(Tuple{typeof(convert), Type{Tuple{}}, PyObject}) -precompile(Tuple{typeof(convert), Type{Tuple{String}}, PyObject}) -precompile(Tuple{typeof(convert), Type{Tuple{Integer, Integer}}, PyObject}) -precompile(Tuple{typeof(convert), Type{Tuple{Array{Float32, N} where N, Array{Float32, N} where N}}, PyObject}) -precompile(Tuple{typeof(convert), Type{PyObject}, Type}) -precompile(Tuple{typeof(convert), Type{PyObject}, String}) -precompile(Tuple{typeof(convert), Type{PyObject}, PyObject}) -precompile(Tuple{typeof(convert), Type{PyObject}, Nothing}) -precompile(Tuple{typeof(convert), Type{PyObject}, Function}) -precompile(Tuple{typeof(convert), Type{PyObject}, Float64}) -precompile(Tuple{typeof(convert), Type{PyObject}, Dict{Function, Int64}}) -precompile(Tuple{typeof(convert), Type{PyObject}, Dict{Function, Dict{K, Int64} where K}}) -precompile(Tuple{typeof(convert), Type{PyObject}, Bool}) -precompile(Tuple{typeof(convert), Type{PyObject}, Array{Function, 1}}) -precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float64, 2}}) -precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float64, 1}}) -precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float32, 2}}) -precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float32, 1}}) -precompile(Tuple{typeof(convert), Type{PyObject}, Array{Int64, 2}}) -precompile(Tuple{typeof(convert), Type{PyObject}, Array{Int64, 1}}) -precompile(Tuple{typeof(convert), Type{PyObject}, Float64}) -precompile(Tuple{typeof(convert), Type{PyObject}, Float32}) -precompile(Tuple{typeof(convert), Type{PyObject}, Int64}) -precompile(Tuple{typeof(convert), Type{PyObject}, Array{Any, 1}}) -precompile(Tuple{typeof(convert), Type{Type}, PyObject}) -precompile(Tuple{typeof(convert), Type{String}, PyObject}) -precompile(Tuple{typeof(convert), Type{Nothing}, PyObject}) -precompile(Tuple{typeof(convert), Type{Function}, PyObject}) -precompile(Tuple{typeof(convert), Type{Bool}, PyObject}) -precompile(Tuple{typeof(convert), Type{Array{Function, 1}}, PyObject}) -precompile(Tuple{typeof(convert), Type{Array{Float32, 2}}, PyObject}) +precompile(Tuple{typeof(_pyjlwrap_call), Type, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(_pywith), Expr, Nothing, Type, Expr}) +precompile(Tuple{typeof(_pywith), Expr, Symbol, Type, Expr}) +precompile(Tuple{typeof(_set_finalized)}) +precompile(Tuple{typeof(abs), PyObject}) +precompile(Tuple{typeof(append!), PyObject, Array{Int64, 1}}) +precompile(Tuple{typeof(append!), PyObject, PyObject}) +precompile(Tuple{typeof(callsym), Expr}) +precompile(Tuple{typeof(collect), Base.KeySet{Int64, PyDict{Int64, String, true}}}) +precompile(Tuple{typeof(collect), Iterators.Zip{Tuple{PyIterator{Int64, Base.SizeUnknown}, UnitRange{Int64}}}}) +precompile(Tuple{typeof(collect), Iterators.Zip{Tuple{PyIterator{PyObject, Base.HasLength}, UnitRange{Int64}}}}) +precompile(Tuple{typeof(collect), Iterators.Zip{Tuple{PyObject, UnitRange{Int64}}}}) +precompile(Tuple{typeof(collect), PyIterator{Float64, Base.HasLength}}) +precompile(Tuple{typeof(collect), PyIterator{PyAny, Base.HasLength}}) +precompile(Tuple{typeof(collect), PyIterator{PyObject, Base.HasLength}}) +precompile(Tuple{typeof(collect), PyObject}) +precompile(Tuple{typeof(convert), Type{AbstractRange{T} where T}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Bool, N} where N}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Complex{Float64}, N} where N}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Float16, N} where N}, PyObject}) precompile(Tuple{typeof(convert), Type{Array{Float32, 1}}, PyObject}) -precompile(Tuple{typeof(convert), Type{Array{Float64, 2}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Float32, 2}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Float32, N} where N}, PyObject}) precompile(Tuple{typeof(convert), Type{Array{Float64, 1}}, PyObject}) -precompile(Tuple{typeof(convert), Type{Array{Int64, 2}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Float64, 2}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Float64, N} where N}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Function, 1}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Int32, N} where N}, PyObject}) precompile(Tuple{typeof(convert), Type{Array{Int64, 1}}, PyObject}) -precompile(Tuple{typeof(convert), Type{Integer}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Int64, 2}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Int64, N} where N}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{Int8, N} where N}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{PyAny, 1}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{PyObject, 1}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{PyObject, 2}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{PyObject, N} where N}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{T, N} where N where T}, PyObject}) +precompile(Tuple{typeof(convert), Type{Array{UInt8, 1}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Bool}, PyObject}) +precompile(Tuple{typeof(convert), Type{Complex{Float64}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Complex{Int64}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Dates.DateTime}, PyObject}) +precompile(Tuple{typeof(convert), Type{Dates.Date}, PyObject}) +precompile(Tuple{typeof(convert), Type{Dates.Day}, PyObject}) +precompile(Tuple{typeof(convert), Type{Dates.Millisecond}, PyObject}) +precompile(Tuple{typeof(convert), Type{Dates.Second}, PyObject}) +precompile(Tuple{typeof(convert), Type{Dict{Int64, PyObject}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Dict{PyAny, PyAny}}, PyObject}) precompile(Tuple{typeof(convert), Type{Float32}, PyObject}) precompile(Tuple{typeof(convert), Type{Float64}, PyObject}) -precompile(Tuple{typeof(convert), Type{Array{T, N} where N where T}, PyObject}) -precompile(Tuple{typeof(convert), Type{Array{Float32, N} where N}, PyObject}) - -# Ref conversions: +precompile(Tuple{typeof(convert), Type{Function}, PyObject}) +precompile(Tuple{typeof(convert), Type{Int32}, PyObject}) +precompile(Tuple{typeof(convert), Type{Int64}, PyObject}) +precompile(Tuple{typeof(convert), Type{Int8}, PyObject}) +precompile(Tuple{typeof(convert), Type{Integer}, PyObject}) +precompile(Tuple{typeof(convert), Type{Nothing}, PyObject}) +precompile(Tuple{typeof(convert), Type{Pair{Int64, Int64}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Ptr{Nothing}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Ptr{PyGetSetDef}}, Ptr{Nothing}}) +precompile(Tuple{typeof(convert), Type{Ptr{PyMemberDef}}, Ptr{Nothing}}) +precompile(Tuple{typeof(convert), Type{Ptr{PyMethodDef}}, Ptr{Nothing}}) +precompile(Tuple{typeof(convert), Type{Ptr{PyObject_struct}}, Ptr{Nothing}}) +precompile(Tuple{typeof(convert), Type{Ptr{PyObject_struct}}, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(convert), Type{PyArray{T, N} where N where T}, PyObject}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Any, 1}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float32, 1}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float32, 2}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float64, 1}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Float64, 2}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Function, 1}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Int64, 1}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Array{Int64, 2}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Bool}) +precompile(Tuple{typeof(convert), Type{PyObject}, Dict{Function, Dict{K, Int64} where K}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Dict{Function, Int64}}) +precompile(Tuple{typeof(convert), Type{PyObject}, Float32}) +precompile(Tuple{typeof(convert), Type{PyObject}, Float64}) +precompile(Tuple{typeof(convert), Type{PyObject}, Function}) +precompile(Tuple{typeof(convert), Type{PyObject}, Int64}) +precompile(Tuple{typeof(convert), Type{PyObject}, Nothing}) +precompile(Tuple{typeof(convert), Type{PyObject}, PyObject}) +precompile(Tuple{typeof(convert), Type{PyObject}, String}) +precompile(Tuple{typeof(convert), Type{PyObject}, Type}) +precompile(Tuple{typeof(convert), Type{Py_buffer}, Py_buffer}) precompile(Tuple{typeof(convert), Type{Ref{PyMethodDef}}, Base.RefValue{PyMethodDef}}) -precompile(Tuple{typeof(unsafe_convert), Type{Ref{Ptr{PyObject_struct}}}, Base.RefValue{Ptr{PyObject_struct}}}) -precompile(Tuple{typeof(unsafe_convert), Type{Ptr{PyObject_struct}}, Ptr{Nothing}}) - -# C Conversions: -precompile(Tuple{typeof(Base.cconvert), Type{Ptr{PyObject_struct}}, Ptr{Nothing}}) -precompile(Tuple{typeof(Base.cconvert), Type, Base.RefValue{PyMethodDef}}) - -# Arrays: -precompile(Tuple{typeof(pyocopy), PyArray{Int64, 2}}) -precompile(Tuple{typeof(pyocopy), PyArray{Int64, 1}}) -precompile(Tuple{typeof(pyocopy), PyArray{Float64, 2}}) -precompile(Tuple{typeof(pyocopy), PyArray{Float64, 1}}) -precompile(Tuple{typeof(pyocopy), PyArray{Float32, 2}}) -precompile(Tuple{typeof(pyocopy), PyArray{Float32, 1}}) +precompile(Tuple{typeof(convert), Type{String}, PyObject}) +precompile(Tuple{typeof(convert), Type{Symbol}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{AbstractRange{T} where T, AbstractRange{T} where T, AbstractRange{T} where T}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Array{Float32, N} where N, Array{Float32, N} where N}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Float64, String}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Int64, Int64, Int64}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Int64, Vararg{Int64}}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Integer, Integer}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Integer, PyAny}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Integer, Tuple{Float64, String}, Bool}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Integer}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Nothing, Nothing, Nothing}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{PyAny, AbstractString}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{PyAny, Array{T, N} where N where T}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{PyAny, Array{UInt8, 1}}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{PyAny, Bool}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{PyAny, Integer, Integer}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{PyAny, Integer}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{PyAny, Nothing, Nothing, Nothing}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{PyAny, PyAny}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{PyAny, String}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{PyAny}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{String, Integer}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{String, String}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{String}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Vararg{Int64}}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{Vararg{PyAny}}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple{}}, PyObject}) +precompile(Tuple{typeof(convert), Type{Tuple}, PyObject}) +precompile(Tuple{typeof(convert), Type{Type}, PyObject}) +precompile(Tuple{typeof(copy!), PyObject, PyObject}) +precompile(Tuple{typeof(copy), PyArray{Float64, 2}}) +precompile(Tuple{typeof(copy), PyDict{Int64, PyObject, false}}) +precompile(Tuple{typeof(copy), PyDict{PyAny, PyAny, true}}) +precompile(Tuple{typeof(current_python)}) +precompile(Tuple{typeof(delete!), PyDict{String, PyObject, true}, Int64}) +precompile(Tuple{typeof(delete!), PyDict{String, PyObject, true}, String}) +precompile(Tuple{typeof(docstring), Function}) +precompile(Tuple{typeof(eltype), PyArray_Info{Float64, 3}}) +precompile(Tuple{typeof(eltype), PyArray_Info{Int16, 1}}) +precompile(Tuple{typeof(eltype), PyArray_Info{Int32, 2}}) +precompile(Tuple{typeof(eltype), PyArray_Info{Ptr{Nothing}, 0}}) +precompile(Tuple{typeof(eltype), PyArray{Int32, 1}}) +precompile(Tuple{typeof(eltype), PyArray{Int32, 2}}) +precompile(Tuple{typeof(eltype), PyArray{Ptr{PyObject_struct}, 1}}) +precompile(Tuple{typeof(eltype), PyArray{Ptr{PyObject_struct}, 2}}) +precompile(Tuple{typeof(eltype), PyDict{Int64, String, true}}) +precompile(Tuple{typeof(empty!), PyObject}) +precompile(Tuple{typeof(empty), Dict{Any, Any}, Type{Symbol}, Type{PyObject}}) +precompile(Tuple{typeof(f_contiguous), Type{Float64}, Tuple{Int64, Int64, Int64}, Tuple{Int64, Int64, Int64}}) +precompile(Tuple{typeof(f_contiguous), Type{Float64}, Tuple{Int64, Int64}, Tuple{Int64, Int64}}) +precompile(Tuple{typeof(f_contiguous), Type{Float64}, Tuple{Int64}, Tuple{Int64}}) +precompile(Tuple{typeof(findsym), Ptr{Nothing}, Symbol, Vararg{Symbol}}) +precompile(Tuple{typeof(float), PyObject}) +precompile(Tuple{typeof(get), PyObject, Int64}) +precompile(Tuple{typeof(get), PyObject, Tuple{Int64, Int64, Int64}}) +precompile(Tuple{typeof(get), PyObject, Tuple{Int64, Int64}}) +precompile(Tuple{typeof(get), PyObject, Type{PyObject}, Int64}) +precompile(Tuple{typeof(get_format_str), PyBuffer}) +precompile(Tuple{typeof(getindex), Base.RefValue{Union{Nothing, Tuple{PyObject, Int64}}}}) +precompile(Tuple{typeof(getindex), PyArray{Float64, 1}, Int64}) +precompile(Tuple{typeof(getindex), PyArray{Float64, 1}, UnitRange{Int64}}) +precompile(Tuple{typeof(getindex), PyArray{Float64, 2}, Base.IteratorsMD.CartesianIndex{2}}) +precompile(Tuple{typeof(getindex), PyArray{Float64, 2}, Int64, Int64, Int64}) +precompile(Tuple{typeof(getindex), PyArray{Float64, 2}, Int64, Int64}) +precompile(Tuple{typeof(getindex), PyArray{Float64, 3}, Base.IteratorsMD.CartesianIndex{4}}) +precompile(Tuple{typeof(getindex), PyArray{Float64, 3}, Base.IteratorsMD.CartesianIndex{5}}) +precompile(Tuple{typeof(getindex), PyArray{Float64, 3}, Int64, Int64, Int64, Vararg{Int64}}) +precompile(Tuple{typeof(getindex), PyArray{Float64, 3}, Int64, Int64, Int64}) +precompile(Tuple{typeof(getindex), PyArray{Float64, 3}, Int64, Int64}) +precompile(Tuple{typeof(getindex), PyArray{Float64, 3}, Int64}) +precompile(Tuple{typeof(getindex), PyArray{Int64, 1}, UnitRange{Int64}}) +precompile(Tuple{typeof(getindex), PyArray{Int64, 2}, UnitRange{Int64}, Int64}) +precompile(Tuple{typeof(getindex), PyArray{Int64, 2}, UnitRange{Int64}, UnitRange{Int64}}) +precompile(Tuple{typeof(getindex), PyArray{Ptr{Nothing}, 0}}) +precompile(Tuple{typeof(getindex), PyDict{Int64, String, true}, Int64}) +precompile(Tuple{typeof(getindex), Type{PyAny}}) +precompile(Tuple{typeof(getindex), Type{PyMemberDef}}) +precompile(Tuple{typeof(getindex), Type{Tuple{PyObject, Type}}}) +precompile(Tuple{typeof(getproperty), PyArray_Info{Int32, 1}, Symbol}) +precompile(Tuple{typeof(getproperty), PyArray_Info{Int32, 2}, Symbol}) +precompile(Tuple{typeof(getproperty), PyArray{Float64, 1}, Symbol}) +precompile(Tuple{typeof(getproperty), PyArray{Float64, 2}, Symbol}) +precompile(Tuple{typeof(getproperty), PyArray{Int32, 1}, Symbol}) +precompile(Tuple{typeof(getproperty), PyArray{Int32, 2}, Symbol}) +precompile(Tuple{typeof(getproperty), PyDict{Int64, String, true}, Symbol}) +precompile(Tuple{typeof(getproperty), PyError, Symbol}) +precompile(Tuple{typeof(getproperty), PyObject, String}) +precompile(Tuple{typeof(hash), PyObject}) +precompile(Tuple{typeof(hashsalt), Function}) +precompile(Tuple{typeof(hasproperty), PyObject, String}) +precompile(Tuple{typeof(hasproperty), PyObject, Symbol}) +precompile(Tuple{typeof(hassym), Ptr{Nothing}, Symbol}) +precompile(Tuple{typeof(include), String}) +precompile(Tuple{typeof(interpolate_pycode), String}) +precompile(Tuple{typeof(is_pyjlwrap), PyObject}) +precompile(Tuple{typeof(isbuftype), PyObject}) +precompile(Tuple{typeof(iscontiguous), PyBuffer}) +precompile(Tuple{typeof(isempty), PyObject}) +precompile(Tuple{typeof(isequal), PyObject, PyObject}) +precompile(Tuple{typeof(isless), PyObject, Float64}) +precompile(Tuple{typeof(isless), PyObject, PyObject}) +precompile(Tuple{typeof(ispynull), PyObject}) +precompile(Tuple{typeof(istuplen), Type, Bool, Int64}) +precompile(Tuple{typeof(iterate), Dict{Symbol, PyObject}, Int64}) +precompile(Tuple{typeof(iterate), Dict{Symbol, PyObject}}) +precompile(Tuple{typeof(iterate), PyDict{Int64, PyObject, false}, Tuple{PyObject, Nothing}}) +precompile(Tuple{typeof(iterate), PyDict{Int64, PyObject, false}, Tuple{PyObject, Tuple{Tuple{Int64, PyObject}, Tuple{PyObject, PyObject}}}}) +precompile(Tuple{typeof(jlwrap_iterator), Base.Generator{UnitRange{Int64}, typeof(identity)}}) +precompile(Tuple{typeof(jlwrap_iterator), UnitRange{Int64}}) +precompile(Tuple{typeof(keys), PyDict{Int64, String, true}}) +precompile(Tuple{typeof(keys), PyObject}) +precompile(Tuple{typeof(keys), Type{Int64}, PyDict{Int64, String, true}}) +precompile(Tuple{typeof(length), Array{PyObject, 1}}) +precompile(Tuple{typeof(length), PyBuffer}) +precompile(Tuple{typeof(length), PyIterator{PyObject, Base.HasLength}}) +precompile(Tuple{typeof(length), PyObject}) +precompile(Tuple{typeof(make_fname), String}) +precompile(Tuple{typeof(merge), Dict{Symbol, PyObject}, Dict{Any, Any}, Dict{Any, Any}}) +precompile(Tuple{typeof(merge), Dict{Symbol, PyObject}, Dict{Any, Any}, Dict{Symbol, Int64}}) +precompile(Tuple{typeof(merge), Dict{Symbol, PyObject}, Dict{Symbol, PyObject}, Dict{Any, Any}}) +precompile(Tuple{typeof(ndims), PyBuffer}) +precompile(Tuple{typeof(parse_pydef), Expr}) +precompile(Tuple{typeof(parse_pydef_toplevel), Expr}) +precompile(Tuple{typeof(pickle)}) +precompile(Tuple{typeof(pop!), PyObject}) +precompile(Tuple{typeof(popfirst!), PyObject}) +precompile(Tuple{typeof(prepend!), PyObject, Array{Int64, 1}}) +precompile(Tuple{typeof(prepend!), PyObject, PyObject}) +precompile(Tuple{typeof(propertynames), PyObject}) +precompile(Tuple{typeof(push!), PyObject, Int64}) +precompile(Tuple{typeof(pushfirst!), PyObject, Int64}) precompile(Tuple{typeof(py2array), Type, Array{Any, 1}, PyObject, Int64, Int64}) -precompile(Tuple{Type{PyArray{Float32, 2}}, PyObject, PyArray_Info{Float32, 2}}) -precompile(Tuple{Type{PyArray{Float32, 1}}, PyObject, PyArray_Info{Float32, 1}}) -precompile(Tuple{Type{PyArray_Info{Float32, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Float32, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) - -# Assorted: -precompile(Tuple{typeof(weakref_callback), Ptr{PyObject_struct}, Ptr{PyObject_struct}}) -precompile(Tuple{typeof(unsafe_load), Ptr{Ptr{PyObject_struct}}}) -precompile(Tuple{typeof(tuptype), DataType, Bool, Int64}) -precompile(Tuple{typeof(pyreturn), PyObject}) -precompile(Tuple{typeof(pyreturn), Module}) -precompile(Tuple{typeof(pyo2ptr), Type}) -precompile(Tuple{typeof(pyisinstance), PyObject, Ptr{PyObject_struct}}) -precompile(Tuple{typeof(pyfunctionret), Function, Type, Type}) -precompile(Tuple{typeof(pyerror), String, PyError}) -precompile(Tuple{typeof(pydecref), PyObject}) -precompile(Tuple{typeof(pydecref), PyBuffer}) +precompile(Tuple{typeof(pyany_toany), Core.TypeofVararg}) +precompile(Tuple{typeof(pyany_toany), Type{Tuple{Int64, PyAny}}}) +precompile(Tuple{typeof(pyany_toany), Type{Tuple{Int64, Tuple{PyAny, Int8}}}}) +precompile(Tuple{typeof(pyany_toany), Type{Tuple{PyAny, Int64, Vararg{PyAny}}}}) +precompile(Tuple{typeof(pyany_toany), Type{Tuple{PyAny, Int8}}}) precompile(Tuple{typeof(pyany_toany), Type}) -precompile(Tuple{typeof(istuplen), Type, Bool, Int64}) -precompile(Tuple{typeof(getproperty), PyError, Symbol}) -precompile(Tuple{typeof(current_python)}) -precompile(Tuple{typeof(_set_finalized)}) -precompile(Tuple{typeof(Base._append!), Array{PyMemberDef, 1}, Base.HasLength, Tuple{PyMemberDef, PyMemberDef}}) -precompile(Tuple{Type{PyDict{Symbol, PyObject, true}}, PyObject}) \ No newline at end of file +precompile(Tuple{typeof(pybuiltin), String}) +precompile(Tuple{typeof(pybytes), Array{UInt8, 1}}) +precompile(Tuple{typeof(pybytes), String}) +precompile(Tuple{typeof(pycall!), PyObject, PyObject, Type{PyAny}, String, Vararg{Any}}) +precompile(Tuple{typeof(pycall!), PyObject, PyObject, Type{PyObject}, String, Vararg{Any}}) +precompile(Tuple{typeof(pycall!), PyObject, PyObject, Type{Tuple}, String, Vararg{Any}}) +precompile(Tuple{typeof(pycall), PyObject, Type{Bool}, PyObject, Vararg{Any}}) +precompile(Tuple{typeof(pycall), PyObject, Type{Int64}, Int64}) +precompile(Tuple{typeof(pycall), PyObject, Type{PyAny}, Int64}) +precompile(Tuple{typeof(pycall), PyObject, Type{PyAny}, PyObject}) +precompile(Tuple{typeof(pycall), PyObject, Type{PyAny}, String, Vararg{Any}}) +precompile(Tuple{typeof(pycall), PyObject, Type{PyArray{T, N} where N where T}, Array{Int64, 1}}) +precompile(Tuple{typeof(pycall), PyObject, Type{PyArray{T, N} where N where T}, Array{Int64, 2}}) +precompile(Tuple{typeof(pycall), PyObject, Type{PyObject}, Int64}) +precompile(Tuple{typeof(pycall), PyObject, Type{PyObject}, PyObject}) +precompile(Tuple{typeof(pycall), PyObject, Type{PyObject}, String, Vararg{Any}}) +precompile(Tuple{typeof(pycall), PyObject, Type{PyObject}, UnitRange{Int64}}) +precompile(Tuple{typeof(pycall), PyObject, Type{Tuple}, String, Vararg{Any}}) +precompile(Tuple{typeof(pydecref), PyBuffer}) +precompile(Tuple{typeof(pydecref), PyObject}) +precompile(Tuple{typeof(pyerr_clear)}) +precompile(Tuple{typeof(pyerror), String, PyError}) +precompile(Tuple{typeof(pyfunction), Function, Type}) +precompile(Tuple{typeof(pyfunctionret), Function, Nothing, Type}) +precompile(Tuple{typeof(pyfunctionret), Function, Type, Core.TypeofVararg}) +precompile(Tuple{typeof(pyfunctionret), Function, Type, Type}) +precompile(Tuple{typeof(pyimport), Symbol}) +precompile(Tuple{typeof(pyimport_conda), String, String}) +precompile(Tuple{typeof(pyimport_e), String}) +precompile(Tuple{typeof(pyincref_), Ptr{PyObject_struct}}) +precompile(Tuple{typeof(pyisinstance), PyObject, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(pyisinstance), PyObject, PyObject}) +precompile(Tuple{typeof(pyjlwrap_call), Ptr{PyObject_struct}, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(pyjlwrap_dealloc), Ptr{PyObject_struct}}) +precompile(Tuple{typeof(pyjlwrap_getattr), Ptr{PyObject_struct}, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(pyjlwrap_getiter), Ptr{PyObject_struct}}) +precompile(Tuple{typeof(pyjlwrap_hash), Ptr{PyObject_struct}}) +precompile(Tuple{typeof(pyjlwrap_hash32), Ptr{PyObject_struct}}) +precompile(Tuple{typeof(pyjlwrap_iternext), Ptr{PyObject_struct}}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Float32, 1}}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Float32, 2}}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Float64, 1}}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Float64, 2}}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Int64, 1}}) +precompile(Tuple{typeof(pyjlwrap_new), Array{Int64, 2}}) +precompile(Tuple{typeof(pyjlwrap_new), FuncWrapper{Tuple{Complex{Int64}}, typeof(sin)}}) +precompile(Tuple{typeof(pyjlwrap_new), FuncWrapper{Tuple{Int64}, typeof(factorial)}}) +precompile(Tuple{typeof(pyjlwrap_new), Function}) +precompile(Tuple{typeof(pyjlwrap_new), Nothing}) +precompile(Tuple{typeof(pyjlwrap_new), PyTypeObject, Tuple{Base.Generator{UnitRange{Int64}, typeof(identity)}, Base.RefValue{Union{Nothing, Tuple{Int64, Int64}}}}}) +precompile(Tuple{typeof(pyjlwrap_new), PyTypeObject, Tuple{UnitRange{Int64}, Base.RefValue{Union{Nothing, Tuple{Int64, Int64}}}}}) +precompile(Tuple{typeof(pyjlwrap_new), UnitRange{Int64}}) +precompile(Tuple{typeof(pyjlwrap_repr), Ptr{PyObject_struct}}) +precompile(Tuple{typeof(pynamespace), Module}) +precompile(Tuple{typeof(pyo2ptr), Type}) +precompile(Tuple{typeof(pyocopy), PyArray{Bool, 1}}) +precompile(Tuple{typeof(pyocopy), PyArray{Bool, 3}}) +precompile(Tuple{typeof(pyocopy), PyArray{Complex{Float64}, 2}}) +precompile(Tuple{typeof(pyocopy), PyArray{Float16, 1}}) +precompile(Tuple{typeof(pyocopy), PyArray{Float16, 2}}) +precompile(Tuple{typeof(pyocopy), PyArray{Float32, 1}}) +precompile(Tuple{typeof(pyocopy), PyArray{Float32, 2}}) +precompile(Tuple{typeof(pyocopy), PyArray{Float64, 1}}) +precompile(Tuple{typeof(pyocopy), PyArray{Float64, 2}}) +precompile(Tuple{typeof(pyocopy), PyArray{Int32, 1}}) +precompile(Tuple{typeof(pyocopy), PyArray{Int32, 2}}) +precompile(Tuple{typeof(pyocopy), PyArray{Int64, 1}}) +precompile(Tuple{typeof(pyocopy), PyArray{Int64, 2}}) +precompile(Tuple{typeof(pyocopy), PyArray{Int64, 3}}) +precompile(Tuple{typeof(pyocopy), PyArray{Ptr{PyObject_struct}, 1}}) +precompile(Tuple{typeof(pyocopy), PyArray{Ptr{PyObject_struct}, 2}}) +precompile(Tuple{typeof(pyrepr), PyObject}) +precompile(Tuple{typeof(pyreturn), Bool}) +precompile(Tuple{typeof(pyreturn), Complex{Float64}}) +precompile(Tuple{typeof(pyreturn), Float64}) +precompile(Tuple{typeof(pyreturn), Int64}) +precompile(Tuple{typeof(pyreturn), Module}) +precompile(Tuple{typeof(pyreturn), Nothing}) +precompile(Tuple{typeof(pyreturn), PyObject}) +precompile(Tuple{typeof(pyreturn), Tuple{}}) +precompile(Tuple{typeof(pystr), PyObject}) +precompile(Tuple{typeof(pytype_query), PyObject}) +precompile(Tuple{typeof(pytypeof), PyObject}) +precompile(Tuple{typeof(rem), Int64, PyObject}) +precompile(Tuple{typeof(rem), PyObject, Int64}) +precompile(Tuple{typeof(rem), PyObject, PyObject}) +precompile(Tuple{typeof(set!), PyObject, Int64, Int64}) +precompile(Tuple{typeof(set!), PyObject, Int64, String}) +precompile(Tuple{typeof(set!), PyObject, Tuple{Int64, Int64, Int64}, Int64}) +precompile(Tuple{typeof(set!), PyObject, Tuple{Int64, Int64}, Int64}) +precompile(Tuple{typeof(setdata!), PyArray{Float64, 1}, PyObject}) +precompile(Tuple{typeof(setindex!), Base.RefValue{Union{Nothing, Tuple{PyObject, Int64}}}, Nothing}) +precompile(Tuple{typeof(setindex!), Dict{DataType, String}, String, Type{Ptr{PyObject_struct}}}) +precompile(Tuple{typeof(setindex!), Dict{Symbol, PyObject}, PyObject, Symbol}) +precompile(Tuple{typeof(setproperty!), PyObject, String, Int64}) +precompile(Tuple{typeof(setproperty!), PyObject, Symbol, Int64}) +precompile(Tuple{typeof(size), PyArray{Float64, 2}, Int64}) +precompile(Tuple{typeof(size), PyBuffer, Int64}) +precompile(Tuple{typeof(size), PyBuffer}) +precompile(Tuple{typeof(stride), PyBuffer, Int64}) +precompile(Tuple{typeof(strides), PyBuffer}) +precompile(Tuple{typeof(string), String, PyObject, Vararg{Any}}) +precompile(Tuple{typeof(tuptype), DataType, Bool, Int64}) +precompile(Tuple{typeof(unsafe_convert), Type{Ptr{PyObject_struct}}, Ptr{Nothing}}) +precompile(Tuple{typeof(unsafe_convert), Type{Ptr{PyObject_struct}}, PyObject}) +precompile(Tuple{typeof(unsafe_convert), Type{Ref{Ptr{PyObject_struct}}}, Base.RefValue{Ptr{PyObject_struct}}}) +precompile(Tuple{typeof(unsafe_load), Ptr{Ptr{PyObject_struct}}}) +precompile(Tuple{typeof(weakref_callback), Ptr{PyObject_struct}, Ptr{PyObject_struct}}) +precompile(Tuple{typeof(xor), Int64, PyObject}) +precompile(Tuple{typeof(xor), PyObject, Int64}) +precompile(Tuple{typeof(xor), PyObject, PyObject}) \ No newline at end of file From 1ce1ea3d0b199ed4ac2ab724c27061e9bca62b00 Mon Sep 17 00:00:00 2001 From: MilesCranmer Date: Fri, 2 Dec 2022 18:53:40 -0500 Subject: [PATCH 5/8] Remove overly-specific precompile statements --- src/precompile.jl | 53 +---------------------------------------------- 1 file changed, 1 insertion(+), 52 deletions(-) diff --git a/src/precompile.jl b/src/precompile.jl index f2fa5360..1ae88696 100644 --- a/src/precompile.jl +++ b/src/precompile.jl @@ -13,9 +13,8 @@ precompile(pyjlwrap_hash32, (PyPtr,)) # and also test/runtests.jl of PyCall.jl v1.94.1, with `--trace-compile=stderr`, # and with `@testset` and `@test` replaced with identity macros. # Overly-specific calls were then removed. -# All calls are sorted in the following list. -# pyjlwrap_new +# All calls are sorted in the following list. precompile(Tuple{FuncWrapper{Tuple{Complex{Int64}}, typeof(sin)}, Complex{Int64}}) precompile(Tuple{FuncWrapper{Tuple{Int64}, typeof(factorial)}, Int64}) precompile(Tuple{PyObject, Array{Any, 1}, Vararg{Any}}) @@ -34,9 +33,6 @@ precompile(Tuple{PyObject, String, Vararg{String}}) precompile(Tuple{PyObject, UnitRange{Int64}, Vararg{UnitRange{Int64}}}) precompile(Tuple{PyObject}) precompile(Tuple{Type{Base.IteratorSize}, PyIterator{PyObject, Base.SizeUnknown}}) -precompile(Tuple{Type{Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{1}, Axes, F, Args} where Args<:Tuple where F where Axes}, typeof(:(==)), Tuple{Array{Float64, 1}, PyArray{Float64, 1}}}) -precompile(Tuple{Type{Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{1}, Axes, F, Args} where Args<:Tuple where F where Axes}, typeof(pyincref), Tuple{PyArray{Ptr{PyObject_struct}, 1}}}) -precompile(Tuple{Type{Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{2}, Axes, F, Args} where Args<:Tuple where F where Axes}, typeof(pyincref), Tuple{PyArray{Ptr{PyObject_struct}, 2}}}) precompile(Tuple{Type{Dict{K, V} where V where K}, Pair{Int64, PyObject}}) precompile(Tuple{Type{Dict{Module, PyDict{String, PyObject, true}}}}) precompile(Tuple{Type{Dict{Ptr{PyObject_struct}, Any}}}) @@ -54,26 +50,6 @@ precompile(Tuple{Type{Ptr{PyObject_struct}}, Ptr{Nothing}}) precompile(Tuple{Type{Ptr{PyObject_struct}}, Ptr{PyObject_struct}}) precompile(Tuple{Type{Ptr{PyObject_struct}}, PyObject}) precompile(Tuple{Type{PyAny}, PyObject}) -precompile(Tuple{Type{PyArray_Info{Bool, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Bool, 3}}, Bool, Tuple{Int64, Int64, Int64}, Tuple{Int64, Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Complex{Float64}, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Float16, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Float16, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Float32, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Float32, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Float64, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Float64, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Float64, 3}}, Bool, Tuple{Int64, Int64, Int64}, Tuple{Int64, Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Int16, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Int32, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Int32, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Int64, 0}}, Bool, Tuple{}, Tuple{}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Int64, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Int64, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Int64, 3}}, Bool, Tuple{Int64, Int64, Int64}, Tuple{Int64, Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Ptr{Nothing}, 0}}, Bool, Tuple{}, Tuple{}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Ptr{PyObject_struct}, 1}}, Bool, Tuple{Int64}, Tuple{Int64}, Ptr{Nothing}, Bool, PyBuffer}) -precompile(Tuple{Type{PyArray_Info{Ptr{PyObject_struct}, 2}}, Bool, Tuple{Int64, Int64}, Tuple{Int64, Int64}, Ptr{Nothing}, Bool, PyBuffer}) precompile(Tuple{Type{PyArray{Bool, 1}}, PyObject, PyArray_Info{Bool, 1}}) precompile(Tuple{Type{PyArray{Bool, 3}}, PyObject, PyArray_Info{Bool, 3}}) precompile(Tuple{Type{PyArray{Complex{Float64}, 2}}, PyObject, PyArray_Info{Complex{Float64}, 2}}) @@ -137,7 +113,6 @@ precompile(Tuple{Type{PyObject}, Tuple{Int64}}) precompile(Tuple{Type{PyObject}, Type}) precompile(Tuple{Type{PyObject}, UnitRange{Int64}}) precompile(Tuple{Type{PyTypeObject}}) -precompile(Tuple{Type{Py_buffer}, Ptr{Nothing}, Ptr{PyObject_struct}, Int64, Int64, Int64, Int64, Ptr{Nothing}, Ptr{Nothing}, Ptr{Nothing}, Ptr{Nothing}, Ptr{Nothing}, Ptr{Nothing}, Ptr{Nothing}}) precompile(Tuple{Type{Ref{Ptr{PyObject_struct}}}, Int64}) precompile(Tuple{Type{Ref{PyMethodDef}}}) precompile(Tuple{Type{Ref{Union{Nothing, Tuple{PyObject, Int64}}}}, Tuple{PyObject, Int64}}) @@ -201,19 +176,12 @@ precompile(Tuple{typeof(Base.indexed_iterate), Pair{Symbol, PyObject}, Int64, In precompile(Tuple{typeof(Base.indexed_iterate), Pair{Symbol, PyObject}, Int64}) precompile(Tuple{typeof(Base.indexed_iterate), Tuple{PyObject, Int64}, Int64, Int64}) precompile(Tuple{typeof(Base.indexed_iterate), Tuple{PyObject, Int64}, Int64}) -precompile(Tuple{typeof(Base.literal_pow), typeof(:(^)), PyObject, Val{-1}}) -precompile(Tuple{typeof(Base.literal_pow), typeof(:(^)), PyObject, Val{0}}) -precompile(Tuple{typeof(Base.literal_pow), typeof(:(^)), PyObject, Val{4}}) precompile(Tuple{typeof(Base.vect), PyObject, Vararg{PyObject}}) precompile(Tuple{typeof(Base.vect), PyObject}) -precompile(Tuple{typeof(Broadcast.broadcasted), Broadcast.DefaultArrayStyle{1}, Function, Base.RefValue{PyObject}, Array{Int64, 1}}) precompile(Tuple{typeof(Broadcast.broadcasted), Function, Array{Float64, 1}, PyArray{Float64, 1}}) precompile(Tuple{typeof(Broadcast.broadcasted), Function, PyArray{Ptr{PyObject_struct}, 1}}) precompile(Tuple{typeof(Broadcast.broadcasted), Function, PyArray{Ptr{PyObject_struct}, 2}}) precompile(Tuple{typeof(Broadcast.broadcasted), Function, PyObject, Array{Int64, 1}}) -precompile(Tuple{typeof(Broadcast.materialize), Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{1}, Nothing, typeof(:(==)), Tuple{Array{Float64, 1}, PyArray{Float64, 1}}}}) -precompile(Tuple{typeof(Broadcast.materialize), Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{1}, Nothing, typeof(pyincref), Tuple{PyArray{Ptr{PyObject_struct}, 1}}}}) -precompile(Tuple{typeof(Broadcast.materialize), Broadcast.Broadcasted{Broadcast.DefaultArrayStyle{2}, Nothing, typeof(pyincref), Tuple{PyArray{Ptr{PyObject_struct}, 2}}}}) precompile(Tuple{typeof(Core.Compiler.eltype), Type{Array{PyObject, 1}}}) precompile(Tuple{typeof(Core.convert), Type{DataType}, Type{Ptr{PyObject_struct}}}) precompile(Tuple{typeof(Docs.doc), PyObject}) @@ -229,23 +197,6 @@ precompile(Tuple{typeof(Py_GetVersion), Ptr{Nothing}}) precompile(Tuple{typeof(Py_SetPythonHome), Ptr{Nothing}, VersionNumber, String}) precompile(Tuple{typeof(__init__)}) precompile(Tuple{typeof(_insert!), PyObject, Int64, Int64}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{Array{Float64, 2}, String}, Base.Pairs{Symbol, String, Tuple{Symbol}, NamedTuple{(:order,), Tuple{String}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{Array{Int64, 1}, Int64}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{Int64, Int64, Int64}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{Int64, Int64}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{Int64}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{PyObject, Nothing, Nothing, Nothing}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{PyObject, PyObject}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{PyObject}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String, Int64, Float64}, Base.Pairs{Symbol, Any, Tuple{Symbol, Symbol}, NamedTuple{(:b, :c), Tuple{Int64, String}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String, Int64, Float64}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String, String}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String, Tuple{PyObject, PyObject}, Dict{Any, Any}}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String, Tuple{PyObject}, Dict{Any, Any}}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{String}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pycall!), PyObject, PyObject, Tuple{UnitRange{Int64}, UnitRange{Int64}, UnitRange{Int64}}, Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}}) -precompile(Tuple{typeof(_pyjlwrap_call), FuncWrapper{Tuple{Complex{Int64}}, typeof(sin)}, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) -precompile(Tuple{typeof(_pyjlwrap_call), FuncWrapper{Tuple{Int64}, typeof(factorial)}, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) precompile(Tuple{typeof(_pyjlwrap_call), Function, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) precompile(Tuple{typeof(_pyjlwrap_call), Type, Ptr{PyObject_struct}, Ptr{PyObject_struct}}) precompile(Tuple{typeof(_pywith), Expr, Nothing, Type, Expr}) @@ -438,8 +389,6 @@ precompile(Tuple{typeof(ispynull), PyObject}) precompile(Tuple{typeof(istuplen), Type, Bool, Int64}) precompile(Tuple{typeof(iterate), Dict{Symbol, PyObject}, Int64}) precompile(Tuple{typeof(iterate), Dict{Symbol, PyObject}}) -precompile(Tuple{typeof(iterate), PyDict{Int64, PyObject, false}, Tuple{PyObject, Nothing}}) -precompile(Tuple{typeof(iterate), PyDict{Int64, PyObject, false}, Tuple{PyObject, Tuple{Tuple{Int64, PyObject}, Tuple{PyObject, PyObject}}}}) precompile(Tuple{typeof(jlwrap_iterator), Base.Generator{UnitRange{Int64}, typeof(identity)}}) precompile(Tuple{typeof(jlwrap_iterator), UnitRange{Int64}}) precompile(Tuple{typeof(keys), PyDict{Int64, String, true}}) From 08aeb43d639a3f2db2bb213954845afb97e60437 Mon Sep 17 00:00:00 2001 From: MilesCranmer Date: Fri, 2 Dec 2022 19:12:48 -0500 Subject: [PATCH 6/8] `Core.TypeofVarargs` requires newer Julia --- src/precompile.jl | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/precompile.jl b/src/precompile.jl index 1ae88696..cdd75906 100644 --- a/src/precompile.jl +++ b/src/precompile.jl @@ -414,7 +414,6 @@ precompile(Tuple{typeof(propertynames), PyObject}) precompile(Tuple{typeof(push!), PyObject, Int64}) precompile(Tuple{typeof(pushfirst!), PyObject, Int64}) precompile(Tuple{typeof(py2array), Type, Array{Any, 1}, PyObject, Int64, Int64}) -precompile(Tuple{typeof(pyany_toany), Core.TypeofVararg}) precompile(Tuple{typeof(pyany_toany), Type{Tuple{Int64, PyAny}}}) precompile(Tuple{typeof(pyany_toany), Type{Tuple{Int64, Tuple{PyAny, Int8}}}}) precompile(Tuple{typeof(pyany_toany), Type{Tuple{PyAny, Int64, Vararg{PyAny}}}}) @@ -444,7 +443,6 @@ precompile(Tuple{typeof(pyerr_clear)}) precompile(Tuple{typeof(pyerror), String, PyError}) precompile(Tuple{typeof(pyfunction), Function, Type}) precompile(Tuple{typeof(pyfunctionret), Function, Nothing, Type}) -precompile(Tuple{typeof(pyfunctionret), Function, Type, Core.TypeofVararg}) precompile(Tuple{typeof(pyfunctionret), Function, Type, Type}) precompile(Tuple{typeof(pyimport), Symbol}) precompile(Tuple{typeof(pyimport_conda), String, String}) From dcf59887bc6c25b9f1544d112ddd46c0d5d21445 Mon Sep 17 00:00:00 2001 From: MilesCranmer Date: Fri, 2 Dec 2022 19:23:24 -0500 Subject: [PATCH 7/8] Require Julia >= 1.4 --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index 74aca7a5..edd786b7 100644 --- a/Project.toml +++ b/Project.toml @@ -16,7 +16,7 @@ VersionParsing = "81def892-9a0e-5fdd-b105-ffc91e053289" Conda = "1.0" MacroTools = "0.4, 0.5" VersionParsing = "1.0" -julia = "0.7, 1.0" +julia = "1.4" [extras] Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" From 08f3eb1a30bc920bdfffbca3276a6e921863d522 Mon Sep 17 00:00:00 2001 From: MilesCranmer Date: Fri, 2 Dec 2022 19:24:20 -0500 Subject: [PATCH 8/8] Remove Julia 1.0 test --- .github/workflows/system.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/system.yml b/.github/workflows/system.yml index f61f59fc..d32a373c 100644 --- a/.github/workflows/system.yml +++ b/.github/workflows/system.yml @@ -20,7 +20,6 @@ jobs: architecture: [x64] python-version: ['3.x'] julia-version: - - '1.0' - '1' - 'nightly' include: