The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

PAVADINIMAS

perldelta - kas naujo perl v5.8.2

SANTRAUKA

Šis dokumentas aprašo skirtumus tarp perlo 5.8.1 ir 5.8.2 versijų.

Pirma perskaitykite perl58delta, jeigu jūs atnaujinate perlą iš senesnės versijos (kaip kad 5.6.1). perl58delta aprašo skirtumus tarp 5.6.0 ir 5.8.0 versijų, o perl581delta -- skirtumus tarp 5.8.0 ir 5.8.1.

Nesuderinami pokyčiai

Tikimės, kad jokių.

Branduolio patobulinimai

Asiociatyviųjų masyvų atsitiktinė tvarka

Pataisyta asociatyviųjų masyvų atsitiktinė tvarka, kuri buvo įvesta 5.8.1 versijoje. Pasirodo, jog 5.8.1 versija buvo suderinama su 5.8.0 pirminių tekstų lygyje, tačiau kai kuriais atvejais kompiliuotas kodas nebuvo suderinamas. 5.8.2 versijoje yra keletas patobulinimų, kurių pagalba kodas tiek kompiliuotame, tiek pirminiame lygyje yra pilnai suderinamas tiek su 5.8.0, tiek su 5.8.1 versija. Tuo pačiu šis sprendimas išsprendžia potencialią atakos galimybę, dėl kurios ir buvo tobulinamaa asociatyviųjų masyvų atsitiktinė tvarka.

Mes dėkojame Debian projektui už suteiktą pagalbą sprendžiant šias problemas. Žiūrėkite "Algorithmic Complexity Attacks" in perlsec jei norite daugiau sužinoti apie pačią potencialią ataką.

Gijos

Pataisyta keletas atminties nutekėjimo klaidų, susijusių su kintamųjų dalinimusi tarp keleto gijų.

Moduliai ir Pragmos

Atnaujinti Moduliai ir Pragmos

Šie moduliai buvo atnaujinti lyginant su Perl 5.8.1 versija:

Devel::PPPort
Digest::MD5
ExtUtils::MakeMaker

Dabar galima generuoti SIGNATURE bylą perduodant WriteMakefile() funkcijai (SIGN => 1) jei yra įdiegtas Module::Signature. (Šis patobulinimas padarytas Autrijus Tang iš The Perl Foundation gautos stipendijos dėka)

I18N::LangTags
libnet
MIME::Base64
Pod::Perldoc
strict

Pagerinta dokumentacija

Tie::Hash

Pagerinta dokumentacija

Time::HiRes
Unicode::Collate
Unicode::Normalize
UNIVERSAL

Rinktiniai klaidų pataisymai

require dabar laiko rezultatus laikinojoje atmintinėje taip kaip ir buvo tikėtasi, jei keletą kartų nesėkmingai bandoma pakrauti modulį.

Parsris dabar teisingai interpretuoja keletą neatpažintų bylų testavimo operatorių sintaksės klaidų.

Vidiniai pokyčiai

Interpretatoriaus inicializacija dabar vyksta korektiškiau, kai išjungta -DMULTIPLICITY. Tai turėtų padėti išspręsti problemą, kai Perlo interpretatorius buvo keletą kartų inicializuojamas ir sunaikinamas tame pačiame procese.

dup2() dabar naudoja PerlLIO abstrakcijos lygmenį

Problemos, susijusios su kai kuriomis platformomis

Pakeisti dinaminiai linkerio nustatymai Soliaris ir OS X sistemose. Tai turėtų išspręsti kai kurias XS modulių kompiliavimo problemas.

Pataisyti OS/2 lizdų (sockets) ir laikinųjų bylų riktai.

OS X setreuid ir panašios funkcijos nelabai veikia -- perlas dabar stengiasi kuo geriau apeiti apie šią problemą.

Ateities planai

Nuo 5.8.3 mes tikimės išeisti perlo kodą su mažesniais pokyčiais, bet dažniau. Tikimės kad taip greičiau galėsime perkelti riktų pataisymus į stabiliąją kodo šaką ir kartu padarysime perlo atnaujinimo procesą įprastesnį ir ne tokį skausmingą. Tai leis patiems vartotojams geriau pasirinkti kada jiems patogiau atsinaujinti perlą. Dabartinis kodo užšaldymo planas yra toks:

  • 5.8.3 23:59:59 GMT, trečiadienis, Gruodžio 31, 2003

  • 5.8.4 23:59:59 GMT, trečiadienis, Kovo 31, 2004

  • 5.8.5 23:59:59 GMT, trečiadienis, Birželio 30, 2004

Po kodo užšaldymo vyks testavimas, o po to greitai bus išleidžiamas ir galutinis kodas.

Daugiau informacijos: "Future Directions" in perl581delta

Pranešimai apie riktus

Jeigu jūs manote kad radote riktą, pirma reiktų peržvelgti straipsnius comp.lang.perl.misc naujienų grupėje bei perlo riktų duomenų bazėje http://bugs.perl.org/. Taipogi informacijos galima rasti adresu http://www.perl.com/.

Jeigu manote kad radote riktą, apie kurį dar nebuvo pranešta, pasinaudokite perlbug programa, kuri yra kartu su perlu. Pasistenkite sumažinti savo rikto aprašymą iki kuo mažesnio testinio scenarijaus. Jūsų pranešimas apie riktą, kartu su perl -V rezultatu bus nusiųstas adresu perlbug@perl.org, kur jį išanalizuos perlo programuotojai. Riktus galima naršyti adresu http://bugs.perl.org/

Tolimesnė informacija

Byloje Changes yra išsami informacija apie visus pokyčius.

Byloje INSTALL yra aprašymas kaip įdiegti Perlą.

Byloje README yra bendra informacija.

Bylose Artistic ir Copying yra autorinių teisių informacija.