Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Fix instantiation for latest PHP versions. #377

Merged
merged 5 commits into from
Aug 1, 2014

Commits on Jun 25, 2014

  1. [WIP] Fix instantiation for latest PHP versions.

    PHP 5.4.29 and 5.5.13 introduced a BC break that prevents using serialization
    as a means for instantiating internal objects without calling their
    constructor (unless they implement `Serializable`) [[1]]. This issue is still
    evolving and workarounds are currently being discussed in the PHP internals
    mailing list [[2]].
    
    In the mean time, since many PHP libraries rely on this functionality which
    is becoming increasingly complicated to support, @Ocramius has created
    [`ocramius/instantiator`](https://github.com/Ocramius/Instantiator) [[3]]. This
    commit adds support for `ocramius/instantiator` so that phpspec can
    continue to support this feature and stay in sync with other PHP libraries
    which support this feature without having to duplicate logic/updates across
    multiple projects.
    
    Please note that switching to `ocramius/instantiator` doesn't immediately solve
    all problems related to this BC break. Right now some of our tests are still
    failing. Ideally, as work arounds become available, they will be added to
    `ocramius/instantiator`.
    
    [1]:http://news.php.net/php.internals/74654
    [2]:http://marc.info/?t=140347878100001&r=1&w=2
    [3]:https://twitter.com/s_bergmann/status/475284594141691904
    whatthejeff committed Jun 25, 2014
    Configuration menu
    Copy the full SHA
    be8603e View commit details
    Browse the repository at this point in the history

Commits on Jun 27, 2014

  1. Fix test failures caused by PHP BC breaks.

    We can no longer instantiate `ArrayObject` without calling its constructor in
    PHP 5.4/5.5. Since we were only using it as a generic fixture, replace
    `ArrayObject` with `stdClass`.
    whatthejeff committed Jun 27, 2014
    Configuration menu
    Copy the full SHA
    04d3074 View commit details
    Browse the repository at this point in the history

Commits on Jul 29, 2014

  1. Configuration menu
    Copy the full SHA
    32fcd76 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6176fac View commit details
    Browse the repository at this point in the history

Commits on Aug 1, 2014

  1. Configuration menu
    Copy the full SHA
    5007166 View commit details
    Browse the repository at this point in the history