QGIS

QGIS 3.0 - Hogyan, mikor és mit; azt jelenti

Sokan azt kérdezi:

Mikor fog megjelenni a QGIS 3.0?

Tavaly (2015) a projektcsapat kezdte megvizsgálni, hogy mikor és hogyan kell megjeleníteni a QGIS 3.0-ot. Azt ígérték, egy állás szerint Anita Graser, amelyet egyértelműen eljuttattak terveik felhasználóinak és fejlesztőinek a QGIS 3.0 elindítása előtt. Nemrégiben megpróbálták megfogalmazni a QGIS 3.0 kiadás néhány szempontját, és a bejegyzés végén lehetőség nyílik arra, hogy bemutassuk ötleteinket.

Miért 3.0?

QGis_LogoA fő verzió általában olyan esetekre van fenntartva, amikor nagy változás történik a szoftver API-ján. Ez a szünet nem jelentéktelen döntés a QGIS projekt számára, mivel több százezer felhasználó vagyunk, akik függünk a QGIS-től, mind saját felhasználásunk, mind harmadik félnek nyújtott szolgáltatások szempontjából.

Alkalmanként megtörve az API szükséges elhelyezésére frissítésével architektúra továbbfejlesztett megközelítések, új könyvtárak és korrekciók döntések a múltban.

Milyen következményei vannak a törés az API?

Az egyik ok, amiért ez sérti az API QGIS 3.0, hogy ez lesz nagy hatással, ami eltörhet száz fejlett plugin, ami már nem lesz kompatibilis az új API és a szerzők ezeket csinálni a fejlesztések felülvizsgálata az új API-val való kompatibilitás biztosítása érdekében.

A mértéke a szükséges változtatások nagyban függ:

  • Sok API változások érintik a jelenlegi funkciók.
    Hány pontot plugins szerzők használt alkatrészek az API, amely megváltoztatja.
  • Mik a főbb változtatásokat 3.0?

Jelenleg négy kulcsfontosságú területen, hogy keres változás 3.0:

 

Qt4 a QT5 frissítés: Ez az a könyvtárak alapkészlete, amelyre a QGIS a legfelső szinten épül fel, a platform CORE-funkcionális szintjéről beszélünk. A QT könyvtárakat is biztosít a memóriakezeléshez, a kapcsolódási műveletekhez és a grafikakezeléshez. A Qt4-et (amelyen jelenleg a QGIS alapul) jelenleg nem fejlesztik a Qt könyvtár karbantartói, és bizonyos platformokon (pl. OS X) funkcionalitási problémák merülhetnek fel, és még a bináris verziók kezelését is megkönnyíti (pl. Debian Testing és a következő Debian kiadás „Nyújtás”). A QGIS QT5-be való bevezetésének folyamatában már van egy fontos előrelépés (főleg, amit Matthias Kuhn tett), hogy Marco Bernasocchival együtt a teljes egészében QT5-re épülő Android "QField"-en dohányoznak. Vannak azonban bizonyos korlátozások az új QT5 üzembe helyezésében és futtatásában a QGIS-re gyakorolt ​​hatása miatt – különösen a webböngésző widgetjei esetében (főleg a Composerben és néhány más helyen a QGIS-ben).

PyQt4 a PyQt5 frissítés: Ezek azok a Qt Python nyelv relatív változásai, amelyeken a QGIS Python API alapul. Felmerül változtatni a QT5 C ++ könyvtár, az is várható, hogy át PyQt5 python könyvtárat, hogy így kihasználják az előnyeit az új API Python QT5.
Frissítése Python Python 2.7 3 hogy: Jelenleg minden a Python 2.7-en fut. A Python 3 a python legújabb verziója, amelyet a projekt vezetői javasolnak. A Python 2 kissé inkompatibilis a Python 3-mal (szinte arányos a QGIS 2 és a Qgis 3 közötti inkompatibilitással). Sok fejlesztő a Python Python 3-at nagyrészt visszafelé kompatibilisvé tette a Python 2-vel, de a visszafelé való kompatibilitás nem olyan nagy.
Javítása QGIS saját API: A verziók közötti API-kompatibilitás fenntartásának egyik problémája az, hogy hosszú távon együtt kell élnie a tervezési döntéseivel. A QGIS mindent megtesz annak érdekében, hogy ne törje meg az API-t egy sor kisebb kiadás során. A jelenleg nem támogatott API-val rendelkező 3.0-s QGIS-verzió kiadása lehetőséget ad számunkra, hogy „tisztaságban tartsunk” azáltal, hogy kijavítjuk az API-ban azokat a dolgokat, amelyeknek nem vagyunk megfelelőek. Megtekintheti az ideiglenes listát 3.0 javasolt változtatások az API.

Hogyan lehet módosítani a 3.0 API

Mint már említettük, a 3.0 verzió meg fog szakadni a QGIS 2.x verziójával, és fennáll annak a lehetősége, hogy sok plugin, meglévő alkalmazás és egyéb kód meg fog törni. Tehát mit lehet tenni a változások enyhítése érdekében? Matthias Kuhn, Jürgen Fischer, Nyall Dawson, Martin Dobias és más legfejlettebb fejlesztők keresték a módját az API-törések változásának mérséklésének, miközben tovább folytatták a könyvtárak következő generációjára és saját belső API-jára épülő QGIS kódalap továbbfejlesztését. A QGIS Projekt Irányító Bizottság legutóbbi ülésén különböző lehetőségeket tártunk fel. Az alábbi táblázat összefoglalja, amit Matthias Kuhn kegyesen összefoglalt, és amelyeket részben megpróbáltunk átírni ebben a cikkben Kiadták a blogjában:


QGIS 2.14 LTR
QGIS 2.16 ??? QGIS 3.0
Megjelenés dátuma Február végén 4 2.14 hónap ¿Cycle 8 hónap?
jegyzetek Frissítve alapvető QGIS python kódot Python 3, hogy kompatibilis legyen, és támogatja PyQt5 (részleges végrehajtása kulcsfontosságú funkciókat pl konzol, python mag plugins stb)
Qt4 Si

Elavult a Debian Stretch (esedékes egy év alatt)

(-webkit eltávolítva)

Igen Nem
Qt5 Nem

Hiányzik QWebView - új csere nem minden platformon. Szintén balesetveszélyes QPainter Engine.

Si Si
PyQt4 Si Si Nem
PyQt5 Nem Si Si
Python 2 Si Si Nem
Python 3 Nem Si Si
Razzia API Nem Nem Si
göngyölő
PyQt5 -> PyQt4
~ 90% biztosítja a kompatibilitást
Nem Si Si
többségi Binary alapján Qt4 alapján Qt4 alapján Qt5
finanszírozási prioritást Python göngyölő

Két fontos tudnivaló a javaslat Matthias:

Az első fázisbanA munkát a sorozat befejezéséhez 2.x támogatás QT5, PyQt5 Python 3.0 támogató Qt4, PyQt4 és Python 2.7. Ez azt jelenti, hogy minden változást történt az első szakaszban lenne kompatibilis a korábbi verziók 2.x. Python funkciók kerülnek be fogják bevezetni, hogy a régi API PyQt4 még lehet használni, különösen, ha lefordítva QT5, PyQt5, Python 3.0. Segítségével QGIS fordították Qt4, PyQt4 és Python 2.7 nem törik kompatibilitást.
A második fázisbanÚgy működik, hogy készítsen QGIS 3.0, bevezeti az új API, teljesen eltávolítani a Python 2.7 támogatása, beleértve a Qt4 és PyQt4. Új funkciók a python belépő az első fázisban is megmarad, figyelembe véve az összes python kódot, fejlesztések 2.x változatai QGIS folytatja a munkát a 3.x változatai QGIS. Ez a fázis is várható, hogy vezessenek be változások a QGIS API eltörhet néhány bővítmény. Ennek megoldására ad útmutatást aa migráció kipróbálni, hogy megkönnyítse a migráció változat 2.x QGIS 3.x QGIS változatok.

kikötés emptor

Van néhány trükk, hogy kell kérni, hogy a migráció QGIS 3.0 hang kevésbé fájdalmas.

  • 1. SMeg kell jegyezni, hogy bár a fentiekben bemutatott megközelítés megpróbálja minimalizálni a pluginokban lévő python parancsfájlok munkáját, ez nem feltétlenül lesz 100%. Nagy valószínűséggel lesz olyan eset, amikor a kódot módosítani kell, és legalábbis minden esetben valószínűleg felül kell vizsgálni annak biztosítása érdekében, hogy továbbra is megfelelően működjön.
    2. Nincs formálisan megállapított pénzügyi erőforrás azoknak a fejlesztőknek a fizetésére, akik önként fordítják idejüket erre a migrációs folyamatra. Emiatt nagyon nehéz pontos időkeretet megadni, hogy a folyamat egyes részei mennyi ideig tartanak. Ezt a bizonytalanságot figyelembe kell venni a tervezés során. Természetesen adományokat várunk ennek megvalósításához.
    3. Vannak olyan fejlesztők és intézmények, amelyek finanszírozzák a QGIS 2.x sorozat új szolgáltatásait, és ez befolyásolhatja az Ön munkáját. E projektek terveibe és költségvetésébe be kell illeszteni bizonyos összegeket a QGIS 3.x platformra való áttérés kezelésére.
    4. Ha a QGIS csapat "totális változáson" dolgozik, akkor viszonylag rövid idő lesz, amíg a QGIS instabil lesz és folyamatosan változik a QGIS 3.0 folyamatos frissítése miatt.
    4. Ha „evolúciós” módon fejleszt, fennáll annak a veszélye, hogy a 3.0-s fejlesztés tovább tarthat, hacsak nem hűséges fejlesztői csoport dolgozik rajta, és nem készíti fel a portolásra.

    javaslatok

Mindezek fényében a fenti információkat, az egyik két cselekvési irányok javasolt:

1 javaslat:

Engedje el a 2.16 ideiglenes verziót, majd kezdje el prioritásként a 3.0 verzió fejlesztését, 8 hónapos fejlesztési idővel. A 2.16 verzióban végrehajtott változtatások kompatibilisek lesznek a 3.0 verzióval (lásd python3 / pytq5).

2 javaslat:

Futószár egyszer 3.0 egy sokkal hosszabb időtartamú ablak QT5, Python 3.0 és PyQt5 és kérje a fejlesztők, hogy nem a munka 3.0. Folytassa 2.x változatok gyakorisága is a szokásos, amíg 3.0 kész.

alternatív javaslatokat

Van alternatív javaslata? A QGIS érdekli a lehetséges alternatívákat. Ha javaslatot szeretne benyújtani, kérjük, küldje el a címre tim@qgis.org „QGIS 3.0 javaslat” tárggyal.

Követnie kell a QGIS blogHonnét jött ez a kiadvány.

Golgi Alvarez

Író, kutató, földgazdálkodási modellek szakértője. Részt vett olyan modellek koncepciójának kidolgozásában és megvalósításában, mint például: Nemzeti Vagyonigazgatási Rendszer SINAP Hondurasban, Közös Önkormányzatok vezetési modellje Hondurasban, Integrált Kataszterkezelési Modell - Nyilvántartás Nicaraguában, Területi SAT igazgatási rendszer Kolumbiában . 2007 óta a Geofumadas tudásblog szerkesztője és az AulaGEO Akadémia létrehozója, amely több mint 100 GIS - CAD - BIM - Digital Twins témájú kurzust tartalmaz.

Kapcsolódó cikkek

Szólj hozzá

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

Vissza a lap tetejére gombra