autor: Alan Knowles alan_k@php.net (tłumaczenie: Robert Janeczek rashid@php.net)
Bardzo interesujące tematy poruszane w tym tygodniu na php.pear.dev, do tego
4 nowe wydania, 1 propozycja pakietu i dyskusje na temat tagów PHPDoc, konwerterów
Dockbooka w OpenOffice, zarządzaniu uprawnieniami i ulepszonym pakiecie Net_Whois.
Antônio Carlos Venâncio Júnior spytał o standardy znaczników PHPDic (tagi wewnątrz klas PHP pomagające automatycznie stworzyć dokumentację), po przejrzeniu obecnych różnorodnych sposobów korzystania z PHPDoc w PEAR, Antônio zaoferował się do napisania krótkiej instrukcji na stronie PEAR, teraz można znaleźć listę standardowych znaczników i formatów tutaj:
http://www.phpdoc.de/kongress/tags.html
Dla lepszej integracji z modułem SOAP Baba Buehler dodał ISO 8601 do możliwych formatów w metodzie format() klasy Date. Korzystać można z tego przy pomocy następującej składni:
%o - zwraca surowe przesunięcie strefy czasowej jako ±hh:mm
%O - zwraca skorygowane przesunięcie dst jako ±hh:mm
np.
Date::format("%Y-%m-%dT%H:%M:%S%O");
Pierre-Alain Joye cieżko pracował nad konwerterem z OpenOffice do Docbook, do tego pracuje nad konwersją z wyników polecenia 'Save as HTML' z MS Word do Docbook. Aktualną wersję można wypróbować - jest tutaj:
http://www.pearfr.org/docconvert/Doc_Convert-0.1.tgz
Wciąż trwała dyskusja o dodawaniu wsparcia w PHPDoc do generacji Docbooka z komentarzy, i Alan Knowles nadesłał swoje pierwsze próby dokonania tego przy użyciu jego narzędzia PHP_CodeDoc, dodając że zadanie nie jest takie proste na jakie wygląda...
Radek Maciaszek wspomniał, że pracuje nad klasą do kolejkowania i wysyłania dużych ilości emaili, zamierzał wysłać ją do przeglądu Richardowi Heyes po dodaniu komentarzy.
Wolfram Kreising testował PHPUnit i odkrył, że jest znacznie bardziej dokładny niż byśmy tego chcieli dla luźno pisanego kodu, np. działał źle kiedy porównywano "1" == 1 w tablicach. Nadal szuka pomysłów jak to rozwiązać.
Tematem wciąż interesującym dla wszystkich programistów jest połączenie mechanizmów autentykacji, autoryzacji, zarządzania uprawnieniami i obsługi użytkowników. Tym razem nastąpił znaczący krok naprzód w dyskusji nad pakietem LiveUser nad którym pracuje Marcus Wolff. Wygląda na to, że udostępnia on elastyczne standardowe API, które pozwoli dodać specyficzną funkcjonalność dla szerokiego zakresu aplikacji wciąż przy użyciu jednego API. Pozwoli to zintegrować pakiety do forum dyskusyjnych i innych typów aplikacji bez potrzeby modyfikacji kodu dla każdej z nich z osobna.
Jedynym problemem jest integracja pakietu wewnątrz struktury nazewnictwa PEAR. Najciekawszymi sugestiami z punktu widzenia biorących udział w dyskusji są Auth_LiveUser, Perm_LiveUser. Wykorzystanie jednej z głównych kategorii w połączeniu ze szczegółową nazwą 'LiveUser' są preferowane w stosunku do ogólnych nazw typu Auth_Simple czy Auth_Complex.
Na boku tej dyskusji, może być warte wysiłku zapoznanie się z częścią niedawnej dyskusji na php-dev, w której omawiano aspekty bezpieczeństwa przy wykorzystaniu sesji, zarówno przy użyciu identyfikatora sesji, cookies i HTTP w ogólności. (kolejny temat z gorączkową debatą, oby zakończył się inteligentnymi sugestiami). Mamy nadzieję, że podsumowanie pojawi się wkrótce w manualu PHP.
Seamus Venasse stworzył nowy Net_Whois i zastanawiał się co zrobić z konkurencyjnymi klasami w PEAR, jako że jego pakiet Whois oferuje bogatsze możliwości niż obecny. Po krótkiej dyskusji stało się jasne, że dołączenie obecnej funkcjonalnośći i API do jego klasy i zastąpienie starego Net_Whois byłoby najlepszym rozwiązaniem. Ostateczna decyzja spoczywa na barkach Sebastiana Nohn (aktualnego opiekuna pakietu Net_Whois).
Dzięki za znajdywanie błędów i pare poprawek otrzymują: Radek Maciaszek, Arnaud Limbourg, Tim White i Roman Neuhauser
Alfredo zaproponował pakiet do mierzenia dystansów między
wieloma punktami. Różne matematyczne funkcje będzą używane
do przeprowadzenia obliczeń.
Ruch w CVS w tym tygodniu odbywał się w następujących pakietach: Auth, Benchmark, Cache_Lite, Date, DB, DB_DataObject, HTML_Javascript, HTML_TreeMenu, I18N, MDB, Net_DNS, Net_Ping, PECL::Soap, PHPDoc, Tree, XML_RSS, XML_XPath, System.