JuliaPy / JuliaPy/PyCall.jl

Roadmap for PyCall 2.0

Offen
#629 12 Kommentare 7 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

Now that #517 is merged, there are a few things remaining to do before we try to move all PyCall users to the new interface.

First, we need to deprecate some more things (probably in a "1.9" release or similar) to help with the transition:

- [x] deprecate `@pyimport` and `pywrap` — just do `pyimport` now. #633
- [x] deprecate `getindex(::PyObject, ::Integer)` and similar — these will stop subtracting 1 in PyCall 2.0, so they will have to be deprecated for now. #632
- [x] Make sure major PyCall-using packages (PyPlot, SymPy, etcetera) continue to work with PyCall master, albeit with lots of deprecation warnings.

Some other things I would like to change/fix during the big transition:

- [ ] Make automatic conversion more conservative about producing native Julia objects. Convert Python lists to `PyVector`, dictionaries to `PyDict`, and NumPy arrays to `PyArray` by default, but don't convert subclasses of these? (see #617)
- [x] Audit calls to`PyPtr` to see if they need `GC.@protect` for gc safety. #630

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

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