LibreOffice 4.1 és 4.2 Mit javítottunk a LibreOffice 4.1-ben és 4.2-ben?
Tímár András LibreOffice-fejlesztő
[email protected] [email protected]
800
0 Sep 10 Oct 10 Nov 10 Dec 10 Jan 11 Feb 11 Mar 11 Apr 11 May 11 Jun 11 Jul 11 Aug 11 Sep 11 Oct 11 Nov 11 Dec 11 Jan 12 Feb 12 Mar 12 Apr 12 May 12 Jun 12 Jul 12 Aug 12 Sep 12 Oct 12 Nov 12 Dec 12 Jan 13 Feb 13 Mar 13 Apr 13 May 13 Jun 13 Jul 13 Aug 13
LibreOffice-fejlesztők Cumulative Number ofkumulatív LibreOf ficeszáma New Code Committers Új kódhozzájárulók Új Comm New
Old Comm Régi
700
600
500
400
300
200
100
Egyre több fejlesztő Kódhozzájárulók száma havi LibreOf fice Code Committers perbontásban Month 350 325 300
Az elmúlt 12 hónapban aktív fejlesztők száma az idő függvényében
275 250
Trend: kb. 70-ről 100 fölé ment 24 hónap alatt
225 200
Az adott hónapban kódot hozzáadó fejlesztők száma
175 150 125 100 75 50 25
Aug 13
Jul 13
Jun 13
May 13
Apr 13
Mar 13
Feb 13
Jan 13
Dec 12
Nov 12
Oct 12
Sep 12
Aug 12
Jul 12
Jun 12
May 12
Apr 12
Mar 12
Feb 12
Jan 12
Dec 11
Nov 11
Oct 11
Sep 11
0
Egyre több kódhozzájárulás LibreOffice Code Commits During Last 24 LibreOffice kódhozzájárulások az elmúlt 24Months hónapban 2500
Trend: 1500-ról 1900-ra 24 hónap alatt 2000
1500
1000
Aug 13
Jul 13
Jun 13
May 13
Apr 13
Mar 13
Feb 13
Jan 13
Dec 12
Nov 12
Oct 12
Sep 12
Aug 12
Jul 12
Jun 12
May 12
Apr 12
Mar 12
Feb 12
Jan 12
Dec 11
Nov 11
Oct 11
0
Sep 11
500
„Hosszú farok” Az elmúlt 12of hónap kódhozzájárulásainak száma fejlesztőkre lebontva Long Tail LibreOffice Development (last 12 months) 2000 1800 1600 1400 1200 1000 800 600 400 200 0
Devs Commits 50-nélwith több50+ commit
Caolán McNamara (Red Hat) Stephan Bergmann (RedHat) Kohei Yoshida (Collabora) David Tardon (RedHat) Noel Grandin (Volunteer) Luboš Luňák (Collabora) Matúš Kukan (Volunteer) Michael Meeks (Collabora) Norbert Thiebaud (Volunteer) Thomas Arnhold (Volunteer) Jan Holesovsky (Collabora) Takeshi Abe (Volunteer) Rafael Dominguez (Volunteer) Zolnai Tamás (Volunteer) Bjoern Michaelsen (Canonical) Xisco Fauli (Volunteer) Thorsten Behrens (SUSE) Marcos de Sousa (Volunteer) Tomaž Vajngerl (Volunteer) Ariel Constenla-Haile (AOO) Petr Mladek (SUSE) Javier Fernandez (Volunteer) Philipp Riemer (Volunteer) Siqi Liu (Volunteer) Olivier Hallot (Volunteer)
Tor Lillqvist (Collabora) Michael Stahl (RedHat) Markus Mohrhard (Volunteer) Miklos Vajna (Collabora) Andras Timar (Collabora) Julien Nabet (Volunteer) Eike Rathke (RedHat) Fridrich Štrba (SUSE) Peter Foley (Volunteer) Lionel Elie Mamane (Volunteer) Noel Power (SUSE) Cédric Bosdonnat (SUSE) Armin Le Grand (AOO) Andrzej J.R. Hunt (Volunteer) Ivan Timofeev (Volunteer) Andre Fisher (AOO) Chris Rossmanith (Volunteer) David Ostrovsky (Volunteer) Khaled Hosny (Volunteer) Ricardo Montania (Volunteer) Antonio Fernandez (Volunteer) Rene Engelhard (Volunteer) Radek Doulik (Volunteer) Arnaud Versini (Volunteer)
Magyarok ✔
✔
✔
✔
Kelemen Gábor ✔ honosítás Németh László ✔ nyelvi eszközök, LibreLogo, betűk stb. Tímár András ✔ ESC-tag, honosítás, buildek stb. Vajna Miklós ✔ ESC-tag, Writer, RTF
Babati Bence Bartek András Boros István Ciorba Edmond Csikós Tamás Dézsi Szabolcs Dózsa Bálint Irányossy Knoblauch Artúr Jenei Gábor Kéménczy Kálmán Király Ádám Csaba Mihályi Dániel Mocsi Gergő Nagy Róbert
Páder Rezső Palenik Mihály Pintér Krisztián Rabi Péter Stefanik Gábor Szalai Kálmán „KAMI” Szuhánszky Tamás Tomcsik Bence Túri István Uray M. János Vastag Dávid Varga Viktor Zolnai Tamás
Magyarok – gyakornok a Novellnél ✔
✔
✔
✔
Kelemen Gábor ✔ honosítás Németh László ✔ nyelvi eszközök, LibreLogo, betűk stb. Tímár András ✔ ESC-tag, honosítás, buildek stb. Vajna Miklós ✔ ESC-tag, Writer, RTF
Babati Bence Bartek András Boros István Ciorba Edmond Csikós Tamás Dézsi Szabolcs Dózsa Bálint Irányossy Knoblauch Artúr Jenei Gábor Kéménczy Kálmán Király Ádám Csaba Mihályi Dániel Mocsi Gergő Nagy Róbert
Páder Rezső Palenik Mihály Pintér Krisztián Rabi Péter Stefanik Gábor Szalai Kálmán „KAMI” Szuhánszky Tamás Tomcsik Bence Túri István Uray M. János Vastag Dávid Varga Viktor Zolnai Tamás
Magyarok – GSOC ✔
✔
✔
✔
Kelemen Gábor ✔ honosítás Németh László ✔ nyelvi eszközök, LibreLogo, betűk stb. Tímár András ✔ ESC-tag, honosítás, buildek stb. Vajna Miklós ✔ ESC-tag, Writer, RTF
Babati Bence Bartek András Boros István Ciorba Edmond Csikós Tamás Dézsi Szabolcs Dózsa Bálint Irányossy Knoblauch Artúr Jenei Gábor Kéménczy Kálmán Király Ádám Csaba Mihályi Dániel Mocsi Gergő Nagy Róbert
Páder Rezső Palenik Mihály Pintér Krisztián Rabi Péter Stefanik Gábor Szalai Kálmán „KAMI” Szuhánszky Tamás Tomcsik Bence Túri István Uray M. János Vastag Dávid Varga Viktor Zolnai Tamás
A LibreOffice kiadási ciklusa ● Több verzió párhuzamosan ● 4.0.5 (→ 4.0.6) ● 4.1.2 (→ 4.1.3) ● „master” (→ 4.2.0) ● Félévente főkiadás ● Időzítve a fontos Linux-disztribúciók kiadásához ● Eleinte havonta, később ritkábban hibajavító kiadás
A fejlesztés irányelvei ● Időalapú kiadás: evolúció, nem revolúció ● Korszerűsítés, „nagy” célok ● Java-függőség megszüntetése ● Widget Layout ● Calc core újraírás ● Refaktorálás, elavult osztályok kiírása a kódból ● Interoperabilitás fejlesztése ● Mobil (Android, iOS)
LibreOffice 4.1
Betűkészlet beágyazása (ODF, MSOXML)
Képforgatás Writerben
Színátmenetes háttér szövegkeretben
Calc ● Lépcsős vonaltípus az XY diagramoknál ● Új munkalapfüggvények ● ACOT, ACOTH, ARABIC, BASE, BINOM.DIST.RANGE (B) [BINOM.DIST.RANGE], BITAND, BITLSHIFT, BITOR, BITRSHIFT, BITXOR, COMBINA, COT, COTH, CSC, CSCH, DAYS, DECIMAL, FORMULATEXT (FORMULA) [FORMULA], GAMMA, GAUSS, IFNA, IMCOSH, IMCOT, IMCSC, IMCSCH, IMSEC, IMSECH, IMSINH, IMTAN, ISFORMULA, MUNIT, NUMBERVALUE, PDURATION (DURATION) [PDURATION], PERMUTATIONA, PHI, RRI, SEC, SECH, SHEET, SHEETS, SKEW.P (SKEWP) [SKEWP], UNICHAR, UNICODE, XOR ● (felületen megjelenő név), [ODFF belső név]
Impress Fényképalbum
Mocsi Gergely
BASIC szintaxiskiemelés a súgóban ● Vastag Dávid, Tímár András 3.6
4.0
4.1
Legutóbbi dokumentumok
Base – LIMIT funkció
Zolnai Tamás, FSF.hu-ösztöndíjas
Base – LIMIT és SELECT DISTINCT funkció
Zolnai Tamás, FSF.hu-ösztöndíjas
Javított elválasztás Calcban és Drawban ● Németh László
OpenType helyi formák (locl)
Oldalsáv ● Nem új (IBM Lotus Symphony 2008) ● Nem szép (még) ● Fix koordinátás elrendezés ● Kísérleti funkció a 4.1-ben ● Eszközök – Beállítások – Speciális lapon lehet bekapcsolni ● Utána Nézet – Oldalsáv a menüből
Oldalsáv
LibreOffice 4.2
HTML körlevél (e-mail)
HTML körlevél (e-mail)
Karakterszegélyek
Animáció-előrejelző
Képes vagy rá! ● Szabad szoftver, nyílt forrás... ● Tanulmányozható, javítható, házilag is! ● Nem feltétlenül nehéz! ● Két hibajavítási példa a múlt hétről
fdo#69548 – a bejelentés ● Microsoft DOCX formátumba mentve a szóközt tartalmazó hiperhivatkozások a dokumentum újranyitása után nem tartalmaznak szóközt, és a hivatkozás nem működik. ● Például legyen egy bekezdésen egy könyvjelző: „ez egy könyvjelző”. Mutasson erre egy hivatkozás: „#ez egy könyvjelző”. ● Mentés / megnyitás: a könyvjelző maradt, a hivatkozás változott: „#ez egykönyvjelző”.
fdo#69548 – a hibakeresés ● Csak DOCX formátumnál... ● Mentett példadokumentum vizsgálata:
itt még jó! → Import probléma
fdo#69548 – a hibakeresés ● Importáló kód megkeresése ● Hol kezeli le a LibreOffice az „anchor” taget? ● git grep vagy opengrok segítségével megvan: ● writerfilter modul
fdo#69548 – a hibás kód ● ● ● ● ● ● ● ● ● ● ● ● ●
2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238
if (bInString) { if (bInStringNext) { sPart += OUString(' '); sPart += sToken; } else { sPart += sToken; aResult.push_back(sPart); } }
fdo#69548 – a javított kód ● ● ● ● ● ● ● ● ● ●
2226 2227 2228 2229 2230 2231 2232 2233 2234
if (bInString) { sPart += OUString(' '); sPart += sToken; if (!bInStringNext) { aResult.push_back(sPart); } }
fdo#69548 – patch, unit test, kész vagyunk ● void Test::testFdo69548() ●{ ● // The problem was that the last space in target URL was removed ● CPPUNIT_ASSERT_EQUAL(OUString("#this is a bookmark"), getProperty
(getRun(getParagraph( 1), 1), "HyperLinkURL")); ●}
OOO-816 Körlevéltündér, egyedi megszólítás ● A Körlevéltündér Megszólítás létrehozása ablakból az Új gombra kattintással elérhető Egyedi megszólítás ablakban a Megszólítás elem esetén furcsák a magyar választási lehetőségek. A megszólítás elemeit elméletileg egyesével kellene összerakni, de itt valahogy a mellékelt ábrán szereplő lehetőségek látszanak. Persze kézzel ki lehet törölni a felesleges részeket, de mégis. Egy helyes megszólítás összerakás pl. így nézne ki: <Megszólítás> <Írásjel> De ez most egyet választva a megszólítási lehetőségek közül így kerül feloldásra: Kedves 2! Kovács úr!
OOO-816 Körlevéltündér, egyedi megszólítás
OOO-816 Körlevéltündér, egyedi megszólítás ● git grep vagy opengrok, rákeresünk a szövegre ● adódik az azonosító: RA_SALUTATION_MALE és RA_SALUTATION_FEMALE ● hol használja ezeket? csak itt: sw/source/ui/dbui/mmaddressblockpage.cxx ● értsük meg a logikát, kell-e külön férfi és női köszöntés? ● nem, mert szabadon átírható nőre és férfire külön ● csak köszöntés legyen a listában, a titulus külön mező
Időbecslés ● A novelles gyakornokok (~20 fő) példáján alapulva: ● Forrás letöltése, git megismerése, első build: 1-2 nap ● Első egyszerű hiba kijavítása: 1-2 nap ● Konklúzió: ● érdemes belevágni!