Boost
Releases
arrow_drop_down
Prior Release (1.67.0)
April 11, 2018
Dependencies
There were 31 dependencies added (in 27 libraries) and 27 dependencies removed (in 21 libraries) this release.
Platform File SHA256 Hash
Unix boost_1_67_0.tar.bz2 2684c....5adba
boost_1_67_0.tar.gz 8aa4e....9f665
Windows boost_1_67_0.7z 1cd94....20b74
boost_1_67_0.zip 7e373....5a7ec
Windows (Binary) boost_1_67_0-bin-msvc-all-32-64.7z eaac3....20d51
boost_1_67_0-msvc-10.0-32.exe 1fb8a....e1725
boost_1_67_0-msvc-10.0-64.exe cafe4....28750
boost_1_67_0-msvc-11.0-32.exe d2837....53caf
boost_1_67_0-msvc-11.0-64.exe 16f94....fcac6
boost_1_67_0-msvc-12.0-32.exe 1e567....501b9
boost_1_67_0-msvc-12.0-64.exe 7d99f....8da2d
boost_1_67_0-msvc-14.0-32.exe 63c06....359b5
boost_1_67_0-msvc-14.0-64.exe a22fd....8656d
boost_1_67_0-msvc-14.1-32.exe 02ee7....1a2e1
boost_1_67_0-msvc-14.1-64.exe 402d0....9abfc
boost_1_67_0-msvc-8.0-32.exe c75c0....cea51
boost_1_67_0-msvc-8.0-64.exe f8d07....b6f43
boost_1_67_0-msvc-9.0-32.exe b71f5....f1a56
boost_1_67_0-msvc-9.0-64.exe f63fb....489dc

Version 1.67.0

April 14th, 2018 20:37 GMT

Documentation

Third Party Downloads

Known Issues

These are patches from library authors which were found too late to be fixed in the release. Be careful as they have not been through the normal testing process.

New Libraries

  • 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.

Updated Libraries

  • Asio:
    • Added missing const qualifier to basic_socket_acceptor::get_option.
    • Worked around a parsing error that occurs with some versions of gcc.
    • Fixed broken code samples in tutorial.
    • Added new experimental features. (Note that "experimental" features may be changed without notice in subsequent releases.)
      • Added experimental::detached completion token.
      • Added experimental::redirect_error completion token.
      • Added experimental::co_spawn facility for integration with the coroutines technical specification.
      • Updated timeout examples to use latest features.
      • Used asio::steady_timer rather than asio::deadline_timer.
      • Used asio::dynamic_buffer rather than asio::streambuf.
      • Used timed asio::io_context::run_for() function for blocking clients.
      • Added example showing a custom completion token for blocking with timeouts.
    • Fixed unit tests to compile when BOOST_ASIO_NO_DEPRECATED is defined.
    • Changed socket iostreams to use chrono by default, to fix compatibility with the Networking TS. Define BOOST_ASIO_USE_BOOST_DATE_TIME_FOR_SOCKET_IOSTREAM to enable the old Boost.Date_Time interface in basic_socket_streambuf and basic_socket_iostream.
    • Updated examples to use chrono rather than Boost.Date_Time.
    • Fixed an incorrect member function detector in the is_dynamic_buffer trait.
    • Fixed an async_result incompatibility with deprecated handler_type.
    • Added a missing move optimisation in the SSL stream implementation.
    • Fixed incorrect basic_resolver_results::value_type typedef.
    • Fixed a compile error with some OpenSSL versions when SSL_OP_NO_COMPRESSION is defined.
    • Changed add_certificate_authority to process multiple certificates in a bundle.
    • Eliminated deprecation warning with MSVC by using std::invoke_result rather than std::result_of.
    • Changed to use std::string_view for C++17 or later, and std::experimental::string_view for C++14. Define the preprocessor macro BOOST_ASIO_DISABLE_STD_STRING_VIEW to force the use of std::experimental::string_view (assuming it is available) when compiling in C++17 mode.
    • Ensured DynamicBuffer template arguments are decayed before using in enable_if tests.
    • Changed documentation to distinguish legacy completion handlers (which are still required to be CopyConstructible) from new MoveConstructible handlers.
    • Suppressed a discarded return value warning in the buffer debugging support.
    • Fixed basic_yield_context to work with completion signatures containing reference parameters.
    • Ensured that stackful coroutines launched using spawn() correctly store decayed copies of their function and handler arguments.
    • Fixed some compatibility issues with Android.
    • Added cross-compilation support to Jamfiles.
    • Fixed some minor portability issues in examples.
  • 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. (#11)
    • Update for C++2a. On C++11 compilers that support scoped enums, the memory_order enumeration is now scoped and contains constants with shorter names like acquire, release or seq_cst (i.e. users can use memory_order::acquire instead of memory_order_acquire). The old constants are also provided for backward compatibility. (P0439R0)
    • Update for C++2a. Added experimental support for atomic operations on floating point types. In addition to general operations, add, sub, negate operations and their fetch_(op) and opaque_(op) versions are supported. Lock-free property can be tested with the new macros BOOST_ATOMIC_FLOAT/DOUBLE/LONG_DOUBLE_LOCK_FREE. The support for floating point types is optional and can be disabled by defining BOOST_ATOMIC_NO_FLOATING_POINT. (P0020R6)
    • Added new experimental operations:
      • negate_and_test and complement_and_test which perform negation or bitwise complement and return true if the result is not zero.
      • add, sub, negate, bitwise_and, bitwise_or, bitwise_xor, bitwise_complement operations which perform the operation and return its result.
    • For generic atomic<T> specialization, the default constructor is now trivial if T's default constructor is.
    • The internal implementation of atomic<T> has been updated to avoid undefined behavior that stems from signed integer overflows. As required by the C++ standard, the library uses two's complement representation of signed integers internally and accroding rules of overflow. Currently, the library requires the native signed integer types to also use two's complement representation (but no defined overflow semantics).
    • Improved Clang support. In particular, fixed DCAS not being lock-free and fixed possible incorrect code generated on 32-bit x86.
    • Improved MinGW support. For gcc versions up to 4.6, fixed compilation of DCAS on x86.
    • In x86 PIE code, asm blocks now preserve ebx value.
  • Beast:
    • This version fixes significant defects in websocket::stream which can lead to asserts or undefined behavior. Users are encouraged to update to the latest Boost release.
    • For a complete list of changes, please view the official Release Notes.
  • ContainerHash:
    • Extracted from the functional module to break a dependency cycle.
    • Moved headers to new location to reflect name change, the old include paths will still work.
    • Added support for std::string_view, std::error_code, std::error_condition, std::optional, std::variant, std::monostate where available.
    • Added explicit support for vector<bool>, so that it will work with libc++ (#13501).
    • More detail in the library change log.
  • Context:
    • #62/PR#64: fix i386/macho routines to correctly return transfer_t in EAX/EDX
    • #65: __sanitizer_finish_switch_fiber should be called directly after context switch
    • #66: Clang on Windows : error: No best alternative for libs/context/build/asm_sources
    • #73: fixing C2492 for execution_context (v1)
    • known bug: including all.hpp + <context-impl>ucontext/winfib causes error 'forced_unwind: is not a member of boost::context::detail'
  • Core:
    • Updated to_address and pointer_traits to reflect the design adopted for C++2a in P0653R2 (Glen Fernandes).
  • Coroutine2:
    • #13: Pull coroutine does not rethrow an exception if it is thrown on the first entry
  • DateTime:
    • Fixed various year 2038 (32-bit) issues (#2818) (#2819) (#3487) (#4543) (#8450) (#9158) (#9489) (#10570) (#12609)
    • Fixed a binary serialization regression introduced in 1.66.0 (#56) (PR#58) (PR#70)
    • Updated the timezone database file (#4430) (#10087) (PR#68)
    • Enhanced from_iso_string so it can read output of to_iso_string for special values (#1078) (PR#69)
    • Changed maximum supported year from 10000 to 9999 to resolve various issues (#13159) (#12630) (PR#71)
    • boost::date_time::period_parser::delimiter_strings did nothing (#11142) (PR#63)
    • Ensure special values are not automatically translated to integral types (#11168) (PR#64)
    • int_adapter::is_signed should be const (#12363) (PR#60)
    • boost::date_time::time_input_facet throws when using %j alone (#12910) (PR#59)
    • Time input facet is not able to parse %e day (#13194) (PR#54)
    • Improved Github CI build environment for better project metrics and quality (PR#52) (PR#72)
    • Fixed various compiler warnings (#3606) (#9882) (PR#62)
  • DLL:
    • Fixes for calling functions on dirty GetLastError() #16.
  • Fiber:
    • #128: Assertion "! ctx->ready_is_linked()" when using condition_variable::wait_for
    • #132: fatal error: 'stdexception' file not found
    • #141: boost::fibers::async problem
    • #146: remove unecessary lock of remote-ready-queue spinlock
    • #153: docu: replace set_ready() by schedule()
    • #154: Document iterators on channels
    • #155: this_fiber is wrongly documented as being a member of boost::fibers
    • #156: Many examples are using their own barrier.hpp
    • #158: add BOOST_FIBERS_DECL to work_stealing class
    • #162: remove use-coutner increment for timed wait ops
    • #166: remove assertion for wait_is_linked() in schedule()
    • #167: call shared_state::owner_destroyed() only if future was created from
    • #168: fiber/doc/installing.qbk not not up to date
  • Filesystem:
    • Fix static initialization issue that caused a crash if path operations were used before main() (PR#62, PR#43, PR#50, PR#59)
  • Fusion:
    • Switch to SFINAE in template parameters on fusion::map to fix compile error on newer MSVC 2017. (PR#164)
    • Fix for compilers not compatible with CWG defect 945 on fusion::vector. (PR#166)
    • Added limits precheck on sequence converter to make error message clearer. (PR#168)
    • Allow incomplete types in fusion::tag_of and fusion::is_native_fusion_sequence. Note that this changes no behaviour from previous release, but compliant to TypeTraits's change. (PR#171)
  • Geometry:
    • Improvements:
      • New map projection and SRS transformation representations (undocumented for now due to potential interface changes).
      • New densify() algorithm.
      • No longer using std::iterator (thanks to Daniela Engert).
      • No longer using allocator directly in the rtree. Replaced with boost::container::allocator_traits (thanks to Daniela Engert).
      • Default rtree allocator changed to boost::container::new_allocator to still support move semantics emulation in C++03 with boost::container::allocator_traits.
      • Area strategies interface changed. This is potentially a breaking change.
      • Radius or Sphere can be passed into spherical strategies.
      • Added Point-Box and Box-Box spherical and geographic distance() strategies.
      • Simplify (multi)polygons will discard output rings of 2 points or (for closed polygons) 3 points, but it tries to avoid creating those
      • Simplify (multi)polygons will omit empty interior rings or polygons from output
    • Solved issues:
      • 13386 Workaround for some gcc compilers
      • 13381 Compile error with matrix_transformer in Visual C++ 2015
      • 13436 Incorrectness in boost::geometry::model::polygon documentation
    • Bugfixes:
      • Add missing strategy resolving in length() algorithm, affecting Variant support.
      • Simplify (multi)polygons now simplifies closing point
    • Changes in behavior
      • Simplify (multi)polygons now usually rotates input rings before simplifying to select a non collinear point on its convex hull. This improves output.
  • Locale:
    • Added support of unique_ptr interface in addition to C++2003 auto_ptr - in order to support C++2017, now you can use BOOST_LOCALE_HIDE_AUTO_PTR definiton to remove auto_ptr from the interfaces and prevent deprecated watnings.
    • Fixed test problem with ICU >60.1
    • Fix of solaris build
    • Fixed wired FreeBSD/clang issue on optimized build. Probably compiler workaround
    • Added workaround for failing MSVC tests due to 932 codepage codecvt issue
    • Fixed bugs 6851, 12572, 12453
    • Fixed missing throw in case of failure in icu/date_time
    • Fixed build agains Boost.Thread v4
    • Fixed Year of week instead of year ICU backend formatting
    • Fixed formatting test for ICU 56.1 and above
  • Log:
    • Improved compatibility with C++17: use allocator_traits to work with allocators instead of directly accessing its members.
    • Improved compatibility with gcc 7 and later by updating library ABI namespace definition.
    • Added documentation for the "Append" config file parameter for "TextFile" sinks. The parameter was supported previously, only the documentation was missing.
  • Math:
    • Add naive Monte Carlo integration support.
    • Add Chebyshev interpolation routines.
  • Multi-index Containers:
    • Elements with overloaded operator& are now fully accepted (ticket #13307). Thanks to Daniel Frey for his updating Boost.Operators to help fix this issue.
    • Avoided usage of std::allocator members deprecated in C++17. Contributed by Daniela Engert.
    • Maintenance fixes.
  • Multiprecision:
    • Breaking Change: 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. See #13109.
    • Fix bug in conversion of decimal to rational types (zero needs special handling), see #13148.
    • Fix conversion from cpp_bin_float to a wider built in integer type, see #13301.
    • Improve performance heurists used in cpp_bin_float exp function.
    • Fix bug in floor/ceil and cpp_bin_float when the exponent type is wider than an int, see #13264.
    • Disable explicit conversion operator when the target type is already constructible from this type, see #30.
    • Fix support for changes new to MPIR-3.0, see #13124.
  • Optional:
    • Fixed issue #46
    • Fixed -Wzero-as-null-pointer-constant warnings.
  • Phoenix:
    • Correct documentation and example code. (#8187, PR#56, PR#57)
    • Fixed bug with initializing phoenix lazy from array types in C++11. (#12733, PR#58, PR#61)
    • Use proto subscript and assignment overload operators buildins to fix compile error with some lambda experssions on recent MSVC. (#62, PR#64, PR#66, PR#67)
    • Remove use of deprecated std::iteratror. Thanks to Daniela Engert. (PR#59)
  • PolyCollection:
    • Maintenance fixes.
  • Python:
    • The library name now includes the version suffix of the Python version used to compile it. For example, a variant compiled with Python 2.7 will produce library names boost_python27 and boost_numpy27, etc.. Combined with a related fix in Boost.Build, this means that it is now possible to build variants for multiple Python versions in a single build process.
  • Spirit:
    • Spirit.X3:
      • Breaking change: Removed with_context (#239)
      • Added noexcept to x3::variant and forward_ast (#241)
      • CR+LF lines wrongly counted in error_handler::position() (#248)
      • Fixed unused_type attribute case in parse_into_container (#266)
      • Fixed parsing into associative containers (#289)
      • Fixed overflow problem in uint_parser<signed T> (#297)
      • Added VS2015 Update 3 support by using workarounds (#308)
      • Fixed include guard names collision with Qi (#313)
      • Added parsing into range (#316) (#12928)
      • Changed iterator concept static assert from ForwardIterator to ReadableIteratorConcept && ForwardTraversalConcept (#320)
      • Reenabled fusion::map support (#330)
      • Fixed string("...") and attr("...") to single item sequence (#337)
      • Dereference a single item view instead of unwrapping sequence (#340)
      • Prevent parse_nan from dereferencing out of range iterator (#351)
      • Use traits to test if container is empty (#355)
    • Spirit V2
      • Fixed keyword directives compilation on C++11 (#256) (#11493)
      • Fixed subrules compilation (#279) (#259)
      • Fixed subrules use after scope bug (#284) (#5270)
      • Fixed undefined behavior in sequential or operator. Underlying parsers order of execution was dependent on compiler (#310)
      • Spirit was accidentally relaying on types typedef of boost::optional. The typedef was removed in the new optional implementation (#271) (#12349)
      • Fixed problems with BOOST_SPIRIT_NO_PREDEFINED_TERMINALS (attr_cast, confix, distinct, keywords, and flush_multi_pass) (#314) (#13311)
      • Added missing copy assignment operator to hold_any (#361) (#8268)
    • Spirit.Qi:
      • Fixed alternate operator (#201) (#271) (#12349)
      • Fixed signed integer overflow in real parser (#245)
      • Fixed overflow problem in uint_parser<signed T> (#297)
      • Fixed get_current_line, get_line_start, and added get_line_end (#304)
      • Permutations parser were always initializing optionals (#319) (#12473)
      • Changed iterator concept static assert from ForwardIterator to ReadableIteratorConcept && ForwardTraversalConcept (#320)
      • Added assertations to real parsers to ensure that the parse_frac_n from user defined real policy does not return negative values and also to prevent static analyzers false-positives (#358)
    • Spirit.Karma:
      • Fixed alternate operator (#271)
      • Fixed no_buffering_policy missing copy constructor (#261)
      • The ostream_iterator was inheriting std::iterator which is deprecated in C++17 (#345)
    • Spirit.Lex:
      • Store id as promoted type to allow out-of-enum values (#247)
      • Fixed C2001 'newline in constant' warning in generated lexers (#324) (#11540)
    • Spirit.Classic:
      • Fixed remove_reference usage without a namespace in Phoenix (#274)
      • Fixed std::complex usage without the include (#273)
      • Fixed compilation of match<T &> (#275)
      • Fixed compilation with BOOST_DISABLE_THREADS defined (#323) (#12639)
      • Increment scanner through iterator policy (#336) (#7371)
      • Removed deprecated in C++17 std::iterator usage (#345)
  • Stacktrace:
    • Async safe dumping into files on Windows OS was causing hangs on some platforms and now is disabled #33. Users are encouraged to update to the latest Boost release.
    • ContainerHash library is now used to reduce dependencies.
    • Minor fixes (including #31, #38, #39, #40, #42).
  • Test:
  • TypeIndex:
    • ContainerHash library is now used to reduce dependencies.
    • Minor fixes (including #17)
  • TypeTraits:
    • Added new traits detected, detected_or, is_detected, is_detected_convertible, is_detected_exact, is_complete.
    • Added greatly improved code for detecting binary operators.
    • Add assertions for completeness to traits which require complete types as arguments: this prevents various traits from giving eroneous results from incomplete types.
    • Fix minor issue with mpl compatibility, see #12212.
    • Add macro to indicate when is_constructible is fully implemented, see #12003.
    • Update is_function and is_member_function_pointer to work correctly with C++17 noexcept specifications.
    • Add workaround for is_default_constructible and std::pair.
    • Added fallback for is_nothrow_swappable on pre-C++11 compilers.
  • Utility:
    • Breaking change: <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.
  • Unordered:
    • Template deduction guides.
    • Standard conforming noexcept specifications for swap, operator= and node handles.
    • Add element_type to iterators, so that std::pointer_traits will work.
    • Support std::piecewise_construct on recent Visual C++ and Dinkumware libraries.
    • Use std::iterator_traits rather than the boost iterator traits in order to remove dependency on Boost.Iterator.
    • Iterators no longer inherit from std::iterator, as it's deprecated (PR#7).
    • More detail in the library change log.
  • Units:
    • Fix sqrt for scaled units #10270 #27
    • Add constexpr support #22
    • minor documentation fixes
  • Uuid:
    • Breaking change: random_generator is no longer copyable (#61)
    • Optimized random_generator to use OS-provided entropy directly (PR#53)
    • Provide random_generator_mt19937 for bulk UUID generation
    • Handle entropy acquisition errors instead of ignoring them
    • Support for Windows UWP (#24)
    • Support for CloudABI
  • Variant:
    • Substitute function arguments on compilers with variadic templates support and do not generate substitution metafunctions using preprocessor #42, #46. Many thanks to Nikita Kniazev for providing an initial fix.
    • Perfect forwarding for passing visitor in apply_visitor #40, #13288. Many thanks to Paweł Dac!
    • Minor fixes (including #41, #44)

Compilers Tested

Boost's primary test compilers are:

  • Linux:
    • Clang: 3.0, 4.0.1, 5.0.1
    • Clang, C++0x: 3.0
    • Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 5.0.1
    • Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.1
    • Clang, C++17: 5.0.1
    • GCC: 4.4.7, 4.5.3, 4.6.3, 5.4.0, 7.2.0
    • GCC, C++0x: 4.4.7
    • GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 7.2.0
    • GCC, C++14: 5.4.0, 5.4.1, 6.3.0, 6.4.0, 7.1.0, 7.2.0, 7.3.0
    • GCC, C++17: 7.2.0
    • Intel, C++14: 18.0
  • OS X:
    • Clang: 9.0.0
    • Clang, C++11: 9.0.0
    • Clang, C++14: 9.0.0
    • Clang, C++1z: 9.0.0
  • Windows:
    • GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
    • GCC, C++0x: 4.6.4
    • GCC, C++11: 4.7.3, 4.8.1, 4.9.3
    • GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0, 7.1.0
    • Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1

Boost's additional test compilers include:

  • Linux:
    • Clang: 3.0, 3.8.1, 4.0.1, 5.0.1
    • Clang, C++0x: 3.0
    • Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 5.0.1
    • Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.1
    • Clang, C++17: 5.0.1
    • GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 4.9.2, 5.4.0, 7.2.0
    • GCC, C++0x: 4.4.7
    • GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 7.2.0
    • GCC, C++14: 5.4.0, 5.4.1, 6.3.0, 6.4.0, 7.1.0, 7.2.0, 7.3.0
    • GCC, C++17: 7.2.0
    • Intel, C++14: 18.0
  • OS X:
    • Clang: 9.0.0
    • Clang, C++11: 9.0.0
    • Clang, C++14: 9.0.0
    • Clang, C++1z: 9.0.0
  • Windows:
    • GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
    • GCC, C++0x: 4.6.4
    • GCC, C++11: 4.7.3, 4.8.1, 4.9.3
    • GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0, 7.1.0
    • Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
  • FreeBSD:
    • Clang: 4.0.0
    • Clang, C++11: 4.0.0
    • Clang, C++14: 4.0.0
    • Clang, C++1z: 4.0.0

Acknowledgements

Beman Dawes, Daniel James, Vladimir Prus and Marshall Clow managed this release.

Contributors

John Maddock
John Maddock
Contributor
Peter Dimov
Peter Dimov
Contributor
NAThompson
NAThompson
Contributor
Adam Wulkiewicz
Adam Wulkiewicz
Contributor
Nikita Kniazev
Nikita Kniazev
Contributor
Daniel James
Daniel James
Contributor
Barend Gehrels
Barend Gehrels
Contributor
Oliver Kowalke
Oliver Kowalke
Contributor
Alain Miniussi
Alain Miniussi
Contributor
Vicente J. Botet Escriba
Vicente J. Botet Escriba
Contributor
Vinnie Falco
Vinnie Falco
Contributor
Raffi Enficiaud
Raffi Enficiaud
Contributor
Andrey Semashev
Andrey Semashev
Contributor
Christopher Kohlhoff
Christopher Kohlhoff
Contributor
Austin Beer
Austin Beer
Contributor
Kohei Takahashi
Kohei Takahashi
Contributor
James E. King III
James E. King III
Contributor
Ion Gaztañaga
Ion Gaztañaga
Contributor
Antony Polukhin
Antony Polukhin
Contributor
Daniela Engert
Daniela Engert
Contributor
Klemens Morgenstern
Klemens Morgenstern
Contributor
Glen Fernandes
Glen Fernandes
Contributor
Edward Diener
Edward Diener
Contributor
Steven Watanabe
Steven Watanabe
Contributor
Louis Dionne
Louis Dionne
Contributor
Vissarion Fisikopoulos
Vissarion Fisikopoulos
Contributor
octopus-prime
octopus-prime
Contributor
Francisco Tapia
Francisco Tapia
Contributor
Joaquin M. López Muñoz
Joaquin M. López Muñoz
Contributor
Joel de Guzman
Joel de Guzman
Contributor
Artyom Beilis
Artyom Beilis
Contributor
Brian Kuhl
Brian Kuhl
Contributor
spreadsort
spreadsort
Contributor
Brandon Kohn
Brandon Kohn
Contributor
Christos Stratopoulos
Christos Stratopoulos
Contributor
Nick
Nick
Contributor
Jürgen Hunold
Jürgen Hunold
Contributor
Stefan Seefeld
Stefan Seefeld
Contributor
Hartmut Kaiser
Hartmut Kaiser
Contributor
Frank Mori Hess
Frank Mori Hess
Contributor
Alexander Merry
Alexander Merry
Contributor
Jeff Trull
Jeff Trull
Contributor
K. Noel Belcourt
K. Noel Belcourt
Contributor
Damian Jarek
Damian Jarek
Contributor
Andrzej Krzemieński
Andrzej Krzemieński
Contributor
zerotypos-found
zerotypos-found
Contributor
Paul A. Bristow
Paul A. Bristow
Contributor
Vladimir Prus
Vladimir Prus
Contributor
James Cowgill
James Cowgill
Contributor
Fernando Cacciola
Fernando Cacciola
Contributor
Han Wang
Han Wang
Contributor
Beman Dawes
Beman Dawes
Contributor
Romain Geissler
Romain Geissler
Contributor
petamas
petamas
Contributor
Rene Rivera
Rene Rivera
Contributor
Barrett Adair
Barrett Adair
Contributor
Markus Tillinger
Markus Tillinger
Contributor
Ronald Garcia
Ronald Garcia
Contributor
Shinobu Kinjo
Shinobu Kinjo
Contributor
Tomoki Imai
Tomoki Imai
Contributor
Pavel I. Kryukov
Pavel I. Kryukov
Contributor
Jonathan Wakely
Jonathan Wakely
Contributor
Marshall Clow
Marshall Clow
Contributor
Mario Mulansky
Mario Mulansky
Contributor
Benjamin Roland Buch
Benjamin Roland Buch
Contributor
Adrian Vogelsgesang
Adrian Vogelsgesang
Contributor
Deniz Bahadir
Deniz Bahadir
Contributor
Ed Catmur
Ed Catmur
Contributor
Emil Dotchevski
Emil Dotchevski
Contributor
Tanzinul Islam
Tanzinul Islam
Contributor
Giel van Schijndel
Giel van Schijndel
Contributor
Mario Lang
Mario Lang
Contributor
Reimar Döffinger
Reimar Döffinger
Contributor
Aaron Gorenstein
Aaron Gorenstein
Contributor
Norbert Wenzel
Norbert Wenzel
Contributor
arvidn
arvidn
Contributor
Paul "TBBle" Hampson
Paul "TBBle" Hampson
Contributor
Orson Peters
Orson Peters
Contributor
Jonnahtan Saltarin
Contributor
Bernhard Rosenkränzer
Bernhard Rosenkränzer
Contributor
Orgad Shaneh
Orgad Shaneh
Contributor
Zaytsev Mikhail
Contributor
Johannes Spangenberg
Johannes Spangenberg
Contributor
Gregor Jasny
Gregor Jasny
Contributor
Stephen Kelly
Stephen Kelly
Contributor
Adrian Imboden
Adrian Imboden
Contributor
Olaf van der Spek
Olaf van der Spek
Contributor
Ivan Vilata-i-Balaguer
Ivan Vilata-i-Balaguer
Contributor
Richard Evans
Richard Evans
Contributor
Mateusz Łoskot
Mateusz Łoskot
Contributor
Denis Davydov
Denis Davydov
Contributor
David Tardon
David Tardon
Contributor
Chris Lesiak
Chris Lesiak
Contributor
Akira Takahashi
Akira Takahashi
Contributor
Sebastian Theophil
Sebastian Theophil
Contributor
Marc Gallagher
Marc Gallagher
Contributor
Connor Lane Smith
Connor Lane Smith
Contributor
Unknown
Unknown
Contributor
hrayrbabajanyan
hrayrbabajanyan
Contributor
mdhooge
mdhooge
Contributor
Vladimir Batov
Vladimir Batov
Contributor
Florent Castelli
Florent Castelli
Contributor
bavier
bavier
Contributor
Aleksey Katargin
Aleksey Katargin
Contributor
Malcolm Parsons
Malcolm Parsons
Contributor
Sylvain Joubert
Sylvain Joubert
Contributor
Lakshay Garg
Lakshay Garg
Contributor
dodheim
dodheim
Contributor
Benjamin Buch
Benjamin Buch
Contributor
MinahilRaza
MinahilRaza
Contributor
Tim Angus
Tim Angus
Contributor
Marcel Raad
Marcel Raad
Contributor
QUvalda
QUvalda
Contributor
Egor Pugin
Egor Pugin
Contributor
Saliya Hamparawa
Saliya Hamparawa
Contributor
Tobias Kohlbau
Tobias Kohlbau
Contributor
Andras Kucsma
Andras Kucsma
Contributor
Peter Klotz
Peter Klotz
Contributor
Mikhail Strelnikov
Mikhail Strelnikov
Contributor
Tatsuyuki Ishi
Tatsuyuki Ishi
Contributor
Andre Schroeder
Andre Schroeder
Contributor
Peter Jankuliak
Peter Jankuliak
Contributor
bitsrules
Contributor
YunQiang Su
YunQiang Su
Contributor
Namezero
Namezero
Contributor
Jason Rice
Jason Rice
Contributor
David Mugnai
David Mugnai
Contributor
p-kalugin
p-kalugin
Contributor
Pawel Dac
Pawel Dac
Contributor
Nicholas Devenish
Nicholas Devenish
Contributor
Florian Weik
Florian Weik
Contributor
akumta
akumta
Contributor
Christophe Henry
Christophe Henry
Contributor
Jeff Trull
Jeff Trull
Contributor