Releases: gershnik/intrusive_shared_ptr
Releases · gershnik/intrusive_shared_ptr
1.9
1.8
Added
- Support for
std::format(if available). Instances ofintrusive_shared_ptrcan be passed tostd::format
and will be printed like avoid *. - Support for
std::hash<intrusive_shared_ptr>. get_inout_param()method. This provides the same functionality asstd::inout_ptrbut is available for pre-C++23 compilation.
Changed
- Performance improvements for
std::out_ptretc. - C++ module is no longer using CMake library mechanism. See README for details on how to use module.
Fixed
- Some internal helpers moved into
internalnamespace where they always should have been - Internal macros are now properly cleared at the end of the header files
1.7
Added
- Full support for
std::out_ptrandstd::inout_ptrwhen provided by the standard library.
Olderget_output_param()continues to work and its semantics have been aligned withstd::out_ptr
behavior.
Changed
- C++ module CMake targets now include standard version suffixes. Instead of
isptrm::isptrmyou need
to useisptrm-20::isptrm-20orisptrm-23::isptrm-23to match the version of C++ your client code
is compiled under. (Apparently you cannot use a module built with a different C++ version from the
client code. Sigh.)
1.6
Changed
- Test targets are now excluded from default build
- Doctest is now included via
<doctest/doctest.h>to make it possible to build
tests against an external Doctest not brought via FetchContent.
Fixed
common.hheader is now correctly installed by CMake install
1.5
1.4
Changed
- Updated CMake configuration to modernize it and allow local installation
1.3
- Added single threaded mode support to
ref_counted - Updated documentation
1.2
Added pre-defined specialization for Python object and type pointer for use in Python extensions. See python_ptr.h header for details.
1.1
CMake configuration modified to mark this library sources as PRIVATE rather than INTERFACE. This plays nicer with IDEs and avoid polluting library clients with its headers.
1.0
First release