`pyimport_conda` yields `PyObject NULL`
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 25/100
Línea de trabajo
Comienza reproduciendo el ejemplo en un entorno nuevo e inspecciona src/symbolic.jl, especialmente la configuración de pyimport_conda("sympy.stats", "sympy"). Compárala con el módulo independiente que funciona y con las advertencias sobre módulos cerrados; estará terminado cuando Soss.stats devuelva un objeto utilizable sin un segfault.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hi,
I'm hitting a bug I'm having some trouble replicating, hope you might be able to steer me in the right direction.
At a very high level, the problem happens when I
- Import
sympy.statsin the standard way within my package using Soss(my package) externally- Make a call involving
stats
Result:
julia> Soss.stats
PyObject NULL
In some cases, this triggers a segfault.
For context, I've tried this in both Julia 1.2 and 1.3.
Also, the following works with no trouble:
# in a file
module M
import PyCall
import SymPy
using SymPy: Sym, sympy, symbols
export SymPy, stats, symbols
stats = PyCall.pyimport_conda("sympy.stats", "sympy")
SymPy.import_from(stats)
import Distributions.Normal
export Normal
Normal(μ::Sym, σ::Sym) = stats.Normal(:Normal, μ,σ) |> SymPy.density
Normal(μ,σ) = Normal(promote(μ,σ)...)
end
using Distributions
using .M
stats.Normal(:Normal, symbols(:μ),1) |> SymPy.density
Normal(symbols(:μ),1)
# in the REPL
julia> stats.Normal(:Normal, symbols(:μ),1) |> SymPy.density
NormalDistribution(μ, 1)
julia> Normal(symbols(:μ),1)
NormalDistribution(μ, 1)
The code in symbolic.jl takes this same approach. But when I try from a fresh environment, ...
(Soss#dev) pkg> add Soss#dev
Updating registry at `~/.julia/registries/General`
Updating git-repo `https://github.com/JuliaRegistries/General.git`
Updating git-repo `https://github.com/cscherrer/Soss.jl.git`
Resolving package versions...
Updating `~/Soss#dev/Project.toml`
[8ce77f84] + Soss v0.6.0 #dev (https://github.com/cscherrer/Soss.jl.git)
Updating `~/Soss#dev/Manifest.toml`
... (other dependencies)
[8f4d0f93] + Conda v1.3.0
[24249f21] + SymPy v1.0.7
julia> using Soss
[ Info: Recompiling stale cache file /home/chad/.julia/compiled/v1.2/Soss/vXX0U.ji for Soss [8ce77f84-9b61-11e8-39ff-d17a774bf41c]
# *LOTS* OF THESE
WARNING: eval into closed module SymPy:
Expr(:block, #= Symbol("/home/chad/.julia/packages/SymPy/1Cwgd/src/utils.jl"):252 =#, Expr(:call, :P, Expr(:parameters, Expr(:..., :kwargs)), Expr(:::, :ex, :SymbolicObject), Expr(:..., :args)) = Expr(:block, #= Symbol("/home/chad/.julia/packages/SymPy/1Cwgd/src/utils.jl"):252 =#, Expr(:call, Expr(:call, :getproperty, PyCall.PyObject(o=0x00007f6c2c085778), "P"), Expr(:parameters, Expr(:..., :kwargs)), :ex, Expr(:..., :args))))
** incremental compilation may be fatally broken for this module **
julia> Soss.stats
PyObject NULL
Any ideas?
- Lenguaje dominante
- Julia
- Estrellas
- 282
- Forks
- 59
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de JuliaPy/SymPy.jl
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 45/100
-
Not updated in registryAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 35/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
Todos los issues de JuliaPy/SymPy.jl
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
SciML/DiffEqNoiseProcess.jl#342 ·
-
Broken links in the docsAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
oxfordcontrol/COSMO.jl#211 ·
-
documentation
Dificultad 2/5 Medio día Aptitud para principiantes 65/100
Los mantenedores suelen responder en 6 días