Magyar Opera

Opera Labs: SPDY támogatás!

A pénteki napon nem a 12.5 első előzetese volt az egyetlen fontos operás esemény. Azt megelőzően mutatták be ugyanis az Opera Labs legfrissebb kiadását is, ami az aktuális 12.01 és az SPDY protokoll találkozása. Ez egy, a Google által fejlesztett átviteli protokoll, ami nem a megszokott HTTP helyett, hanem annak kiegészítésére készült.

A projekt célja az volt, hogy a mára elavultnak tekinthető HTTP-t felhozza a 2010-es évek internetjének színvonalára. A főbb célkitűzések a következők voltak:

  • Egyszerre több elem beolvasása egy kapcsolaton keresztül
  • A szerver is kezdeményezhessen adatátvitelt
  • Tömörített, kevésbé redundáns fejlécek és válaszok
  • Tömörített adatátvitel (opcionális)

A lényeg tehát az adatátvitel egyszerűsítése, ezáltal a forgalom gyorsítása és a késleltetések csökkentése volt. A Google mérései szerint az oldalak betöltődési sebessége akár 40-60%-kal gyorsulhat. Fontos továbbá, hogy ez nem pusztába kiáltott szó, számos - elsősorban persze Google-höz kötődő - oldal már most is támogatja, például a Gmail, de a Twitter is fent van a listán, ami várhatóan tovább nő majd. A böngészők közül értelemszerűen a Chrome, illetve a Firefox ismeri az új protokollt.

Az Opera Labs kiadás - egy két apró kivételtől eltekintve - mind a SPDY draft 2, mind a SPDY draft 3 specifikációt támogatja. A protokoll használata automatikus, nem jelenik meg hozzá semmilyen extra ikon, vagy jelzés. Később - ha az API-ba implementálták a szükséges változásokat - lehetséges lesz olyan kiegészítők létrehozása, amik valamilyen formában mutatják, ha a böngésző SPDY-t használ.

Mint minden Labs kiadás, ez is csak 1-2 funkcióra koncentrál (jelen esetben az SPDY implementációra), tehát csak azt töltse le, aki ezt akarja kipróbálni. A 12.5 újításai nincsenek benne! Hogy melyik verzióba kerül be az SPDY támogatás, az jelenleg nem ismert, szerintem a 12.5-ben már benne lesz, de erre egyelőre senki ne építsen.

Opera Labs kiadás, SPDY támogatással (b1495):

Opera 12.5 "Marlin": első felvonás (b1497)

Opera Marlin

Miután a hét elején nem érkezett semmi a Desktop Team oldaláról, bíztam benne, hogy a végére csak kapunk néhány hibajavítást. Legnagyobb örömömre azonban ennél sokkal több történt: tegnapelőtt elérhetővé vált az Opera következő verziójának az első (pre-alfa) előzetese.

Az eddigi hagyományoknak megfelelően a kódnév megint egy gyors halfajra utal: a Barracuda (11.1), a Swordfish (11.5), a Tunny (11.6) és a Wahoo (12) után itt van nekünk Marlin (magyarul vitorláshal), a leendő 12.5(?). Láthatóan lépdelünk felfelé a leggyorsabb halak listáján, már csak egy van, ami megelőzi...

Szintén hagyománynak tekinthető, hogy - a korábbi szokással ellentétben - az első kiadás igencsak félkész, nem csak a stabilitást és megbízhatóságot (avagy mit várhatunk egy pre-alfától?), hanem a funkcionalitást illetően is. Persze ez nem jelenti azt, hogy üres kézzel érkezik, csak éppen nincsen benne minden, ami a végleges kiadásra (el)várható.

Ahogy az várható volt, a Presto megint előbbre lépett, mondjuk az általam vártnál kisebb mértékben (itt mondjuk hadd utaljak az előző bekezdésemre). Egészen pontosan a 2.11.310-et üdvözölhetjük a fedélzeten. Ha ezt az információt összekombináljuk az Opera támogatási oldalával, akkor láthatjuk, miben léptünk előre.

Amint látható, a lista nem hosszú, de nem is elhanyagolható és a jövőben várhatóan tovább bővül majd (van még pár újítás a tarsolyukban). A legtöbb figyelmet talán a legutolsó elem kapta. Arról van szó ugyanis, hogy az Opera meg fogja érteni a -webkit előtagú CSS utasításokat is, amiket belsőleg átfordít a saját -o előtagú, vagy előtag nélküli kifejezésére.

Ezeket az előtagokat eredetileg arra találták ki, hogy a még formálódó szabványokat az egyes böngészőfejlesztők kísérleti jelleggel (lásd példásul az Opera Labs kiadásokat) implementálhassák, de mégis jelezve legyen a nem végleges formátum. A Webkitnél ez a -webkit, a Firefoxnál a -moz, az Operánál az -o, az IE-nél pedig az -ms. Ennek elvileg az az értelme, hogy a webfejlesztők kipróbálhassák az újításokat, illetve, hogy kiderüljenek a specifikáció gyengeségei.

Például ha egy speciálisabb eset nincs egyértelműen definiálva, akkor a böngészők fejlesztői saját szájuk íze szerint kitömik a hézagot. Ez általában különböző implementációkat eredményez az egyes böngészők között, de egyben felhívja a szabvány szerkesztőinek figyelmét a problémára. Amit aztán a végleges specifikációban, javítva, immáron előtagok nélkül jelenik meg.

Elvileg. Merthogy a gyakorlatban a webfejlesztők sokszor leragadnak az első implementációnál (ami gyakran a webkites), és azt építik be a honlapokba. Ezzel még nincsen baj, de ezt később sem módosítják, hanem meghagyják úgy, ahogy van, és sokszor nemhogy a többi előtagot, de még az előtag nélküli, "hivatalos" verziót sem írják bele a kódba.

Ekkor jön az a rész, hogy a Chrome meg a Safari mondjuk lekerekíti a keretet (-webkit-border-radius), a többiek meg nem. Nem azért, mert nem képesek rá, hanem mert az effektust létrehozó utasítás "nem nekik szól", tehát figyelmen kívül hagyják. A felhasználó meg csak azt látja, hogy a böngészője "nem támogatja az oldalt"...

Az Opera különösen szenved ezektől a diszkriminációktól (is), ezért - jórészt kényszerűen - úgy döntöttek, hogy "elfogadják" az általuk is támogatott funkciókat takaró -webkit előtagú utasításokat is. Ez kétségkívül nem elegáns, az előtagok tiszteletben tartására irányuló lépés, sokkal inkább a praktikum vezérli.

Személy szerint egyet tudok érteni vele, én eleve be sem vezettem volna az előtagokat, ezzel kikényszerítve a böngészők és a honlapok fejlesztőiből, hogy műveikben kövessék az éppen aktuális hivatalos implementációt. Amikor pedig a szabvány elnyeri végleges formáját, az óhatatlanul előforduló kezdeti kompatibilitási kilengések után minden böngésző (és minden honlap) esetén beállna az egyensúly.

A Mac felhasználók további fegyelmességként megkapták a majd az OSX 10.8-ban (Mountain Lion) debütáló egységes, rendszerszintű értesítések előzetes támogatását. Legalábbis annak első változatát.

A többieknek "marad" a számos, elsősorban technikai jellegű változtatás és javítás, valamint a stabilitásnövelés. A teljes listát a Desktop Team bejegyzésében olvashatjátok (angolul). Elvileg a 12.01-hez kapott javítások is mind benne vannak ebben a változatban, ami tehát nem a 12.01 újabb verziója, hanem a Opera Next név alatt futó 12.5 első előzetese.

Ismert hibák:

  • Fagyás a billentyűzetesemények figyelését tartalmazó oldal betöltődése alatti billentyűzet-kombinációk használatakor
  • Bizonyos billentyűzet-kombinációk nem működnek
  • Régebbi billentyűzet-kezelési problémák Mac alatt

Letöltés (Opera "Marlin" 12.50.1497):

süti beállítások módosítása