The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Корректирующие выпуски PHP 5.4.10 и 5.3.20

20.12.2012 20:33

Представлены корректирующие выпуски интерпретатора языка программирования PHP - 5.4.10 и 5.3.20, в которых устранено 19 ошибок, не связанных с безопасностью, но устраняющих некоторые серьёзные проблемы со стабильностью. Из исправленных проблем можно отметить крах в процессе работы сборщика мусора, низкая производительность функции date() и переполнение буфера в коде модуля FPM.

Разработчики напоминают, что ветка 5.3.x подходит к концу своего жизненного пути, в связи с чем пользователям рекомендуется заранее спланировать обновление своих систем. Начиная с марта 2013 года в ветке 5.3.x будут исправляться только критически проблемы безопасности.

  1. Главная ссылка к новости (http://php.net/index.php#id201...)
  2. OpenNews: Корректирующие выпуски PHP 5.4.9 и 5.3.19
  3. OpenNews: Начало альфа-тестирования PHP 5.5
  4. OpenNews: Проект PHP мигрировал с Subversion на Git
  5. OpenNews: Релиз PHP 5.4.0. Обзор новшеств
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/35660-php
Ключевые слова: php
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (14) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Аноним (-), 20:53, 20/12/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Сколько процентов скриптов поддерживают только 5.2.x?
     
  • 1.3, kuraga (ok), 21:05, 20/12/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    When storing '015700' microseconds in a Datetime object,
    Datetime::format('u') returns '015699'. This behavior is critical when
    I use optimistic locking.

    ----
    $datetime = Datetime::createFromFormat('u', '015700');
    $datetime->format('u'); // => '015699'
    ----

    Datetime objects hold microseconds as "double" type in C.
    '015700' is held as 0.015699999999999998679. Datetime::format('u')
    calls floor() and it returns .015699.
    -----

    PATCH

    - case 'u': length = slprintf(buffer, 32, "%06d", (int) floor(t->f * 1000000)); break;
    + case 'u': length = slprintf(buffer, 32, "%06d", (int) floor(t->f * 1000000 + 0.5)); break;

    Клевое исправление бага!

     
     
  • 2.5, Andrey Mitrofanov (?), 21:13, 20/12/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > - case 'u': length = slprintf(buffer, 32, "d", (int) floor(t->f * 1000000));
    > break;
    > + case 'u': length = slprintf(buffer, 32, "d", (int) floor(t->f * 1000000
    > + 0.5)); break;
    > Клевое исправление бага!

    Откройте для себя... математику!

    Они все http://stackoverflow.com/questions/485525/round-for-float-in-c сделали для себя из имеющегося froor() отсутствующий round(). "Клёва", да? Ну-ну.

     
     
     
    Часть нити удалена модератором

  • 4.11, Аноним (-), 01:07, 21/12/2012 [ответить]  
  • –2 +/
    Именно! Настоящие программисты оперируют датой и временем исключительно в строковом виде.
     

  • 1.4, Аноним (-), 21:11, 20/12/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Куда они все время спешат?! Не все еще к 5.3 привыкли, а ей уже пора сказать до свидания. Но если новый регламент будет эффективен, то ветка PHP 5.4 задержится подольше. Интересно, что они обычно поддерживают две ветки, причем обе всегда помечены как стабильные.

    Интересно почему за все время существования проекта ни кто не создал форк

     
     
  • 2.7, Аноним (7), 22:42, 20/12/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    а что в этом такого плохого? обновитесь до 5.4, просто не использовать функции которые deprecated. Не вижу в этом ничего зазорного
     
  • 2.9, all_glory_to_the_hypnotoad (ok), 23:36, 20/12/2012 [^] [^^] [^^^] [ответить]  
  • –2 +/
    ну как же, мордокника сделала форк
     
     
  • 3.13, Аноним (-), 01:57, 21/12/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Они сделали не больший форк чем допустим pypy - форк питона.
     
     
  • 4.18, all_glory_to_the_hypnotoad (ok), 19:45, 21/12/2012 [^] [^^] [^^^] [ответить]  
  • +/
    дебил, это не форк, а альтернативная реализация. pypy который
     
  • 2.14, Аноним (-), 09:05, 21/12/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Интересно почему за все время существования проекта ни кто не создал форк

    Форки делают, если, например, не согласны с политикой разработчиков, хочется добавить фич, которые не берут в майнлайн. Но такая ситуация для пхп выглядит дико, поскольку его любят совсем за другое - можно хотя бы вспомнить то, что это потомок не менее мощного Perl. Так что тем, кому требуются фичи и вообще грамотно спроектированный язык, проще уйти на что-нибудь другое

     
     
  • 3.17, Аноним (-), 15:02, 21/12/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > потомок не менее мощного Perl

    Это как вырезанная опухоль - потомок человека.

     

  • 1.10, GentooBoy (ok), 00:24, 21/12/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    Как я понял
    5.4.10 - бета версия
    5.3.20 - вот что это за версия хз ? Как её обозвать 13 ошибок.
     
     
  • 2.12, Adui (?), 01:24, 21/12/2012 [^] [^^] [^^^] [ответить]  
  • +3 +/
    5.3 - Legacy versions
    5.4 - Stable version
    5.5 - Development version
     

  • 1.16, terr0rist (ok), 13:48, 21/12/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > Разработчики напоминают, что ветка 5.3.x подходит к концу своего жизненного пути

    скорее РНР подходит к концу своего жизненного пути.

    Новость от 21.12.2017:
    "Состоялся релиз РНР 6.0. Он основан на кодовой базе Python 2.0, но с сохранением синтакиса РНР. В версии 7.0 (по оптимистичным прогнозам, через 20 лет) мы планируем полностью перейти на синтаксис Python, а сейчас пока объявляем синтаксис РНР deprecated. Напоминаем, что ветки РНР 5.23, 5.24, 5.25 и выше подошли к концу своего жизненного цикла, так и не появившись."

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру