- Update URL to reflect new location of Boost sources
- Update to version 1.71.0
Breaking changes:
* Uuid: MD5 name-based uuid generation was corrected to be identical
on all endian systems. Define BOOST_UUID_COMPAT_PRE_1_71_MD5 to
keep the result in a format compatible with 1.66 through 1.70.
This does not affect the default name-based uuid generation
which is based on SHA1
* Test: Boost.Test shows deprecation warnings if some very old
headers as deprecated. If you encounter such warnings, please
follow the indications: those headers will be removed in a future
release.
New libraries:
* Variant2: A never-valueless, strong guarantee implementation
of std::variant
Updated libraries:
* align, asio, any, beast, circular buffer, container, context,
conversion, core, dynamic bitset, endian, fiber, filesystem,
flyweight, histogram, iostreams, interprocess, intrusive,
legical cast, log, math, metaparse, move, multi array,
multi-index containers, outcome, parameter, ptrcontainer,
polycollection, smartptr, stacktrace, test, utility, uuid,
variant, yap
For detailed changes see
https://www.boost.org/users/history/version_1_71_0.html
- drop upstream patches no longer needed:
boost-1.57.0-python-libpython_dep.patch,
0001-beast-fix-moved-from-executor.patch,
remove_boost_serialization_depends, cmake.patch
OBS-URL: https://build.opensuse.org/request/show/730121
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/boost?expand=0&rev=129
- Update to version 1.71.0
Breaking changes:
* Uuid: MD5 name-based uuid generation was corrected to be identical
on all endian systems. Define BOOST_UUID_COMPAT_PRE_1_71_MD5 to
keep the result in a format compatible with 1.66 through 1.70.
This does not affect the default name-based uuid generation
which is based on SHA1
* Test: Boost.Test shows deprecation warnings if some very old
headers as deprecated. If you encounter such warnings, please
follow the indications: those headers will be removed in a future
release.
New libraries:
* Variant2: A never-valueless, strong guarantee implementation
of std::variant
Updated libraries:
* align, asio, any, beast, circular buffer, container, context,
conversion, core, dynamic bitset, endian, fiber, filesystem,
flyweight, histogram, iostreams, interprocess, intrusive,
legical cast, log, math, metaparse, move, multi array,
multi-index containers, outcome, parameter, ptrcontainer,
polycollection, smartptr, stacktrace, test, utility, uuid,
variant, yap
For detailed changes see
https://www.boost.org/users/history/version_1_71_0.html
- drop upstream patches no longer needed:
boost-1.57.0-python-libpython_dep.patch,
0001-beast-fix-moved-from-executor.patch,
remove_boost_serialization_depends, cmake.patch
- updated patches: boost-1.57.0-python-abi_letters.patch,
3ecbf83f.patch
OBS-URL: https://build.opensuse.org/request/show/729933
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=232
- Update to version 1.70.0
Breaking changes:
* beast - there were many API changes. For details, see upstream
release notes
New libraries:
* outcome: A set of tools for reporting and handling function
failures in contexts where directly using exception handling
is unsuitable
* histogram: Fast and extensible multi-dimensional histograms
Updated libraries:
* asio, beast, context, coroutine2, dynamic bitset, fiber,
filesystem, integer, log, math, mp11, multi-index containers,
multiprecision, polycollection, spirit, stacktrace, test,
typeindex, typetraits, variant and ublas.
For detailed changes see
https://www.boost.org/users/history/version_1_70_0.html
- 0001-beast-fix-moved-from-executor.patch: upstream patch to fix regresion
- boost-rpmoptflags-only.patch: refresh but don't disable all extra
warnings
- dynamic_linking.patch: refreshed
- baselibs.conf - updated to 1.70.0
OBS-URL: https://build.opensuse.org/request/show/702030
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=231
- Update to version 1.68.0
New libraries:
* YAP: An expression template library for C++14 and later
Breaking changes since 1.67.0:
* uuid: sha1 detail namespace header redirection for backwards
compatibility was removed
* signals: Boost.Signals will be removed in the next release.
Boost.Signals was deprecated in version 1.54.0.
Transition to Boost.Signals2 now to avoid disruption.
Updated libraries: Beast, Context, Coroutine2, Fiber, Fusion,
Geometry, GIL, Graph, Lexical Cast, Log, Math,
Multi-index containers, Optional, Predef, Program Options,
Python, Rational, System, Stacktrace, Test, TypeIndex and Uuid.
For complete list of changes, see
https://www.boost.org/users/history/version_1_68_0.html
- refreshed patches: boost-no_type_punning.patch,
python_library_name.patch
- dropped: python_numpy_retfunc.patch - no longer needed
OBS-URL: https://build.opensuse.org/request/show/629938
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=218
- fix packaging of Boost.Contract on s390 and other platforms
without Boost.Context support.
- fix build on older SLE SP by owning /usr/share/licenses directory
- Update to version 1.67.0
New libraries:
* Contract: Contract programming for C++. All contract
programming features are supported: Subcontracting, class
invariants, postconditions (with old and return values),
preconditions, customizable actions on assertion failure (e.g.,
terminate or throw), optional compilation and checking of
assertions, etc, from Lorenzo Caminiti.
* HOF: Higher-order functions for C++, from Paul Fultz II.
Breaking changes in updated libraries:
* atomic: Breaking change: Changed the result of the
(op)_and_test operations added in Boost 1.66 to the opposite -
the functions now return true if the operation result is
non-zero. This is consistent with other test methods in
Boost.Atomic and the C++ standard library. Users can define
BOOST_ATOMIC_DETAIL_HIGHLIGHT_OP_AND_TEST when compiling their
code to emit warnings on every use of the changed functions.
This way users can locate the code that needs to be updated.
* multiprecission: When converting a multiprecision integer to a
narrower type, if the value is too large (or negative) to fit
in the smaller type, then the result is either the maximum (or
minimum) value of the target type. This was always the intended
behaviour, but was somewhat haphazardly enforced before. If you
really do want just the low order N bits of a value, then you
will need to mask these out prior to the case, for example:
static_cast<unsigned>(~static_cast<unsigned>(0) & my_value).
Note that technically (to avoid undefined behaviour) you should
do the same thing with built in integer types too.
* spirit: Removed `with_context`
utility: <boost/utility.hpp> header no longer includes
boost::next and boost::prior as they have been moved to the
iterator module. Instead include <boost/next_prior.hpp>. Other
uses of <boost/utility.hpp> are discouraged, it's better to use
the header for the specific functionality instead.
* uuid: random_generator is no longer copyable
Libraries that were updated: Asio, Atomic, Beast, ContainerHash,
Context, Core, Coroutine2, DateTime, DLL, Fiber, Filesystem,
Fusion, Locale, Log, Math, Multi-index Containers,
Multiprecission, Optional, Phoenix, PolyCollection, Python,
Spirit, Stacktrace, Test, TypeIndex, TypeTraits, Utility,
Unordered, Units, Uuid, and Variant. For complete list of
changes, see,
https://www.boost.org/users/history/version_1_67_0.html
- refreshed patches:
* boost-strict_aliasing.patch
* boost-aarch64-flags.patch
- python_library_name.patch: adapted to not append version number
to library names, like new boost is doing.
- disable python2 builds by default
- use regular Requires for libboost_header dependency
OBS-URL: https://build.opensuse.org/request/show/611205
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/boost?expand=0&rev=123
- Update to version 1.67.0
New libraries:
* Contract: Contract programming for C++. All contract
programming features are supported: Subcontracting, class
invariants, postconditions (with old and return values),
preconditions, customizable actions on assertion failure (e.g.,
terminate or throw), optional compilation and checking of
assertions, etc, from Lorenzo Caminiti.
* HOF: Higher-order functions for C++, from Paul Fultz II.
Breaking changes in updated libraries:
* atomic: Breaking change: Changed the result of the
(op)_and_test operations added in Boost 1.66 to the opposite -
the functions now return true if the operation result is
non-zero. This is consistent with other test methods in
Boost.Atomic and the C++ standard library. Users can define
BOOST_ATOMIC_DETAIL_HIGHLIGHT_OP_AND_TEST when compiling their
code to emit warnings on every use of the changed functions.
This way users can locate the code that needs to be updated.
* multiprecission: When converting a multiprecision integer to a
narrower type, if the value is too large (or negative) to fit
in the smaller type, then the result is either the maximum (or
minimum) value of the target type. This was always the intended
behaviour, but was somewhat haphazardly enforced before. If you
really do want just the low order N bits of a value, then you
will need to mask these out prior to the case, for example:
static_cast<unsigned>(~static_cast<unsigned>(0) & my_value).
Note that technically (to avoid undefined behaviour) you should
do the same thing with built in integer types too.
* spirit: Removed `with_context`
utility: <boost/utility.hpp> header no longer includes
boost::next and boost::prior as they have been moved to the
iterator module. Instead include <boost/next_prior.hpp>. Other
uses of <boost/utility.hpp> are discouraged, it's better to use
the header for the specific functionality instead.
* uuid: random_generator is no longer copyable
Libraries that were updated: Asio, Atomic, Beast, ContainerHash,
Context, Core, Coroutine2, DateTime, DLL, Fiber, Filesystem,
Fusion, Locale, Log, Math, Multi-index Containers,
Multiprecission, Optional, Phoenix, PolyCollection, Python,
Spirit, Stacktrace, Test, TypeIndex, TypeTraits, Utility,
Unordered, Units, Uuid, and Variant. For complete list of
changes, see,
https://www.boost.org/users/history/version_1_67_0.html
- refreshed patches:
* boost-strict_aliasing.patch
* boost-aarch64-flags.patch
- python_library_name.patch: adapted to not append version number
to library names, like new boost is doing.
- disable python2 builds by default
- use regular Requires for libboost_header dependency
OBS-URL: https://build.opensuse.org/request/show/597342
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=212
- Update to version 1.66.0
+ Beast: new portable HTTP, WebSocket and network operations
using Boost.Asio. Header-only library.
+ Callable Traits: new library and successor to
Boost.FunctionTypes. Header-only library.
+ Mp11: new metaprogramming library
+ Asio:
* implemented interface changes to reflect the Networking TS
(N4656)
* functions and classes that have been superseded by
Networking TS functionality have been deprecated.
* added support for customized handler tracking
* removed previously deprecated functions
+ Atomic: improved compatibility with GCC 7. 128-bit operations
on x86_64 no longer require linking with compiled library.
+ DateTime: Fixed an integral overflow that could cause incorrect
results when adding or subtracting many years from a date.
+ Format: New format specifiers added and volatile arguments
can not be safely used with operator%
+ Fusion:
* fix compile error with std::array
* remove circular preprocessor include
+ PolyCollection: backported to GCC 4.8 and 4.9 with some
limitations
+ Uuid: added RTF-4122 namespaces in boost::uuids::ns
+ for complete changelog, see
http://www.boost.org/users/history/version_1_66_0.html
- refreshed patches: boost-rpmoptflags-only.patch
OBS-URL: https://build.opensuse.org/request/show/558204
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=206
- re-enable Python 2 by default. It's still conditional, but
remains enabled by default. This can be disabled in project
config.
- build Python 2 conditionally
- Use multibuild setup - build no-dependency libraries in the
base package and build the rest of the compiled libraries in
the main variant. This should speed up bootstrapping.
- boost-devel not built by default anymore.
- libboost_headers-devel now provides boost-devel for legacy
dependencies. If you need compiled boost libraries depend on
the current compiled devel subpackage.
- run %fdupes only on the header files and documentation
- drop build dependencies on gcc-fortran, chrpath.
OBS-URL: https://build.opensuse.org/request/show/546444
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/boost?expand=0&rev=119
- Use multibuild setup - build no-dependency libraries in the
base package and build the rest of the compiled libraries in
the main variant. This should speed up bootstrapping.
- build Python 2 conditionally
- boost-devel not built by default anymore.
- libboost_headers-devel now provides boost-devel for legacy
dependencies. If you need compiled boost libraries depend on
the current compiled devel subpackage.
- run %fdupes only on the header files and documentation
- drop build dependencies on gcc-fortran, chrpath.
OBS-URL: https://build.opensuse.org/request/show/543915
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=203