Skip to content

Releases: gershnik/intrusive_shared_ptr

1.9

11 May 17:38

Choose a tag to compare

Fixed

  • Restored support for pre-3.28 CMake. Module functionality will not be available under those
  • GCC15 error (declaration of partial specialization in unbraced export-declaration) when using module

1.8

15 Apr 06:11

Choose a tag to compare

1.8

Added

  • Support for std::format (if available). Instances of intrusive_shared_ptr can be passed to std::format
    and will be printed like a void *.
  • Support for std::hash<intrusive_shared_ptr>.
  • get_inout_param() method. This provides the same functionality as std::inout_ptr but is available for pre-C++23 compilation.

Changed

  • Performance improvements for std::out_ptr etc.
  • C++ module is no longer using CMake library mechanism. See README for details on how to use module.

Fixed

  • Some internal helpers moved into internal namespace where they always should have been
  • Internal macros are now properly cleared at the end of the header files

1.7

09 Apr 20:21

Choose a tag to compare

1.7

Added

  • Full support for std::out_ptr and std::inout_ptr when provided by the standard library.
    Older get_output_param() continues to work and its semantics have been aligned with std::out_ptr
    behavior.

Changed

  • C++ module CMake targets now include standard version suffixes. Instead of isptrm::isptrm you need
    to use isptrm-20::isptrm-20 or isptrm-23::isptrm-23 to 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

11 Feb 10:16

Choose a tag to compare

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.h header is now correctly installed by CMake install

1.5

17 Aug 06:54

Choose a tag to compare

1.5

Added

  • C++ module support (experimental). The library can now be used as C++ module. See README for details.

Fixed

  • weak_reference::single_threaded flag is made constexpr rather than static const

1.4

23 Jul 05:31

Choose a tag to compare

1.4

Changed

  • Updated CMake configuration to modernize it and allow local installation

1.3

31 Mar 09:10

Choose a tag to compare

1.3
  • Added single threaded mode support to ref_counted
  • Updated documentation

1.2

17 Mar 17:30

Choose a tag to compare

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

09 Jun 12:27

Choose a tag to compare

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

22 May 12:38

Choose a tag to compare

1.0

First release