[ANN] Boost 1.56.0 вышел
От: jazzer Россия Skype: enerjazzer
Дата: 08.08.14 04:17
Оценка: 52 (10)
не прошло и года

тормозили с релизом из-за затеянной модуляризации буста (чтобы сделать его менее монолитным) и сопутствующим переездом на git и изменением структур репозитария.

Соответственно, изменений накопилось много.

Были выделены отдельные базовые модули: Assert, Core (мелкие утилиты типа addressof), Lexical_Cast, Throw_Exception, Winapi

Добавлены новые библиотеки:
  • Align: Аллокация с выравниванием
  • Type_Index: Продвинутая RTTI своими руками (от москвича Антона Полухина )

    Изменений в существующих библиотеках куча, львиная доля — лучшая поддержка С++11.

    Есть несколько изменений, ломающих совместимость, будьте внимательны:

    Interprocess:
    ABI breaking: #9221 showed that BOOST_INTERPROCESS_MSG_QUEUE_CIRCULAR_INDEX option of message queue, was completely broken so an ABI break was necessary to have a working implementation.

    Intrusive:
    ABI breaking: Fixed ABI regression introduced in Boost 1.55 version, mainly noticeable on MSVC compilers.
    Source breaking: Removed previously deprecated xxx_dont_splay functions from splay containers, splay_set_base_hook and splay_set_member_hookfrom splay containers and bool splay = true extra parameter in splaytree_algorithms functions.

    Math:
    Breaking change: moved a number of non-core headers that are predominantly used for internal maintenance into libs/math/include_private. The headers effected are boost/math/tools/test_data.hpp, boost/math/tools/remez.hpp, boost/math/constants/generate.hpp, boost/math/tools/solve.hpp, boost/math/tools/test.hpp. You can continue to use these headers by adding libs/math/include_private to your compiler's include path.
    Breaking change: A number of distributions and special functions were returning the maximum finite value rather than raising an overflow_error, this has now been fixed, which means these functions now behave as documented. However, since the default behavior on raising an overflow_error is to throw a std::overflow_error exception, applications which have come to reply rely on these functions not throwing may experience exceptions where they did not before. The special functions involved are gamma_p_inva, gamma_q_inva, ibeta_inva, ibetac_inva, ibeta_invb, ibetac_invb, gamma_p_inv, gamma_q_inv. The distributions involved are pareto_distrib, beta_distrib, geometric_distrib, negative_binomial_distrib, binomial_distrib, chi_squared_distrib, gamma_distrib, inverse_chi_squared_distrib, inverse_gamma_distrib. See #10111.

    Regex:
    Breaking change: corrected behavior of basic_regex<>::mark_count() to match existing documentation, basic_regex<>::subexpression(n) changed to match, see #9227

    Variant:
    Breaking change: Variant now uses variadic templates if they are supported by compiler. This leads to smaller binaries and better compilation times but in some cases may break metaprogramming functions, especially if BOOST_VARIANT_ENUM_PARAMS and BOOST_VARIANT_ENUM_SHIFTED_PARAMS are not used. Usage of variadic templates may be disabled.

    Полный список изменений и ссылки на скачивание сорцов здесь:
    http://www.boost.org/users/history/version_1_56_0.html

    Уже собранные бинарники (для тех, кто не хочет собирать из сорцов самостоятельно) здесь:
    http://sourceforge.net/projects/boost/files/boost-binaries/1.56.0/
  • jazzer (Skype: enerjazzer) Ночная тема для RSDN
    Автор: jazzer
    Дата: 26.11.09

    You will always get what you always got
      If you always do  what you always did
     
    Подождите ...
    Wait...
    Пока на собственное сообщение не было ответов, его можно удалить.