Span Lite Versions Save

span lite - A C++20-like span for C++98, C++11 and later in a single-file header-only library

v0.11.0

3 months ago

Release 0.11.0 contains the following fixes and changes to continuous integration build.

Additions

  • Add example tweak header.
  • Add make_span() taking std::initializer_list (#74).
  • Add special-case test with empty il for MSVC120/VS2013 (#74).
  • Add GitHub Actions CI (nonstd-lite-project issue 55).
  • Add/update example/CMakeLists.txt (nonstd-lite-project issue 56).
  • Add construction from std::initializer_list<> as per p2447 (#74, thanks @Pesa, p2447 - std::span and the missing constructor).
  • Add p2447 on missing constructor to section References (#74, p2447 - std::span and the missing constructor).

Changes

  • Update actions/checkout in GitHub Actions to v4 (#82, thanks @striezel).
  • Update actions/checkout in GitHub Actions to v3 (#75).
  • Remove Travis CI configuration and badge (#80, thanks @striezel).
  • Remove gcc 8 and clang 8, 9, 10 from GitHub CI matrix (nonstd-lite-project issue 69).
  • Remove msvc (windows-2016) image from GitHub Actions (nonstd-lite-project issue 61, thanks @xavier2k6).
  • Add msvc (windows-2022) image to GitHub Actions (nonstd-lite-project issue 62).
  • Do not cancel all jobs in a workflow if one fails (#79, thanks @striezel, nonstd-lite-poject issue 71.
  • Use toplevel unit_name (nonstd-lite-project 56).
  • Change value used with *_CPP20_OR_GREATER to 202002L (nonstd-lite-project issue 49).
    Now, designate C++23 as speculative.
  • Replace #pragma warning suppression by in-body initialization (#74, thanks @Pesa).
  • Only suppress warning -Winit-list-lifetime for GCC 9 and later (#74, thanks @Pesa).
  • Exclude clang from GGC warning -Winit-list-lifetime (#74).
  • Suppress GGC warning -Winit-list-lifetime (#74, thanks @Pesa).
  • Restore default off for span_FEATURE_WITH_INITIALIZER_LIST_P2447 (#74).
  • Move constructor for std::initializer_list down (#74).
  • Ensure to point to first element of array (MS Code Analysis, decay).
  • Ensure sufficient lifetime for span (#74).
  • Change initializer_list tests to use sections (#74).
  • Only provide non-explicit variant for MSVC120/VS2013 (#74).
  • Update table for p2447 (#74).

Fixes

  • Fix C++standard version for [[noreturn]] to C++11 (#83, thanks @simark).
  • Fix to import std::dynamic_extent into nonstd when selecting std::span (#81, thanks @wendazhou).
  • Fix a small typo (#78, thanks @striezel).
  • Fix cmake config file (#77, thanks @duncanspumpkin).
  • Fix span-lite tests on big-endian (#76, thanks @jpcima).

v0.10.3

2 years ago

Release 0.10.3 fixes #69 and #73.

Fixes:

  • Properly constrain constructor from iterators (fixes #69, thanks @krsch).
  • Add [noreturn] to throw_out_of_range() (fixes #73, thanks @jdumas).

v0.10.2

2 years ago

Release 0.10.2 fixes #72. Thanks to @CrustyAuklet.

v0.10.1

2 years ago

Release 0.10.1 fixes #71. Thanks to @CrustyAuklet.

v0.10.0

2 years ago

Release 0.10.0 fixes #65, #67, #68. Thanks to @vvish and @im95able.

v0.9.2

3 years ago

Release 0.9.2 fixes #64. Thanks to @improbablejan.

Note: With MSVC Debug, a span cannot be created from an empty range, like: std::vector v; span(v.begin(),v.end()). This behaviour is present since the introduction of construction from iterators in v0.9.0.

v0.9.1

3 years ago

Note: this release still has problems, see #64 .

Release 0.9.1 fixes #64. Thanks to @improbablejan.

v0.9.0

3 years ago

Release 0.9.0 of span lite adds construction from iterators and improves detection of the presence of Class Template Argument Deduction (CTAD).

Additions:

  • Construct a span from two iterators or an iterator and a size with C++11 and later (#61, thanks @Ryan-rsm-McKenzie).

Changes:

  • Improve detection of the presence of C++17 Class Template Argument Deduction (CTAD, #48).

Fixes:

  • Fix to only use scoped enums with C++11 and later .

v0.8.1

3 years ago

This bug-fix release of span lite contains the following changes.

Fixes:

  • Fix span iterator deduction guide (#61, thanks @Ryan-rsm-McKenzie)

Changes:

  • Add more tests for construction via deduction guides
  • Add Visual Studio 2019 to the Appveyor build matrix
  • Remove Visual Studio 9 2008 from AppVeyor CI
  • Deactivate allow_failures on Travis

v0.8.0

3 years ago

This release of span lite contains the following changes and fixes.

Additions

  • Add span iterator deduction guide (#61, thanks @Ryan-rsm-McKenzie)
  • Add 'Tweak header' support via <nonstd/span.tweak.hpp>, see nonstd-lite-project 44
  • Add TortoiseGit integration with GitHub issues
  • Add .editorconfig, .gitattributes

Changes

  • Change 'on conan' link to refer to conan center
  • Prevent -Wtype-limits for index check (#62, #63, thanks @mjacobse)
  • Avoid MSVC 14.1 (VS 2017) warning C4307 (#59, thanks @vlovich)
  • For MSVC 12.0 (VS2013, _MSC_VER:1800) fall back on previous behavior of span_REQUIRES_T()

Fixes

  • Fix construction from empty arrays in debug modes(#57, thanks to @mjacobse)
  • Fix enabling of default constructor for extent == 0 (#56, thanks to @herv)
  • Fix compile errors with clang10 and libc++ (#55, thanks to @AndWass, @Arghnews)
  • Fix implementation of span_REQUIRES_T(), see nonstd-lite-project 40