Skip to content

Releases: CopernicaMarketingSoftware/PHP-CPP

PHP-CPP 2.0.0

14 Oct 14:01
Compare
Choose a tag to compare

Added compatibility with PHP7

Version 1.5.3

25 Feb 13:09
Compare
Choose a tag to compare
  • Fix compiler errors when compiling for a multi-threading environment.
  • Don't create a std::string with a nullptr

Version 1.5.2

28 Oct 11:35
Compare
Choose a tag to compare

This is a bugfix release

  • Properly handle a Php::Exception when thrown from a serialize method.
  • Handle exceptions thrown from unserialize similar to normal php.
  • Fix issue with derived classes. closes #211
  • Fix logic error that caused segfaults for extension-created classes extended from userland using a doc-block

Version 1.5.1

07 Oct 15:47
Compare
Choose a tag to compare

This release only adds some error related functions

  • The php error_reporting function is exposed without any slow Php::call() calls
  • The php set_error_handler function is exposed without any slow Php::call() calls
  • Exposed all of the E_* properties as an enum

Version 1.5

29 Jul 10:00
Compare
Choose a tag to compare

PHP-CPP version 1.5 is mainly a bugfix release, and it has a small number of new features:

  • PHP interfaces defined in C++ can now also have static methods
  • Fixed segmentation fault crash when casting objects
  • Fixed crash when calling chained C++ methods from a PHP script
  • Allowed "Php::Value x = y["whatever"]" syntax in C++ code
  • Fixed memory leak when calling function stored in a Php::Value object
  • Fixed memory leak when a Php::Iterator object was being used

Version 1.4

19 May 14:09
Compare
Choose a tag to compare

New release with several bugfixes and some new features

  • Added a function to load other extensions by path
  • Fixed some symbols that were not being exported
  • Value::rawValue() will now return nullptr in case the Value is not a string
  • Value::get(int) and Value::contains(int) now also work on Objects implementing ArrayAccess
  • Makefile will now add the version using sonames

Version 1.3.2

03 Apr 11:58
Compare
Choose a tag to compare

This release is mainly a bugfix release

  • Implemented a simple sapi_name() method which will return the current sapi.
  • On Windows with mingw EOF was not defined.
  • Added access checks to Php::Value::contains.
  • Fixed the Value::contains method and added the isCallable(name) function to see if the object has an accessible member function
  • Changed default visibility for symbols in the PHP-CPP library to hidden and explicitly exported all symbols available from the public API.
  • Fix compile issue with PHP 5.3
  • Added article about dynamic loading
  • Added DlUnrestricted example extension
  • Fixed a crash when dynamicly loaded extensions were unloaded

Version 1.3.1

12 Mar 17:18
Compare
Choose a tag to compare

This release is mainly a bugfix release

  • Added a couple of extra checks to ensure that PHP-CPP also compilers on these olders compilers
  • Fixed compile issue for 32bit systems (issue 167)
  • Fixed segmentation fault when an exception was thrown from out of an __invoke() or __call() method
  • Refactored the initialization and shutdown of extension objects
  • Fixed initialization of the PhpCpp::Functor class
  • Fixed memory leak in classimpl
  • Fixed compile issue on multithread setups
  • Dlsym() call has been replaced with DL_FETCH_SYMBOL(), and default move constructor has been removed
  • Fixed ambiguous call (MSVC compiler) - Re-factored operator[] access to the get() function.
  • Added missing static cast of void* to DL_HANDLE
  • Added missing return statement
  • Fix test (fixes issue 167)
  • Merge pull request #169 from ovr/patch-1 (Fix indent )
  • Merge pull request #173 from atvise/fix_win_ambigious_call - Fixed ambiguous call (MSVC compiler)
  • Merge pull request #175 from atvise/fix_win_missing_static_cast Added missing static cast of void* to DL_HANDLE
  • Merge pull request #176 from atvise/fix_missing_returns Added missing return statement
  • Removed unused code

Version 1.3

27 Jan 15:56
Compare
Choose a tag to compare

A new release of PHP-CPP with bug fixes and new features. The highlights are:

  • Value::unset() method has been fixed to make it possible to remove array/object members
  • Reduced amount of code by using variadic templates
  • All move and assignment operators are marked as 'noexcept'
  • Fixed chaining methods, it now is possible to "return this"
  • FIxed memory leaks
  • Added Php::Script and Php::File classes that can evaluate PHP scripts
  • Added methods Php::include(), Php::include_once(), Php::require() and Php::require_once()
  • Fixed return value of Php::eval() function (this could break existing applications that rely on old behavior)
  • It now is possible to iterate over super-globals like Php::POST, Php::SERVER, etcetera
  • Added Php::Function class that allows one to capture C++ lambdas and pass them over to PHP user space
  • Added support for constants using the Php::Constant class
  • Added functions Php::define(), Php::defined() and Php::constant()
  • Added version check to ensure that a compiled extension is compatible with the installed version of PHP-CPP

Version 1.2.2

25 Nov 13:36
Compare
Choose a tag to compare

This release is mainly a bugfix version

  • Fixed a memory leak with Php::Value objects not being freed correctly when returned
  • Php::Object("MyClass") no longer crashes when there is no __construct() function
  • It is now slightly easier to cross compile