JuliaPy / JuliaPy/PyCall.jl

`using PyPlot` crashes package precompilation on Julia v1.10.0-beta1

Offen
#1,047 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Julia
Sterne
1.5k
Forks
186
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

[This is also cross-posted on PyPlot https://github.com/JuliaPy/PyPlot.jl/issues/572 - if it is not useful here pls close it]

Consider the following package:
```
(@v1.10) pkg> generate Test1
Generating project Test1:
Test1\Project.toml
Test1\src\Test1.jl
```
Where `PyPlot` has been added via `Pkg.add` to dependencies and `Test1.jl` contains
```
module Test1
using PyPlot
end
```

In that case `using Test1` (after `Pkg.activate`) goes into an endless loop (I pressed Ctrl+C at some point):
```
julia> using Test1
Precompiling Test1
Progress [> ] 0/1
◑ Test1 Waiting for background task / IO / timer. Interrupt to inspect
Interrupted: Exiting precompilation...

1 dependency had warnings during precompilation:
┌ Test1 [ddca8587-cad1-46e2-86b4-b726afea1d60]
│ [pid 7156] waiting for IO to finish:
│ TYPE[FD/PID] @UV_HANDLE_T->DATA
│ timer @00000228c312eca0->00000228bf815db0

```

When this is run on a fresh Julia installation it seemed that it additionally tries to install matplotlib via Conda (regardless of the fact that it is already present due to PyPlot being built earlier).

Tested on Julia 1.10 beta1, Windows11 as well Linux by myself and @giordano

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Reproduce the issue with the generated Test1 package, its Test1.jl entry point, and `using PyPlot` on Julia 1.10.0-beta1. Observe the precompilation hang and any unexpected matplotlib installation on a fresh environment. Done means the package precompiles and loads without hanging, while retaining the reported PyPlot setup.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
julia, python
Bereich
build-system, tooling
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.