PHP 7 lesz a PHP új nagyobb kiadásának neve

Címkék

Érdekes helyzet és vita alakult ki a PHP új, nagyobb verziójának elnevezése körül. Normál esetben egy nagyobb szoftververzió kiadásakor megnövelik a "major" verziószám értékét eggyel nagyobbra és onnan folytatják a számozást. A PHP következő nagy verziójánál ezt a gyakorlatot nem kívánta minden fejlesztő követni.

Ennek az az oka, hogy pár évvel ezelőtt a PHP projekt kísérletet tett egy új, nagy PHP verzió kiadására. Ez a kísérlet 2005-ben indult. 2010-ben végül a fejlesztők felhagytak vele az Unicode implementációjával kapcsolatos nehézségek miatt.

Ez az új, nagyobb verzió kiadására indított, majd meghiúsult kísérlet is a PHP 6 név alatt futott, így számos erőforrás, cikk, könyv stb. hivatkozik rá e név alatt. Ebből kifolyólag egyes fejlesztők aggódtak, hogy bonyodalmak származnak majd a korábbi, feladott és a most folyó munka megkülönböztethetősége miatt.

A fejlesztők szavazást tartottak az új névről. Az első szavazás 2014. július 20-án indult, de később törölték. A második szavazás 2014. július 23-tól 30-ig tartott.

Az eredmény 24:58 lett a PHP 7 elnevezés javára, így az PHP 5.x után következő nagyobb kiadás neve nem PHP 6, hanem (erősen valószínű, hogy) PHP 7 lesz.

A részletek itt olvashatók.

Hozzászólások

Az ugye csak álom, hogy egy fejlesztőknek szóló szoftvernél szemantikus verziózást használjanak? :(

Szep dolog ez a megkotes, mashol is van, a Maven is elegge sok mindent tamogat:
http://docs.codehaus.org/display/MAVEN/Dependency+Mediation+and+Conflic…

Ennek ellenere lofaszt nem er ez a version range kezeles, ha nem igaz szemantikusan a dolog, azaz hogy az 1.x.y mindig kompatibilis minden olyan 1.z.w verzioval, ahol x > z
Szivtam en mar csodas opensource libekkel, ahol az 1.6 nem volt kompatibilis az 1.5-tel, de persze nem akartak 2.0-nak nevezni. De ettol fuggetlenul egyre tobb projekt koveti a semvert.

Kicsit érdekes, hogy 2.0.0-val indulnak, de eddig semmi gond a verziózással. A 2.0.0 annyit jelent hogy nem kompatibilis az egyébként sem létező 1.0.0-val, viszont API-kompatibilis minden további 2.x.y-nal. Az nem gond, hogy nem stabil, szemantikus verziózásban nem követelmény, hogy x.0.0-nak stabilnak kell lennie (sőt, ha követelmény lenne, akkor a patch verziónak nem lenne sok értelme :))

Egyébként egy ilyen kezdeti fázisban levő projektet szerintem is érdemesebb lett volna 0.x.y-ban tartani, de ők tudják.

"Major version X (X.y.z | X > 0) MUST be incremented if any backwards incompatible changes are introduced to the public API. It MAY include minor and patch level changes. Patch and minor version MUST be reset to 0 when major version is incremented."

Ez meg nem zarja ki, hogy kettovel noveld meg, annyit mond, hogy ha breaking change-et viszel bele a public API-ba, akkor kurvara noveld mar meg a major verziot. Szerintem ez egy helyes dontes volt. Persze az 5.3.3 verzio kevesbe, ott erosen nem sikerult a backwards compatibilityt megtartani, semver szerint ott kellett volna kijonnie a 6.0.0 vagy 7.0.0-nak.

--------------------------------
http://r1pp3rj4ck.wordpress.com/

a php altal hasznal verziozas kb. koveti a semver ajanlasait:
https://wiki.php.net/rfc/releaseprocess
annyi kulonbseggel, hogy micro verzioban nagyon indokolt esetben bekerulhet onmagaban zart(tehat masra nem kihato) uj funkcio.

ps: amugy AFAIK a semver explicit nem tiltja hogy kihagyj egy verziot, csak arrol beszel, hogy milyen valtoztatas milyen verzioba kerulhet be(vagy masik oldalrol nezve milyen verzio milyen valtoztatasokat tartalmazhat).

És most akkor lesz natív Unicode támogatás, vagy megegyeztek abban hogy nem képesek megcsinálni?

az eredeti unicode implementacio megbukott, a miertekrol itt olvashatsz tobbet:
http://www.slideshare.net/andreizm/the-good-the-bad-and-the-ugly-what-h…
azota volt par thread az internalson arrol, kb. meg mindig az a mondas, hogy UCI alapokon lenne erdemes nekivagni, de UTF-16 helyett UTF-8-at lenne internal encodingnak hasznalni.
meg lett meg par alternativ unicode lib is vizsgalva, de nem igazan volt komoly kihivo, illetve jelenleg nincs senki, aki ezt a temat kelloen a szivugyenek erezne, hogy driveolja a munkat.
nem tartom valoszinunek, hogy a PHP7-be ez bekerulhetne, de ne legyen igazam!

Remélem lesznek bátrak, kidobálják a sok legacy hülyeséget, mernek átnevezni, megújítani dolgokat. Ha már ez egy (duplán) nagy verzióváltás...