replace error
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
Reproduce el ejemplo de Julia y comienza en SymPy/src/patternmatch.jl:94, donde el stack trace muestra que replace se llama a través de PyCall. Compara los argumentos pasados a replace de Python e inspecciona la conversión de PyCall indicada por pyiterator.jl:150. Se considera terminado cuando el ejemplo ya no genera el RuntimeError mostrado y replace devuelve la expresión transformada esperada.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
a = SymPy.Wild("a")
ex = log(sin(x)) + tan(sin(x^2))
replace(ex, (sin(x)).func, a -> sin(2a))
it export errors as following. Do the developers know how to fix it?
PyError ($(Expr(:escape, :(ccall(#= /Users/gangchen/.julia/packages/PyCall/ttONZ/src/pyfncall.jl:44 =# @pysym(:PyObject_Call), PyPtr, (PyPtr, PyPtr, PyPtr), o, pyargsptr, kw))))) <class 'RuntimeError'>
RuntimeError('Julia exception: MethodError: no method matching iterate(::getfield(Main, Symbol("##74#75")))\nClosest candidates are:\n iterate(!Matched::Core.SimpleVector) at essentials.jl:568\n iterate(!Matched::Core.SimpleVector, !Matched::Any) at essentials.jl:568\n iterate(!Matched::ExponentialBackOff) at error.jl:199\n ...\nStacktrace:\n [1] jlwrap_iterator(::Function) at /Users/gangchen/.julia/packages/PyCall/ttONZ/src/pyiterator.jl:150\n [2] pyjlwrap_getiter(::Ptr{PyCall.PyObject_struct}) at /Users/gangchen/.julia/packages/PyCall/ttONZ/src/pyiterator.jl:131\n [3] macro expansion at /Users/gangchen/.julia/packages/PyCall/ttONZ/src/exception.jl:81 [inlined]\n [4] __pycall!(::PyCall.PyObject, ::Ptr{PyCall.PyObject_struct}, ::PyCall.PyObject, ::Ptr{Nothing}) at /Users/gangchen/.julia/packages/PyCall/ttONZ/src/pyfncall.jl:44\n [5] _pycall!(::PyCall.PyObject, ::PyCall.PyObject, ::Tuple{PyCall.PyObject,getfield(Main, Symbol("##74#75"))}, ::Int64, ::Ptr{Nothing}) at /Users/gangchen/.julia/packages/PyCall/ttONZ/src/pyfncall.jl:29\n [6] _pycall!(::PyCall.PyObject, ::PyCall.PyObject, ::Tuple{PyCall.PyObject,getfield(Main, Symbol("##74#75"))}, ::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/gangchen/.julia/packages/PyCall/ttONZ/src/pyfncall.jl:11\n [7] #call#111(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}, ::PyCall.PyObject, ::PyCall.PyObject, ::Vararg{Any,N} where N) at /Users/gangchen/.julia/packages/PyCall/ttONZ/src/pyfncall.jl:89\n [8] (::PyCall.PyObject)(::PyCall.PyObject, ::Vararg{Any,N} where N) at /Users/gangchen/.julia/packages/PyCall/ttONZ/src/pyfncall.jl:89\n [9] #replace#91(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}, ::Function, ::SymPy.Sym, ::PyCall.PyObject, ::Function) at /Users/gangchen/.julia/packages/SymPy/woEOA/src/patternmatch.jl:94\n [10] replace(::SymPy.Sym, ::PyCall.PyObject, ::Function) at /Users/gangchen/.julia/packages/SymPy/woEOA/src/patternmatch.jl:94\n [11] top-level scope at In[181]:3\n [12] eval at ./boot.jl:328 [inlined]\n [13] softscope_include_string(::Module, ::String, ::String) at /Users/gangchen/.julia/packages/SoftGlobalScope/cSbw5/src/SoftGlobalScope.jl:218\n [14] execute_request(::ZMQ.Socket, ::IJulia.Msg) at /Users/gangchen/.julia/packages/IJulia/gI2uA/src/execute_request.jl:67\n [15] #invokelatest#1 at ./essentials.jl:742 [inlined]\n [16] invokelatest at ./essentials.jl:741 [inlined]\n [17] eventloop(::ZMQ.Socket) at /Users/gangchen/.julia/packages/IJulia/gI2uA/src/eventloop.jl:8\n [18] (::getfield(IJulia, Symbol("##15#18")))() at ./task.jl:259')
File "/Users/gangchen/.julia/conda/3/lib/python3.7/site-packages/sympy/core/basic.py", line 1341, in replace
value = sympify(value)
File "/Users/gangchen/.julia/conda/3/lib/python3.7/site-packages/sympy/core/sympify.py", line 325, in sympify
if iterable(a):
File "/Users/gangchen/.julia/conda/3/lib/python3.7/site-packages/sympy/core/compatibility.py", line 288, in iterable
iter(i)
- 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 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
-
Out-of-place JLArray/GPU problem with VectorContinuousCallback scalar-indexes (callback cache built with CPU zeros)Posiblemente ocupada @ChrisRackauckas-Claude la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
SciML/OrdinaryDiffEq.jl#4813 ·
Los mantenedores suelen responder en 1 día
-
ARKODE: callbacks that modify `u` throw MethodError on reinitPosiblemente ocupada @devmotion la tomó hace 1 día. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
SciML/Sundials.jl#575 ·
-
broken links in docsAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día