Ezen a héten történt a KDE táján (szeptember 9.)

Címkék

Színválasztó és egy üdvözlő alkalmazás készült el a Plasmához. Sok hibát javítottak, különösen a „KRDC rendbehozatalSummer of Code projektben. A Marble-ben sok más fejlesztés mellett elkészítettek egy KPartot is. A Strigi már támogatja a XESAM UserLanguage kéréseket. Sokat dolgoztak az Amarok 2.0-n, főleg a lejátszólista kezelésén. A KSystemLog keresési felületét javították. Újra elkezdték fejleszteni a KRecipest. A KVoctTrain neve mostantól Parley.

Az Eigen matematikai könyvtár új verzióján, az Eigen 2-n újrakezdődött a fejlesztés. A KMLDonkey-t, egy fájlmegosztó felületet elkezdték portolni a KDE 4-re. A Cookon dekorátor néhány részét Pythonról C++-ra portolták. A KDM biztonsági hibáit javították. Lapozási effektusokon dolgoznak a KPresenter fejlesztők. A Kross már támogatja a Falcon programnyelvet. A PyKDE4 megjelenése, ami a KDE fejlesztésének Python kötéseihez szükséges. A KDE SVN házvezetés a többféle, nem karbantartott alkalmazást a KDE 4 kiadásával összefüggésben egy relevánsabb helyre költözteti.

Nézzük, hogy a fentiekből mely programok lehetnek ismeretlenek:

  • KSystemLog: az összes fontosabb naplót képes megmutatni a rendszerről
  • Krecipes: receptrendszerező program, amely képes mértékegységek átváltásra, összetevők állapotinformációinak jelzésére (elég-e az adott összetevő a recepthez), webre exportálásra
  • KMLDonkey: egy GUI az MLDonkey P2P magjához
  • KPresenter: a KOffice részeként egy bemutatókészítő alkalmazás
  • Falcon: egy C++-ban írt szkriptnyelv, mely úgy különbözteti meg magát a többi hasonló nyelvtől, hogy már tervezésekor a következők voltak a célok, melyeket sikerült teljesíteni:
    • egyszerű, de elegáns szintaxis
    • hihetetlenül gyors virtuális gép (Virtual Machine executing portable pseudo kódon alapul, azaz szkriptnyelv)
    • bármilyen alkalmazásba könnyen beilleszthető
    • könnyen bővíthető és karbantartható
    • teljesen multiplatformos
    • teljesen nemzetköziesített

Simon Edwards mutatja be az új Python KDE-s kötést, a PyKDE4-et:

A PyKDE4 egy csokor Python kötés a KDE könyvtáraihoz. Ez teszi lehetővé, hogy olyan KDE-s programokat fejlesszünk, amikben a Python programozási nyelvet használjuk.

A PyKDE4, a Qt 4-hez készült Python kötéseket kínáló, PyQt4-re alapozik. A PyQt4-et Phil Thompson a Riverbank computingnál fejleszti, és már jó ideje szolgálatban van, így képezve stabil és fejlett alapját a PyKDE4-nek. Jim Bublitz a fő ember a PyKDE4 mögött; ő végzi a legtöbb munkát, mint például a PyKDE frissen és működőképesen tartása és a dokumentáció elkészítése. Olyan dolgokban segítek neki, mint a tesztelés, az i18n-nel való foglalkozás, subversion veszekedések, alkalomszerű bemutató programozás Qt/KDE dolgokkal Pythonnal, nem is beszélve azokról a Python alapú projektekről, amiken dolgozom.

A KDE 4.0-s cél az, hogy egy biztos és teljes Python kötést kínáljunk a kdelibs-ben lévő API-k számára, a szükséges támogató eszközök és dokumentációk mellett. Egy olyan fejlesztői környezetet szeretnénk szállítani, ami legalább annyira teljes, mint amire vágysz, amikor KDE-t fejlesztesz C++-ban.

A nagy lépés ezen az elmúlt héten az volt, hogy beletegyük a PyKDE4-et a subversion-be, így azok az emberek, akik a KDE 4.0-s fejlesztéssel foglalkoznak, már használhassák a leginkább működő kötéseket. A 4.0-s kiadásig követni fogjuk a kdelibs API változásait, javítjuk a hibákat, és kitöltünk minden hiányzó bitet és részletet, amit az alkalmazásfejlesztők igényelnek, leginkább olyan dolgokra gondolván itt, mint egy teljes SDK-ban megtalálható funkciók.

Érdekelnek minket a PyKDE4-ben lévő hibák, és azok a helyek, ahol esetleg nincsenek hibák ;-). Különösen várjuk azokat a mintaprogramokat, amik a kötéseket vagy az API-t tesztelik vagy bemutatják, hogyan működnek együtt a különböző osztályok egy Python programban. Bárki, aki kicsit is konyít a programozáshoz, segíthet. Egy jó kiindulópont lehetne néhány kdelibs-ben lévő egység (unit) teszt Pythonra fordítása.

Benoît Jacob beszél a nemrég történt Eigen matematikai könyvtár újraírásáról, az Eigen 2-ről:

Az Eigen egy könnyűsúlyú, lineáris algebrához készült (mátrixok és vektorok) C++ könyvtár, melyet a KDE alkalmazások szükségleteinek szem előtt tartásával fejlesztettek. Az Eigen 2-t megpróbáljuk még az Eigen 1-nél is jobban KDE-szerte használhatóvá tenni.

Következzen egy gyors áttekintés, mit várhatsz az Eigen 2-ben, amit jelenleg is nagyon aktívan fejlesztünk a /branches/work/eigen2 mappában. Teljesen újraírjuk (múlt vasárnap kezdtük), bár vannak ötletek, amiket átveszek az Eigen 1-ből és a TVMET-ből.

Legfontosabb, hogy az Eigen 2 kifejezési sablonokra épült. Ez a C++ technika rengeteg előnnyel jár: növeli a teljesítményt az ideiglenes dolgok elhagyásával és a „nagyon lusta” (very lazy) kiértékelés engedélyezésével, így hozva létre a nagyon egyszerű, de mégis erőteljes API-t.

Az Eigen 2-ben már létre lehet hozni nem négyzet alakú mátrixokat is, szemben az Eigen 1-el. Ez nagyon hasznos lehet néhány KDE-s alkalmazásnak, különösen a KSpreadnek, ami kifejezetten igényelte is ezt a képességet.

Az 1-es verzióhoz hasonlóan, az Eigen 2-ben is léteznek a fix- és a dinamikus méretű objektumok, melyek ugyanazon a kódon osztoznak, a lassú, virtuális eljárások igénybe vétele nélkül, egy C++ technikát, a CRTP-t használva.

Az Eigen 2 forráskódja kisebb, így az őt használó alkalmazások bináris mérete is kisebb lehet, ezt pedig úgy érte el, hogy a vektor és a mátrix osztályok ugyanazt a kódot használhatják. Végül is, a vektor csak egy egyoszlopos mátrix.

Ezeknek a technikáknak köszönhetően az Eigen 2 jelenleg csak 1100 sor kódból áll (az sloccount szerint), ami kivételesen kicsi egy kifejezési sablonokkal rendelkező könyvtárhoz képest. Úgy tervezzük, hogy a végleges verzó körülbelül 3000 sor lesz. Csak összehasonlításképpen, a másik legkisebb kifejezési sablonkönyvtár, amit ismerek, a TVMET, 12.000 sor kóddal bír.

Javier Goday és Urs Wolfer mesélnek egy kicsit a KGet Plasmoidról:

A KGetnek is lett saját Plasmoidja! Javier Goday a múlt héten ezzel foglalkozott, és most már a KDE SVN-ben pihen. Egy ilyen típusú plasmoid elkészítéséhez a KGet D-Bus felületét szerkesztgette egy kicsit. A Plasmoidnak jeleneg két különböző grafikonja van, amik az aktív KGet letöltéseket mutatják:

  • egy sávdiagram, a letöltés százalékáról
  • egy kördiagram, ahol a letöltéseket a méretük és befejezett százalékuk mutatja

A KGet Plasmoid videó letöltése (3.4 MB, AVI)

Javier még mindig dolgozik a Plasmoidon. Ki kell még javítania néhány kisebb problémát (pl. csak a főcsoport átvitelei jelennek meg...), de máris vannak tervei, hogyan fejlessze a Plasmoidot olyan képességekkel, mint a „sebességi előzmények diagram”.

A KGet Javier Goday-jel egy új, valóban aktív fejlesztőt nyert. Máris remek munkát végzett a KGeten, például egy jó D-Bus felület és használhatósági javítások jellemzik munkáját.

A program-használhatósági csapat (Florian Graessle és Tina Trillitzsch) átnézte az egész KGetet ilyen téren. Már javítottuk a legtöbb jelentett hibát. Ha elindítod az új KGetet, biztosan észreveszed majd.

Manolo Valdes fejlesztette a többszálú átviteli plugint. Jelenleg a sebességkorlátozási funkción dolgozik.

Frederik Gladhorn ír egy kicsit a KVoctTrain (immáron Parley) fejlesztéséről:

Egy héten át tartó tanakodás után eldöntöttük, hogy a KVoctTrain ne legyen többé 'Train. Idézet a Wikipédiából:
„Tárgyalás (Parley) egy egyezkedés vagy megbeszélés, különösen ellenségek között fegyverszünetről vagy egyéb dolgokról. A szó eredete Parlée, ami a francia Parler (beszélni) igéből származik.”

A Parley GUI-ja nagy ráncfelvarráson esett keresztül, lehetővé téve egy olyan képességet, ami már három hónapja benne van a programban, de GUI-ból egyszerűen nem volt elérhető. Mostantól egy dokumentumban bármelyik nyelv gyakorolható egy másikkal. Három éve kívánságlistán volt ez.

Statisztikák:

Beküldések: 2589 db történt 231 fejlesztőtől, 6650 sor módosításával és 1658 új fájl hozzáadásával.
Nyitott hibák: 14308
Nyitott kérések: 12998
Megnyitott hibák: 167 az utóbbi 7 napban.
Bezárt hibák: 129 az elmúlt 7 napban.

Beküldési statisztikák:

/trunk/KDE - 915
/trunk/l10n-kde4 - 411
/trunk/extragear - 264
/trunk/playground - 161
/branches/work - 161
/trunk/koffice - 101
/branches/extragear - 97
/branches/stable - 94
/trunk/www - 87
/trunk/kdesupport - 64

További információk és rengeteg statisztika megtekinthető az e heti KDE Commit Digest weblapján.

Hozzászólások

"Manolo Valdes fejlesztette a többszálú átviteli plugint."

Ez hiányzott már nekem. Nem tudom, milyen programok tudnak több szálon letölteni linux alatt, de ha kget tudni fog, akkor nem is fog érdekelni. :)
Már gondolkoztam azon is, vajon azureus tudhatna-e ilyet plug-innal, de sajnos nem tudok java-ban programozni. (Kb. hello world szintű a java tudásom. :))