0.29.0
This release of gsl lite contains the following changes.
Changes
You can now use gsl lite via a CMake package, thanks to @FlorianWolters (PR #100, #103).
The CMake package provides gsl lite as interface library via 'namespaced' headers gsl/gsl and gsl/gsl-lite.hpp.
In the documentation, the section on installation now describes using gsl-lite as copied header, as external Git project, as CMake package and as Conan package. Further the section Deprecation was added and the table Reported to work with was updated.
The following methods of class span are now deprecated: span::length(), span::length_bytes() (issue #99) and the span constructors that take a smart pointer, span(shared_ptr<element_type> const & ptr), span(unique_ptr<element_type> const & ptr) (issue #98).
Additions
CMake Package Configuration support has been added. This makes gsl-lite usable with CMake's find_package() command. To prevent undesired compilation of tests and examples, two CMake options where added that default to off: GSL_LITE_OPT_BUILD_TESTS and GSL_LITE_OPT_BUILD_EXAMPLES. To support the usage of gsl-lite's CMake package, scripts script/install-gsl-pkg.py was added as well as script use-gsl-pkg.py that is part of an example that uses the package. Further a script was added to update gsl lite's version number in relevant files.
Type gsl::index has been added for container indices, subscripts and sizes. It is defined by the existing configuration macro gsl_CONFIG_SPAN_INDEX_TYPE.
Fixes
In the output stream operator of class string_span the padding has been fixed to pad to the right side, commit 9574552.