Evaluation into the closed module `Calculus` breaks incremental compilation...
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 28/100
Direzione di ricerca
Inizia da src/symbolic.jl alla riga 96 e analizza il percorso eval alla base del comportamento della compilazione incrementale da Julia 1.4 a 1.5. Poiché non viene fornito alcun MWE, riduci innanzitutto il caso segnalato dell’espressione generata da macro; confronta la valutazione proposta in Main con i test esistenti e considera conclusa l’issue quando la regressione è riproducibile, risolta e la suite di test continua a passare.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I have a complex code that broke when I switched from Julia 1.4 to Julia 1.5. The breakage seems to be intertwined with the Calculus package. I have tried but failed to produce an MWE (sorry about that). The context is that my complex code is doing some code generation in a macro and then calling Calculus.simplify(ex) on some generated expressions. The error I get when running my complex code is
Evaluation into the closed module `Calculus` breaks incremental compilation because the side effects will not be permanent. This is likely due to some other module mutating `Calculus` with `eval` during precompilation - don't do this.
The stack trace leads me to this line. It seems like the eval is the source of the problem. Would there be any harm in evaling in Main rather than Calculus itself? Switching that line to
return (@static (VERSION < v"0.7.0-DEV.5149") ? eval : Core.eval)(Main, ex)
solves my problem and all the tests still pass. I'd be happy to submit a pull request, but not sure if that solution would be accepted.
- Lingua principale
- Julia
- Stelle
- 285
- Fork
- 78
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di JuliaMath/Calculus.jl
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 44/100
JuliaMath/Calculus.jl#157 · 1 commento ·
-
This package is deprecated?Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 45/100
JuliaMath/Calculus.jl#153 · 2 commenti · 5 reazioni ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
JuliaMath/Calculus.jl#150 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
JuliaMath/Calculus.jl#144 ·
-
Prime notation not workingAperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
JuliaMath/Calculus.jl#143 · 2 commenti · 6 reazioni ·
Tutte le issue di JuliaMath/Calculus.jl
Issue simili
-
`enzymexla.linalg.lu` lowering fails for a tall matrix: the permutation is built with the pivot typeAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
EnzymeAD/Enzyme-JAX#3286 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100
SciML/LinearSolve.jl#1359 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
EnzymeAD/ReactantNitro.jl#13 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno