Discontinuation of the project

The libpmemobj-cpp project will no longer be maintained by Intel.

  • Intel has ceased development and contributions including, but not limited to, maintenance, bug fixes, new releases, or updates, to this project.
  • Intel no longer accepts patches to this project.
  • If you have an ongoing need to use this project, are interested in independently developing it, or would like to maintain patches for the open source software community, please create your own fork of this project.
  • You will find more information here.

The C++ bindings to libpmemobj

libpmemobj-cpp provides a less error prone version of libpmemobj through the implementation of a pmem-resident property, persistent pointers, scoped and closure transactions, locking primitives and many others.

Doxygen documentation is available:

  • for the current master
  • for the latest stable branch: v1.13

For older documentation see below.

Blog entries

The following series of blog articles provides a tutorial introduction to the C++ bindings:

There are also another blog posts regarding C++ bindings:

Releases’ support status

Only some of the latest branches/releases are fully supported. The most recent releases can be found on the “releases” tab on the GitHub page.

Version branchFirst release dateLast patch releaseMaintenance status
stable-1.13Jul 27, 2021N/AEOL
stable-1.12Feb 15, 2021N/AEOL
stable-1.11Sep 30, 2020N/AEOL
stable-1.10May 28, 2020N/AEOL
stable-1.9Jan 31, 2020N/AEOL
stable-1.8Oct 03, 20191.8.2 (Aug 01, 2022)EOL
stable-1.7Jun 26, 20191.7.1 (Jul 29, 2022)EOL
stable-1.6Mar 15, 20191.6.1 (Jul 06, 2021)EOL
stable-1.5Oct 26, 20181.5.2 (Jun 28, 2021)EOL

Possible statuses:

  1. Full maintenance:
    • All/most of bugs fixed (if possible),
    • Patch releases issued based on a number of fixes and their severity,
    • At least one release at the end of the maintenance period,
    • Full support for at least a year since the initial release.
  2. Limited scope:
    • Only critical bugs (security, data integrity, etc.) will be backported,
    • Patch versions will be released when needed (based on severity of found issues),
    • Branch will remain in “limited maintenance” status based on the original release availability in popular distros,
  3. EOL:
    • No support,
    • No bug fixes,
    • No official releases.

Older documentation

Older branches docs:

Archived documentation

The contents of this web site and the associated GitHub repositories are BSD-licensed open source.