Revert "[BUGFIX] Fix serializable object creation with PHP 5.6" 90/39390/2
authorMichael Stucki <michael.stucki@typo3.org>
Sat, 9 May 2015 21:46:18 +0000 (23:46 +0200)
committerMichael Stucki <michael.stucki@typo3.org>
Sat, 9 May 2015 21:50:21 +0000 (23:50 +0200)
This reverts commit 169a6b2f0ea77e9d050dd8de4139ecdd72facc9d.

This commit added a submodule for
typo3/contrib/vendor/typo3/cms-composer-installers.
Revert until this is fixed.

Change-Id: I093a232d62af2e282958fb86571383bd4387bcf6
Reviewed-on: http://review.typo3.org/39390
Reviewed-by: Michael Stucki <michael.stucki@typo3.org>
Tested-by: Michael Stucki <michael.stucki@typo3.org>
28 files changed:
.gitignore
composer.json
typo3/contrib/vendor/composer/ClassLoader.php
typo3/contrib/vendor/composer/autoload_classmap.php
typo3/contrib/vendor/composer/autoload_namespaces.php
typo3/contrib/vendor/composer/installed.json [deleted file]
typo3/contrib/vendor/doctrine/instantiator/.gitignore [deleted file]
typo3/contrib/vendor/doctrine/instantiator/.scrutinizer.yml [deleted file]
typo3/contrib/vendor/doctrine/instantiator/.travis.install.sh [deleted file]
typo3/contrib/vendor/doctrine/instantiator/.travis.yml [deleted file]
typo3/contrib/vendor/doctrine/instantiator/CONTRIBUTING.md [deleted file]
typo3/contrib/vendor/doctrine/instantiator/LICENSE [deleted file]
typo3/contrib/vendor/doctrine/instantiator/README.md [deleted file]
typo3/contrib/vendor/doctrine/instantiator/composer.json [deleted file]
typo3/contrib/vendor/doctrine/instantiator/phpmd.xml.dist [deleted file]
typo3/contrib/vendor/doctrine/instantiator/phpunit.xml.dist [deleted file]
typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/ExceptionInterface.php [deleted file]
typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/InvalidArgumentException.php [deleted file]
typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/UnexpectedValueException.php [deleted file]
typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Instantiator.php [deleted file]
typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/InstantiatorInterface.php [deleted file]
typo3/contrib/vendor/helhum/class-alias-loader/Classes/Composer/ClassAliasGenerator.php [deleted file]
typo3/contrib/vendor/helhum/class-alias-loader/Classes/Composer/Plugin.php [deleted file]
typo3/contrib/vendor/helhum/class-alias-loader/composer.json
typo3/contrib/vendor/typo3/cms-composer-installers [deleted submodule]
typo3/sysext/extbase/Classes/Object/Container/Container.php
typo3/sysext/extbase/Tests/Unit/Object/Container/ContainerTest.php
typo3/sysext/extbase/Tests/Unit/Object/Container/Fixtures/Testclasses.php

index 776730c..429103e 100644 (file)
@@ -36,6 +36,7 @@ Build/node_modules/*
 # Ignore composer stuff
 bin/*
 Packages/*
+typo3/contrib/vendor/*
 composer.lock
 #
 # Ignore common TYPO3 CMS directories
index 745d635..a9e9470 100644 (file)
@@ -33,7 +33,6 @@
                "ext-pcre": "*",
                "ext-session": "*",
                "ext-xml": "*",
-               "doctrine/instantiator": "1.0.4",
                "helhum/class-alias-loader": "~1.1",
                "typo3/cms-composer-installers": "1.1.*@dev"
        },
index 4e05d3b..70d78bc 100644 (file)
@@ -54,8 +54,6 @@ class ClassLoader
     private $useIncludePath = false;
     private $classMap = array();
 
-    private $classMapAuthoritative = false;
-
     public function getPrefixes()
     {
         if (!empty($this->prefixesPsr0)) {
@@ -251,27 +249,6 @@ class ClassLoader
     }
 
     /**
-     * Turns off searching the prefix and fallback directories for classes
-     * that have not been registered with the class map.
-     *
-     * @param bool $classMapAuthoritative
-     */
-    public function setClassMapAuthoritative($classMapAuthoritative)
-    {
-        $this->classMapAuthoritative = $classMapAuthoritative;
-    }
-
-    /**
-     * Should class lookup fail if not found in the current class map?
-     *
-     * @return bool
-     */
-    public function isClassMapAuthoritative()
-    {
-        return $this->classMapAuthoritative;
-    }
-
-    /**
      * Registers this instance as an autoloader.
      *
      * @param bool $prepend Whether to prepend the autoloader or not
@@ -322,9 +299,6 @@ class ClassLoader
         if (isset($this->classMap[$class])) {
             return $this->classMap[$class];
         }
-        if ($this->classMapAuthoritative) {
-            return false;
-        }
 
         $file = $this->findFileWithExtension($class, '.php');
 
@@ -351,7 +325,7 @@ class ClassLoader
             foreach ($this->prefixLengthsPsr4[$first] as $prefix => $length) {
                 if (0 === strpos($class, $prefix)) {
                     foreach ($this->prefixDirsPsr4[$prefix] as $dir) {
-                        if (is_file($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) {
+                        if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) {
                             return $file;
                         }
                     }
@@ -361,7 +335,7 @@ class ClassLoader
 
         // PSR-4 fallback dirs
         foreach ($this->fallbackDirsPsr4 as $dir) {
-            if (is_file($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) {
+            if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) {
                 return $file;
             }
         }
@@ -380,7 +354,7 @@ class ClassLoader
             foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) {
                 if (0 === strpos($class, $prefix)) {
                     foreach ($dirs as $dir) {
-                        if (is_file($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
+                        if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
                             return $file;
                         }
                     }
@@ -390,7 +364,7 @@ class ClassLoader
 
         // PSR-0 fallback dirs
         foreach ($this->fallbackDirsPsr0 as $dir) {
-            if (is_file($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
+            if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
                 return $file;
             }
         }
index 82e1738..9ab25ff 100644 (file)
@@ -6,14 +6,8 @@ $vendorDir = dirname(dirname(__FILE__));
 $baseDir = dirname(dirname(dirname($vendorDir)));
 
 return array(
-    'doctrine\\instantiator\\exception\\exceptioninterface' => $vendorDir . '/doctrine/instantiator/src/Doctrine/Instantiator/Exception/ExceptionInterface.php',
-    'doctrine\\instantiator\\exception\\invalidargumentexception' => $vendorDir . '/doctrine/instantiator/src/Doctrine/Instantiator/Exception/InvalidArgumentException.php',
-    'doctrine\\instantiator\\exception\\unexpectedvalueexception' => $vendorDir . '/doctrine/instantiator/src/Doctrine/Instantiator/Exception/UnexpectedValueException.php',
-    'doctrine\\instantiator\\instantiator' => $vendorDir . '/doctrine/instantiator/src/Doctrine/Instantiator/Instantiator.php',
-    'doctrine\\instantiator\\instantiatorinterface' => $vendorDir . '/doctrine/instantiator/src/Doctrine/Instantiator/InstantiatorInterface.php',
     'helhum\\classaliasloader\\composer\\classaliasgenerator' => $vendorDir . '/helhum/class-alias-loader/Classes/Composer/ClassAliasGenerator.php',
     'helhum\\classaliasloader\\composer\\classaliasloader' => $vendorDir . '/helhum/class-alias-loader/Classes/Composer/ClassAliasLoader.php',
-    'helhum\\classaliasloader\\composer\\plugin' => $vendorDir . '/helhum/class-alias-loader/Classes/Composer/Plugin.php',
     'psr\\log\\invalidargumentexception' => $baseDir . '/typo3/contrib/Psr/Log/InvalidArgumentException.php',
     'psr\\log\\loggerinterface' => $baseDir . '/typo3/contrib/Psr/Log/LoggerInterface.php',
     'typo3\\cms\\backend\\ajaxloginhandler' => $baseDir . '/typo3/sysext/backend/Classes/AjaxLoginHandler.php',
@@ -158,12 +152,6 @@ return array(
     'typo3\\cms\\backend\\view\\pagetreeview' => $baseDir . '/typo3/sysext/backend/Classes/View/PageTreeView.php',
     'typo3\\cms\\backend\\view\\thumbnailview' => $baseDir . '/typo3/sysext/backend/Classes/View/ThumbnailView.php',
     'typo3\\cms\\backend\\wizard\\newcontentelementwizardhookinterface' => $baseDir . '/typo3/sysext/backend/Classes/Wizard/NewContentElementWizardHookInterface.php',
-    'typo3\\cms\\composer\\installer\\coreinstaller' => $vendorDir . '/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/CoreInstaller.php',
-    'typo3\\cms\\composer\\installer\\coreinstaller\\gettypo3orgservice' => $vendorDir . '/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/CoreInstaller/GetTypo3OrgService.php',
-    'typo3\\cms\\composer\\installer\\downloader\\t3xdownloader' => $vendorDir . '/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/Downloader/T3xDownloader.php',
-    'typo3\\cms\\composer\\installer\\extensioninstaller' => $vendorDir . '/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/ExtensionInstaller.php',
-    'typo3\\cms\\composer\\installer\\plugin' => $vendorDir . '/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/Plugin.php',
-    'typo3\\cms\\composer\\installer\\util\\filesystem' => $vendorDir . '/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/Util/Filesystem.php',
     'typo3\\cms\\core\\authentication\\abstractuserauthentication' => $baseDir . '/typo3/sysext/core/Classes/Authentication/AbstractUserAuthentication.php',
     'typo3\\cms\\core\\authentication\\backenduserauthentication' => $baseDir . '/typo3/sysext/core/Classes/Authentication/BackendUserAuthentication.php',
     'typo3\\cms\\core\\cache\\backend\\abstractbackend' => $baseDir . '/typo3/sysext/core/Classes/Cache/Backend/AbstractBackend.php',
@@ -860,7 +848,6 @@ return array(
     'typo3\\cms\\extensionmanager\\viewhelpers\\showextensionversionsviewhelper' => $baseDir . '/typo3/sysext/extensionmanager/Classes/ViewHelpers/ShowExtensionVersionsViewHelper.php',
     'typo3\\cms\\extensionmanager\\viewhelpers\\timesincelastupdateviewhelper' => $baseDir . '/typo3/sysext/extensionmanager/Classes/ViewHelpers/TimeSinceLastUpdateViewHelper.php',
     'typo3\\cms\\extensionmanager\\viewhelpers\\toggleextensioninstallationstateviewhelper' => $baseDir . '/typo3/sysext/extensionmanager/Classes/ViewHelpers/ToggleExtensionInstallationStateViewHelper.php',
-    'typo3\\cms\\extensionmanager\\viewhelpers\\typo3dependencyviewhelper' => $baseDir . '/typo3/sysext/extensionmanager/Classes/ViewHelpers/Typo3DependencyViewHelper.php',
     'typo3\\cms\\extensionmanager\\viewhelpers\\updatescriptviewhelper' => $baseDir . '/typo3/sysext/extensionmanager/Classes/ViewHelpers/UpdateScriptViewHelper.php',
     'typo3\\cms\\fluid\\compatibility\\docbookgeneratorservice' => $baseDir . '/typo3/sysext/fluid/Classes/Compatibility/DocbookGeneratorService.php',
     'typo3\\cms\\fluid\\compatibility\\templateparserbuilder' => $baseDir . '/typo3/sysext/fluid/Classes/Compatibility/TemplateParserBuilder.php',
index e92b050..a6abe36 100644 (file)
@@ -7,6 +7,4 @@ $baseDir = dirname(dirname(dirname($vendorDir)));
 
 return array(
     'TYPO3\\Flow\\' => array($baseDir . '/typo3/sysext/core/Resources/PHP/TYPO3.Flow/Classes'),
-    'Doctrine\\Instantiator\\' => array($vendorDir . '/doctrine/instantiator/src'),
-    '' => array($vendorDir . '/typo3/cms-composer-installers/Classes'),
 );
diff --git a/typo3/contrib/vendor/composer/installed.json b/typo3/contrib/vendor/composer/installed.json
deleted file mode 100644 (file)
index 9afdf11..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-[
-    {
-        "name": "helhum/class-alias-loader",
-        "version": "1.1.4",
-        "version_normalized": "1.1.4.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/helhum/class-alias-loader.git",
-            "reference": "99c59fffbae4260685bf72a5b34f2d79304903c8"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/helhum/class-alias-loader/zipball/99c59fffbae4260685bf72a5b34f2d79304903c8",
-            "reference": "99c59fffbae4260685bf72a5b34f2d79304903c8",
-            "shasum": ""
-        },
-        "require": {
-            "composer-plugin-api": "1.0.0"
-        },
-        "time": "2015-04-27 12:45:04",
-        "type": "composer-plugin",
-        "extra": {
-            "class": "Helhum\\ClassAliasLoader\\Composer\\Plugin",
-            "branch-alias": {
-                "dev-master": "1.1.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Helhum\\ClassAliasLoader\\": "Classes/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Helmut Hummel",
-                "email": "info@helhum.io"
-            }
-        ],
-        "description": "Amends the composer class loader to support class aliases to provide backwards compatibility for packages",
-        "homepage": "http://github.com/helhum/class-alias-loader",
-        "keywords": [
-            "alias",
-            "autoloader",
-            "classloader",
-            "composer"
-        ]
-    },
-    {
-        "name": "typo3/cms-composer-installers",
-        "version": "dev-master",
-        "version_normalized": "9999999-dev",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/TYPO3/CmsComposerInstallers.git",
-            "reference": "25f6f3f7df1cf5bef8bb30731ca2e0e1f22985ce"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/TYPO3/CmsComposerInstallers/zipball/25f6f3f7df1cf5bef8bb30731ca2e0e1f22985ce",
-            "reference": "25f6f3f7df1cf5bef8bb30731ca2e0e1f22985ce",
-            "shasum": ""
-        },
-        "require": {
-            "composer-plugin-api": "1.0.0"
-        },
-        "replace": {
-            "lw/typo3cms-installers": "*",
-            "netresearch/composer-installers": "*"
-        },
-        "require-dev": {
-            "composer/composer": "1.*"
-        },
-        "time": "2014-12-16 23:30:16",
-        "type": "composer-plugin",
-        "extra": {
-            "class": "TYPO3\\CMS\\Composer\\Installer\\Plugin",
-            "branch-alias": {
-                "dev-master": "1.1.x-dev"
-            }
-        },
-        "installation-source": "source",
-        "autoload": {
-            "psr-0": {
-                "": "Classes/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "GPL-2.0+"
-        ],
-        "authors": [
-            {
-                "name": "Christian Opitz",
-                "email": "christian.opitz@netresearch.de"
-            },
-            {
-                "name": "Lars Peipmann",
-                "email": "lars@peipmann.de"
-            }
-        ],
-        "description": "TYPO3 CMS Installers",
-        "homepage": "http://forge.typo3.org/projects/team-composer",
-        "keywords": [
-            "cms",
-            "core",
-            "extension",
-            "installer",
-            "typo3"
-        ]
-    },
-    {
-        "name": "doctrine/instantiator",
-        "version": "1.0.4",
-        "version_normalized": "1.0.4.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/doctrine/instantiator.git",
-            "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f976e5de371104877ebc89bd8fecb0019ed9c119",
-            "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3,<8.0-DEV"
-        },
-        "require-dev": {
-            "athletic/athletic": "~0.1.8",
-            "ext-pdo": "*",
-            "ext-phar": "*",
-            "phpunit/phpunit": "~4.0",
-            "squizlabs/php_codesniffer": "2.0.*@ALPHA"
-        },
-        "time": "2014-10-13 12:58:55",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.0.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "Doctrine\\Instantiator\\": "src"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Marco Pivetta",
-                "email": "ocramius@gmail.com",
-                "homepage": "http://ocramius.github.com/"
-            }
-        ],
-        "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
-        "homepage": "https://github.com/doctrine/instantiator",
-        "keywords": [
-            "constructor",
-            "instantiate"
-        ]
-    }
-]
diff --git a/typo3/contrib/vendor/doctrine/instantiator/.gitignore b/typo3/contrib/vendor/doctrine/instantiator/.gitignore
deleted file mode 100644 (file)
index 9a63932..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-phpunit.xml
-composer.lock
-build
-vendor
-coverage.clover
\ No newline at end of file
diff --git a/typo3/contrib/vendor/doctrine/instantiator/.scrutinizer.yml b/typo3/contrib/vendor/doctrine/instantiator/.scrutinizer.yml
deleted file mode 100644 (file)
index aad5e40..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-before_commands:
-    - "composer install --prefer-source"
-
-tools:
-    external_code_coverage:
-        timeout: 600
-    php_code_coverage:
-        enabled: true
-        test_command: ./vendor/bin/phpunit
-    php_code_sniffer:
-        enabled: true
-        config:
-            standard: PSR2
-        filter:
-            paths: ["src/*", "tests/*"]
-    php_cpd:
-        enabled: true
-        excluded_dirs: ["build/*", "tests", "vendor"]
-    php_cs_fixer:
-        enabled: true
-        config:
-            level: all
-        filter:
-            paths: ["src/*", "tests/*"]
-    php_loc:
-        enabled: true
-        excluded_dirs: ["build", "tests", "vendor"]
-    php_mess_detector:
-        enabled: true
-        config:
-            ruleset: phpmd.xml.dist
-            design_rules: { eval_expression: false }
-        filter:
-            paths: ["src/*"]
-    php_pdepend:
-        enabled: true
-        excluded_dirs: ["build", "tests", "vendor"]
-    php_analyzer:
-        enabled: true
-        filter:
-            paths: ["src/*", "tests/*"]
-    php_hhvm:
-        enabled: true
-        filter:
-            paths: ["src/*", "tests/*"]
-    sensiolabs_security_checker: true
diff --git a/typo3/contrib/vendor/doctrine/instantiator/.travis.install.sh b/typo3/contrib/vendor/doctrine/instantiator/.travis.install.sh
deleted file mode 100755 (executable)
index e4f1cb2..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-set -x
-if [ "$TRAVIS_PHP_VERSION" = 'hhvm' ] || [ "$TRAVIS_PHP_VERSION" = 'hhvm-nightly' ] ; then
-    curl -sS https://getcomposer.org/installer > composer-installer.php
-    hhvm composer-installer.php
-    hhvm -v ResourceLimit.SocketDefaultTimeout=30 -v Http.SlowQueryThreshold=30000 composer.phar update --prefer-source
-elif [ "$TRAVIS_PHP_VERSION" = '5.3.3' ] ; then
-    composer self-update
-    composer update --prefer-source --no-dev
-    composer dump-autoload
-else
-    composer self-update
-    composer update --prefer-source
-fi
diff --git a/typo3/contrib/vendor/doctrine/instantiator/.travis.yml b/typo3/contrib/vendor/doctrine/instantiator/.travis.yml
deleted file mode 100644 (file)
index 0f686a9..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-language: php
-
-php:
-  - 5.3.3
-  - 5.3
-  - 5.4
-  - 5.5
-  - 5.6
-  - hhvm
-  - hhvm-nightly
-
-before_script:
-  - ./.travis.install.sh
-
-script:
-  - sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.3.3' ]; then phpunit; fi"
-  - sh -c "if [ '$TRAVIS_PHP_VERSION' != '5.3.3' ]; then ./vendor/bin/phpunit; fi"
-  - sh -c "if [ '$TRAVIS_PHP_VERSION' != '5.3.3' ]; then ./vendor/bin/phpcs --standard=PSR2 ./src/ ./tests/; fi"
-  - sh -c "if [[ '$TRAVIS_PHP_VERSION' != '5.3.3' && '$TRAVIS_PHP_VERSION' != '5.4.29'  && '$TRAVIS_PHP_VERSION' != '5.5.13' ]]; then php -n ./vendor/bin/athletic -p ./tests/DoctrineTest/InstantiatorPerformance/ -f GroupedFormatter; fi"
-
-after_script:
-  - sh -c "if [ '$TRAVIS_PHP_VERSION' != '5.3.3' ]; then wget https://scrutinizer-ci.com/ocular.phar; php ocular.phar code-coverage:upload --format=php-clover coverage.clover; fi"
-
-matrix:
-  allow_failures:
-    - php: hhvm-nightly
diff --git a/typo3/contrib/vendor/doctrine/instantiator/CONTRIBUTING.md b/typo3/contrib/vendor/doctrine/instantiator/CONTRIBUTING.md
deleted file mode 100644 (file)
index 75b84b2..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributing
-
- * Coding standard for the project is [PSR-2](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md)
- * The project will follow strict [object calisthenics](http://www.slideshare.net/guilhermeblanco/object-calisthenics-applied-to-php)
- * Any contribution must provide tests for additional introduced conditions
- * Any un-confirmed issue needs a failing test case before being accepted
- * Pull requests must be sent from a new hotfix/feature branch, not from `master`.
-
-## Installation
-
-To install the project and run the tests, you need to clone it first:
-
-```sh
-$ git clone git://github.com/doctrine/instantiator.git
-```
-
-You will then need to run a composer installation:
-
-```sh
-$ cd Instantiator
-$ curl -s https://getcomposer.org/installer | php
-$ php composer.phar update
-```
-
-## Testing
-
-The PHPUnit version to be used is the one installed as a dev- dependency via composer:
-
-```sh
-$ ./vendor/bin/phpunit
-```
-
-Accepted coverage for new contributions is 80%. Any contribution not satisfying this requirement 
-won't be merged.
-
diff --git a/typo3/contrib/vendor/doctrine/instantiator/LICENSE b/typo3/contrib/vendor/doctrine/instantiator/LICENSE
deleted file mode 100644 (file)
index 4d983d1..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (c) 2014 Doctrine Project
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/typo3/contrib/vendor/doctrine/instantiator/README.md b/typo3/contrib/vendor/doctrine/instantiator/README.md
deleted file mode 100644 (file)
index 393ec7c..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-# Instantiator
-
-This library provides a way of avoiding usage of constructors when instantiating PHP classes.
-
-[![Build Status](https://travis-ci.org/doctrine/instantiator.svg?branch=master)](https://travis-ci.org/doctrine/instantiator)
-[![Code Coverage](https://scrutinizer-ci.com/g/doctrine/instantiator/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/doctrine/instantiator/?branch=master)
-[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/doctrine/instantiator/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/doctrine/instantiator/?branch=master)
-[![Dependency Status](https://www.versioneye.com/package/php--doctrine--instantiator/badge.svg)](https://www.versioneye.com/package/php--doctrine--instantiator)
-[![HHVM Status](http://hhvm.h4cc.de/badge/doctrine/instantiator.png)](http://hhvm.h4cc.de/package/doctrine/instantiator)
-
-[![Latest Stable Version](https://poser.pugx.org/doctrine/instantiator/v/stable.png)](https://packagist.org/packages/doctrine/instantiator)
-[![Latest Unstable Version](https://poser.pugx.org/doctrine/instantiator/v/unstable.png)](https://packagist.org/packages/doctrine/instantiator)
-
-## Installation
-
-The suggested installation method is via [composer](https://getcomposer.org/):
-
-```sh
-php composer.phar require "doctrine/instantiator:~1.0.3"
-```
-
-## Usage
-
-The instantiator is able to create new instances of any class without using the constructor or any API of the class
-itself:
-
-```php
-$instantiator = new \Doctrine\Instantiator\Instantiator();
-
-$instance = $instantiator->instantiate('My\\ClassName\\Here');
-```
-
-## Contributing
-
-Please read the [CONTRIBUTING.md](CONTRIBUTING.md) contents if you wish to help out!
-
-## Credits
-
-This library was migrated from [ocramius/instantiator](https://github.com/Ocramius/Instantiator), which
-has been donated to the doctrine organization, and which is now deprecated in favour of this package.
diff --git a/typo3/contrib/vendor/doctrine/instantiator/composer.json b/typo3/contrib/vendor/doctrine/instantiator/composer.json
deleted file mode 100644 (file)
index 89d59f6..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-{
-    "name":              "doctrine/instantiator",
-    "description":       "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
-    "type":              "library",
-    "license":           "MIT",
-    "homepage":          "https://github.com/doctrine/instantiator",
-    "keywords":          [
-        "instantiate",
-        "constructor"
-    ],
-    "authors": [
-        {
-            "name":     "Marco Pivetta",
-            "email":    "ocramius@gmail.com",
-            "homepage": "http://ocramius.github.com/"
-        }
-    ],
-    "require": {
-        "php": ">=5.3,<8.0-DEV"
-    },
-    "require-dev": {
-        "ext-phar":                  "*",
-        "ext-pdo":                   "*",
-        "phpunit/phpunit":           "~4.0",
-        "squizlabs/php_codesniffer": "2.0.*@ALPHA",
-        "athletic/athletic":         "~0.1.8"
-    },
-    "autoload": {
-        "psr-0": {
-            "Doctrine\\Instantiator\\": "src"
-        }
-    },
-    "autoload-dev": {
-        "psr-0": {
-            "DoctrineTest\\InstantiatorPerformance\\": "tests",
-            "DoctrineTest\\InstantiatorTest\\": "tests",
-            "DoctrineTest\\InstantiatorTestAsset\\": "tests"
-        }
-    },
-    "extra": {
-        "branch-alias": {
-            "dev-master": "1.0.x-dev"
-        }
-    }
-}
diff --git a/typo3/contrib/vendor/doctrine/instantiator/phpmd.xml.dist b/typo3/contrib/vendor/doctrine/instantiator/phpmd.xml.dist
deleted file mode 100644 (file)
index 8254105..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<ruleset
-    name="Instantiator rules"
-    xmlns="http://pmd.sf.net/ruleset/1.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd"
-    xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd"
->
-    <rule ref="rulesets/cleancode.xml">
-        <!-- static access is used for caching purposes -->
-        <exclude name="StaticAccess"/>
-    </rule>
-    <rule ref="rulesets/codesize.xml"/>
-    <rule ref="rulesets/controversial.xml"/>
-    <rule ref="rulesets/design.xml"/>
-    <rule ref="rulesets/naming.xml"/>
-    <rule ref="rulesets/unusedcode.xml"/>
-    <rule
-        name="NPathComplexity"
-        message="The {0} {1}() has an NPath complexity of {2}. The configured NPath complexity threshold is {3}."
-        class="PHP_PMD_Rule_Design_NpathComplexity"
-    >
-        <properties>
-            <property name="minimum" description="The npath reporting threshold" value="10"/>
-        </properties>
-    </rule>
-</ruleset>
diff --git a/typo3/contrib/vendor/doctrine/instantiator/phpunit.xml.dist b/typo3/contrib/vendor/doctrine/instantiator/phpunit.xml.dist
deleted file mode 100644 (file)
index 178ba17..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0"?>
-<phpunit
-    bootstrap="./vendor/autoload.php"
-    colors="true"
-    convertErrorsToExceptions="true"
-    convertNoticesToExceptions="true"
-    convertWarningsToExceptions="true"
-    verbose="true"
-    stopOnFailure="false"
-    processIsolation="false"
-    backupGlobals="false"
-    syntaxCheck="true"
->
-    <testsuite name="Doctrine\Instantiator tests">
-        <directory>./tests/DoctrineTest/InstantiatorTest</directory>
-    </testsuite>
-    <filter>
-        <whitelist addUncoveredFilesFromWhitelist="true">
-            <directory suffix=".php">./src</directory>
-        </whitelist>
-    </filter>
-    <logging>
-        <log type="coverage-clover" target="./coverage.clover"/>
-    </logging>
-</phpunit>
diff --git a/typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/ExceptionInterface.php b/typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/ExceptionInterface.php
deleted file mode 100644 (file)
index 3065375..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Instantiator\Exception;
-
-/**
- * Base exception marker interface for the instantiator component
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-interface ExceptionInterface
-{
-}
diff --git a/typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/InvalidArgumentException.php b/typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/InvalidArgumentException.php
deleted file mode 100644 (file)
index ea8d28c..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Instantiator\Exception;
-
-use InvalidArgumentException as BaseInvalidArgumentException;
-use ReflectionClass;
-
-/**
- * Exception for invalid arguments provided to the instantiator
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class InvalidArgumentException extends BaseInvalidArgumentException implements ExceptionInterface
-{
-    /**
-     * @param string $className
-     *
-     * @return self
-     */
-    public static function fromNonExistingClass($className)
-    {
-        if (interface_exists($className)) {
-            return new self(sprintf('The provided type "%s" is an interface, and can not be instantiated', $className));
-        }
-
-        if (PHP_VERSION_ID >= 50400 && trait_exists($className)) {
-            return new self(sprintf('The provided type "%s" is a trait, and can not be instantiated', $className));
-        }
-
-        return new self(sprintf('The provided class "%s" does not exist', $className));
-    }
-
-    /**
-     * @param ReflectionClass $reflectionClass
-     *
-     * @return self
-     */
-    public static function fromAbstractClass(ReflectionClass $reflectionClass)
-    {
-        return new self(sprintf(
-            'The provided class "%s" is abstract, and can not be instantiated',
-            $reflectionClass->getName()
-        ));
-    }
-}
diff --git a/typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/UnexpectedValueException.php b/typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/UnexpectedValueException.php
deleted file mode 100644 (file)
index 1681e56..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Instantiator\Exception;
-
-use Exception;
-use ReflectionClass;
-use UnexpectedValueException as BaseUnexpectedValueException;
-
-/**
- * Exception for given parameters causing invalid/unexpected state on instantiation
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class UnexpectedValueException extends BaseUnexpectedValueException implements ExceptionInterface
-{
-    /**
-     * @param ReflectionClass $reflectionClass
-     * @param Exception       $exception
-     *
-     * @return self
-     */
-    public static function fromSerializationTriggeredException(ReflectionClass $reflectionClass, Exception $exception)
-    {
-        return new self(
-            sprintf(
-                'An exception was raised while trying to instantiate an instance of "%s" via un-serialization',
-                $reflectionClass->getName()
-            ),
-            0,
-            $exception
-        );
-    }
-
-    /**
-     * @param ReflectionClass $reflectionClass
-     * @param string          $errorString
-     * @param int             $errorCode
-     * @param string          $errorFile
-     * @param int             $errorLine
-     *
-     * @return UnexpectedValueException
-     */
-    public static function fromUncleanUnSerialization(
-        ReflectionClass $reflectionClass,
-        $errorString,
-        $errorCode,
-        $errorFile,
-        $errorLine
-    ) {
-        return new self(
-            sprintf(
-                'Could not produce an instance of "%s" via un-serialization, since an error was triggered '
-                . 'in file "%s" at line "%d"',
-                $reflectionClass->getName(),
-                $errorFile,
-                $errorLine
-            ),
-            0,
-            new Exception($errorString, $errorCode)
-        );
-    }
-}
diff --git a/typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Instantiator.php b/typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Instantiator.php
deleted file mode 100644 (file)
index 98868cf..0000000
+++ /dev/null
@@ -1,254 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Instantiator;
-
-use Closure;
-use Doctrine\Instantiator\Exception\InvalidArgumentException;
-use Doctrine\Instantiator\Exception\UnexpectedValueException;
-use Exception;
-use ReflectionClass;
-
-/**
- * {@inheritDoc}
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-final class Instantiator implements InstantiatorInterface
-{
-    /**
-     * Markers used internally by PHP to define whether {@see \unserialize} should invoke
-     * the method {@see \Serializable::unserialize()} when dealing with classes implementing
-     * the {@see \Serializable} interface.
-     */
-    const SERIALIZATION_FORMAT_USE_UNSERIALIZER   = 'C';
-    const SERIALIZATION_FORMAT_AVOID_UNSERIALIZER = 'O';
-
-    /**
-     * @var \Closure[] of {@see \Closure} instances used to instantiate specific classes
-     */
-    private static $cachedInstantiators = array();
-
-    /**
-     * @var object[] of objects that can directly be cloned
-     */
-    private static $cachedCloneables = array();
-
-    /**
-     * {@inheritDoc}
-     */
-    public function instantiate($className)
-    {
-        if (isset(self::$cachedCloneables[$className])) {
-            return clone self::$cachedCloneables[$className];
-        }
-
-        if (isset(self::$cachedInstantiators[$className])) {
-            $factory = self::$cachedInstantiators[$className];
-
-            return $factory();
-        }
-
-        $factory    = self::$cachedInstantiators[$className] = $this->buildFactory($className);
-        $instance   = $factory();
-        $reflection = new ReflectionClass($instance);
-
-        if ($this->isSafeToClone($reflection)) {
-            self::$cachedCloneables[$className] = clone $instance;
-        }
-
-        return $instance;
-    }
-
-    /**
-     * @internal
-     * @private
-     *
-     * Builds a {@see \Closure} capable of instantiating the given $className without
-     * invoking its constructor.
-     * This method is only exposed as public because of PHP 5.3 compatibility. Do not
-     * use this method in your own code
-     *
-     * @param string $className
-     *
-     * @return Closure
-     */
-    public function buildFactory($className)
-    {
-        $reflectionClass = $this->getReflectionClass($className);
-
-        if ($this->isInstantiableViaReflection($reflectionClass)) {
-            return function () use ($reflectionClass) {
-                return $reflectionClass->newInstanceWithoutConstructor();
-            };
-        }
-
-        $serializedString = sprintf(
-            '%s:%d:"%s":0:{}',
-            $this->getSerializationFormat($reflectionClass),
-            strlen($className),
-            $className
-        );
-
-        $this->attemptInstantiationViaUnSerialization($reflectionClass, $serializedString);
-
-        return function () use ($serializedString) {
-            return unserialize($serializedString);
-        };
-    }
-
-    /**
-     * @param string $className
-     *
-     * @return ReflectionClass
-     *
-     * @throws InvalidArgumentException
-     */
-    private function getReflectionClass($className)
-    {
-        if (! class_exists($className)) {
-            throw InvalidArgumentException::fromNonExistingClass($className);
-        }
-
-        $reflection = new ReflectionClass($className);
-
-        if ($reflection->isAbstract()) {
-            throw InvalidArgumentException::fromAbstractClass($reflection);
-        }
-
-        return $reflection;
-    }
-
-    /**
-     * @param ReflectionClass $reflectionClass
-     * @param string          $serializedString
-     *
-     * @throws UnexpectedValueException
-     *
-     * @return void
-     */
-    private function attemptInstantiationViaUnSerialization(ReflectionClass $reflectionClass, $serializedString)
-    {
-        set_error_handler(function ($code, $message, $file, $line) use ($reflectionClass, & $error) {
-            $error = UnexpectedValueException::fromUncleanUnSerialization(
-                $reflectionClass,
-                $message,
-                $code,
-                $file,
-                $line
-            );
-        });
-
-        try {
-            unserialize($serializedString);
-        } catch (Exception $exception) {
-            restore_error_handler();
-
-            throw UnexpectedValueException::fromSerializationTriggeredException($reflectionClass, $exception);
-        }
-
-        restore_error_handler();
-
-        if ($error) {
-            throw $error;
-        }
-    }
-
-    /**
-     * @param ReflectionClass $reflectionClass
-     *
-     * @return bool
-     */
-    private function isInstantiableViaReflection(ReflectionClass $reflectionClass)
-    {
-        if (\PHP_VERSION_ID >= 50600) {
-            return ! ($reflectionClass->isInternal() && $reflectionClass->isFinal());
-        }
-
-        return \PHP_VERSION_ID >= 50400 && ! $this->hasInternalAncestors($reflectionClass);
-    }
-
-    /**
-     * Verifies whether the given class is to be considered internal
-     *
-     * @param ReflectionClass $reflectionClass
-     *
-     * @return bool
-     */
-    private function hasInternalAncestors(ReflectionClass $reflectionClass)
-    {
-        do {
-            if ($reflectionClass->isInternal()) {
-                return true;
-            }
-        } while ($reflectionClass = $reflectionClass->getParentClass());
-
-        return false;
-    }
-
-    /**
-     * Verifies if the given PHP version implements the `Serializable` interface serialization
-     * with an incompatible serialization format. If that's the case, use serialization marker
-     * "C" instead of "O".
-     *
-     * @link http://news.php.net/php.internals/74654
-     *
-     * @param ReflectionClass $reflectionClass
-     *
-     * @return string the serialization format marker, either self::SERIALIZATION_FORMAT_USE_UNSERIALIZER
-     *                or self::SERIALIZATION_FORMAT_AVOID_UNSERIALIZER
-     */
-    private function getSerializationFormat(ReflectionClass $reflectionClass)
-    {
-        if ($this->isPhpVersionWithBrokenSerializationFormat()
-            && $reflectionClass->implementsInterface('Serializable')
-        ) {
-            return self::SERIALIZATION_FORMAT_USE_UNSERIALIZER;
-        }
-
-        return self::SERIALIZATION_FORMAT_AVOID_UNSERIALIZER;
-    }
-
-    /**
-     * Checks whether the current PHP runtime uses an incompatible serialization format
-     *
-     * @return bool
-     */
-    private function isPhpVersionWithBrokenSerializationFormat()
-    {
-        return PHP_VERSION_ID === 50429 || PHP_VERSION_ID === 50513;
-    }
-
-    /**
-     * Checks if a class is cloneable
-     *
-     * @param ReflectionClass $reflection
-     *
-     * @return bool
-     */
-    private function isSafeToClone(ReflectionClass $reflection)
-    {
-        if (method_exists($reflection, 'isCloneable') && ! $reflection->isCloneable()) {
-            return false;
-        }
-
-        // not cloneable if it implements `__clone`, as we want to avoid calling it
-        return ! $reflection->hasMethod('__clone');
-    }
-}
diff --git a/typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/InstantiatorInterface.php b/typo3/contrib/vendor/doctrine/instantiator/src/Doctrine/Instantiator/InstantiatorInterface.php
deleted file mode 100644 (file)
index b665bea..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Instantiator;
-
-/**
- * Instantiator provides utility methods to build objects without invoking their constructors
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-interface InstantiatorInterface
-{
-    /**
-     * @param string $className
-     *
-     * @return object
-     *
-     * @throws \Doctrine\Instantiator\Exception\ExceptionInterface
-     */
-    public function instantiate($className);
-}
diff --git a/typo3/contrib/vendor/helhum/class-alias-loader/Classes/Composer/ClassAliasGenerator.php b/typo3/contrib/vendor/helhum/class-alias-loader/Classes/Composer/ClassAliasGenerator.php
deleted file mode 100644 (file)
index d43d713..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-<?php
-namespace Helhum\ClassAliasLoader\Composer;
-
-/*
- * This file is part of the class alias loader package.
- *
- * (c) Helmut Hummel <info@helhum.io>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-use Composer\Package\RootPackageInterface;
-use Composer\Util\Filesystem;
-
-/**
- * Class ClassAliasLoader
- */
-class ClassAliasGenerator {
-
-       /**
-        * @param \Composer\Script\Event $event
-        * @param bool $calledByPlugin
-        * @return bool
-        * @throws \Exception
-        */
-       static public function generateAliasMap(\Composer\Script\Event $event, $calledByPlugin = false) {
-               if (!$calledByPlugin) {
-                       $event->getIO()->write('
-<warning>Please remove the section "post-autoload-dump": "Helhum\\ClassAliasLoader\\Composer\\ClassAliasGenerator::generateAliasMap" from your composer.json! It is obsolete.</warning>
-');
-                       return false;
-               }
-               $event->getIO()->write('<info>Generating class alias map files</info>');
-
-               $composer = $event->getComposer();
-               $config = $composer->getConfig();
-
-               $filesystem = new Filesystem();
-               $filesystem->ensureDirectoryExists($config->get('vendor-dir'));
-               $basePath = $filesystem->normalizePath(realpath(getcwd()));
-               $vendorPath = $filesystem->normalizePath(realpath($config->get('vendor-dir')));
-               $targetDir = $vendorPath . '/composer';
-               $filesystem->ensureDirectoryExists($targetDir);
-
-               $mainPackage = $composer->getPackage();
-               $autoLoadGenerator = $composer->getAutoloadGenerator();
-               $localRepo = $composer->getRepositoryManager()->getLocalRepository();
-               $packageMap = $autoLoadGenerator->buildPackageMap($composer->getInstallationManager(), $mainPackage, $localRepo->getCanonicalPackages());
-
-               $caseSensitiveClassLoading = self::caseSensitiveClassLoading($mainPackage, $targetDir) ? 'true' : 'false';
-
-               $aliasToClassNameMapping = array();
-               $classNameToAliasMapping = array();
-               $mappingFound = false;
-
-               foreach ($packageMap as $item) {
-                       list($package, $installPath) = $item;
-                       $extra = $package->getExtra();
-                       if (!empty($extra['class-alias-maps'])) {
-                               if (!is_array($extra['class-alias-maps'])) {
-                                       throw new \Exception('"class-alias-maps" must be an array');
-                               }
-                               foreach ($extra['class-alias-maps'] as $mapFile) {
-                                       $mapFilePath = ($installPath ?: $basePath) . '/' . $filesystem->normalizePath($mapFile);
-                                       if (is_file($mapFilePath)) {
-                                               $packageAliasMap = require $mapFilePath;
-                                               if (!is_array($packageAliasMap)) {
-                                                       throw new \Exception('"class alias maps" must return an array', 1422625075);
-                                               }
-                                               if (!empty($packageAliasMap)) {
-                                                       $mappingFound = true;
-                                               }
-                                               foreach ($packageAliasMap as $aliasClassName => $className) {
-                                                       $lowerCasedAliasClassName = strtolower($aliasClassName);
-                                                       $aliasToClassNameMapping[$lowerCasedAliasClassName] = $className;
-                                                       $classNameToAliasMapping[$className][$lowerCasedAliasClassName] = $lowerCasedAliasClassName;
-                                               }
-                                       }
-                               }
-                       }
-               }
-
-               if (!$mappingFound) {
-                       return false;
-               }
-
-               $exportArray = array(
-                       'aliasToClassNameMapping' => $aliasToClassNameMapping,
-                       'classNameToAliasMapping' => $classNameToAliasMapping
-               );
-
-               $fileContent = '<?php' . chr(10) . 'return ';
-               $fileContent .= var_export($exportArray, true);
-               $fileContent .= ';';
-
-               file_put_contents($targetDir . '/autoload_classaliasmap.php', $fileContent);
-               $originalAutoloadFileContent = file_get_contents($vendorPath . '/autoload.php');
-               preg_match('/return ComposerAutoloaderInit[^;]*;/', $originalAutoloadFileContent, $matches);
-               $originalAutoloadFileContent = str_replace($matches[0], '', $originalAutoloadFileContent);
-               $composerClassLoaderInit = str_replace(array('return ', ';'), '', $matches[0]);
-               $autoloadFileContent = <<<EOF
-$originalAutoloadFileContent
-
-// autoload.php @generated by Helhum/ClassAliasLoader
-
-return call_user_func(function() {
-       \$composerClassLoader = $composerClassLoaderInit;
-       \$aliasClassLoader = new Helhum\ClassAliasLoader\Composer\ClassAliasLoader(\$composerClassLoader);
-
-       \$classAliasMap = require __DIR__ . '/composer/autoload_classaliasmap.php';
-       \$aliasClassLoader->setAliasMap(\$classAliasMap);
-       \$aliasClassLoader->setCaseSensitiveClassLoading($caseSensitiveClassLoading);
-       spl_autoload_register(array(\$aliasClassLoader, 'loadClassWithAlias'), true, true);
-
-       return \$aliasClassLoader;
-});
-
-EOF;
-
-               file_put_contents($vendorPath . '/autoload.php', $autoloadFileContent);
-
-               return true;
-       }
-
-       /**
-        * Rewrites the class map to have lowercased keys to be able to load classes with wrong casing
-        * Defaults to case sensitivity (composer loader default)
-        *
-        * @param RootPackageInterface $mainPackage
-        * @param string $targetDir
-        * @return bool
-        */
-       static protected function caseSensitiveClassLoading(RootPackageInterface $mainPackage, $targetDir) {
-               $extra = $mainPackage->getExtra();
-               $caseSensitiveClassLoading = true;
-               if (isset($extra['autoload-case-sensitivity'])) {
-                       $caseSensitiveClassLoading = (bool)$extra['autoload-case-sensitivity'];
-               }
-               if (!$caseSensitiveClassLoading) {
-                       $classMapContents = file_get_contents($targetDir . '/autoload_classmap.php');
-                       $classMapContents = preg_replace_callback(
-                               '/    \'[^\']*\' => /',
-                               function($match) {
-                                       return strtolower($match[0]);
-                               },
-                               $classMapContents
-                       );
-                       file_put_contents($targetDir . '/autoload_classmap.php', $classMapContents);
-               }
-               return $caseSensitiveClassLoading;
-       }
-}
\ No newline at end of file
diff --git a/typo3/contrib/vendor/helhum/class-alias-loader/Classes/Composer/Plugin.php b/typo3/contrib/vendor/helhum/class-alias-loader/Classes/Composer/Plugin.php
deleted file mode 100644 (file)
index 1f839e0..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-<?php
-namespace Helhum\ClassAliasLoader\Composer;
-
-/*
- * This file is part of the class alias loader package.
- *
- * (c) Helmut Hummel <info@helhum.io>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-use Composer\Composer;
-use Composer\IO\IOInterface;
-use Composer\Plugin\PluginInterface;
-use Composer\EventDispatcher\EventSubscriberInterface;
-
-/**
- * Class Plugin
- */
-class Plugin implements PluginInterface, EventSubscriberInterface {
-
-       /**
-        * @var Composer
-        */
-       protected $composer;
-
-       /**
-        * @var IOInterface
-        */
-       protected $io;
-
-       /**
-        * Apply plugin modifications to composer
-        *
-        * @param Composer $composer
-        * @param IOInterface $io
-        */
-       public function activate(Composer $composer, IOInterface $io) {
-               $this->composer = $composer;
-               $this->io = $io;
-       }
-
-       /**
-        * Returns an array of event names this subscriber wants to listen to.
-        *
-        * The array keys are event names and the value can be:
-        *
-        * * The method name to call (priority defaults to 0)
-        * * An array composed of the method name to call and the priority
-        * * An array of arrays composed of the method names to call and respective
-        *   priorities, or 0 if unset
-        *
-        * For instance:
-        *
-        * * array('eventName' => 'methodName')
-        * * array('eventName' => array('methodName', $priority))
-        * * array('eventName' => array(array('methodName1', $priority), array('methodName2'))
-        *
-        * @return array The event names to listen to
-        */
-       public static function getSubscribedEvents() {
-               return array(
-                       'post-autoload-dump' => array('onPostAutoloadDump')
-               );
-       }
-
-       /**
-        * Plugin callback for this script event, which calls the previously implemented static method
-        *
-        * @param \Composer\Script\Event $event
-        * @return bool
-        */
-       public function onPostAutoloadDump(\Composer\Script\Event $event) {
-               return ClassAliasGenerator::generateAliasMap($event, true);
-       }
-
-}
\ No newline at end of file
index 46fdbd7..af9614a 100644 (file)
@@ -1,6 +1,5 @@
 {
     "name": "helhum/class-alias-loader",
-    "type": "composer-plugin",
     "license": "MIT",
     "description": "Amends the composer class loader to support class aliases to provide backwards compatibility for packages",
     "keywords": [
     "autoload": {
         "psr-4": { "Helhum\\ClassAliasLoader\\": "Classes/"}
     },
-    "require": {
-        "composer-plugin-api": "1.0.0"
-    },
     "extra": {
-        "class": "Helhum\\ClassAliasLoader\\Composer\\Plugin",
         "branch-alias": {
-            "dev-master": "1.1.x-dev"
+            "dev-master": "1.0.x-dev"
         }
     }
 }
diff --git a/typo3/contrib/vendor/typo3/cms-composer-installers b/typo3/contrib/vendor/typo3/cms-composer-installers
deleted file mode 160000 (submodule)
index 25f6f3f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 25f6f3f7df1cf5bef8bb30731ca2e0e1f22985ce
index 652cee7..cef2c75 100644 (file)
@@ -49,11 +49,6 @@ class Container implements \TYPO3\CMS\Core\SingletonInterface {
        private $classInfoFactory = NULL;
 
        /**
-        * @var \Doctrine\Instantiator\InstantiatorInterface
-        */
-       protected $instantiator = NULL;
-
-       /**
         * holds references of singletons
         *
         * @var array
@@ -101,18 +96,6 @@ class Container implements \TYPO3\CMS\Core\SingletonInterface {
        }
 
        /**
-        * Internal method to create the class instantiator, extracted to be mockable
-        *
-        * @return \Doctrine\Instantiator\InstantiatorInterface
-        */
-       protected function getInstantiator() {
-               if ($this->instantiator == NULL) {
-                       $this->instantiator = new \Doctrine\Instantiator\Instantiator();
-               }
-               return $this->instantiator;
-       }
-
-       /**
         * Main method which should be used to get an instance of the wished class
         * specified by $className.
         *
@@ -134,7 +117,8 @@ class Container implements \TYPO3\CMS\Core\SingletonInterface {
        public function getEmptyObject($className) {
                $className = $this->getImplementationClassName($className);
                $classInfo = $this->getClassInfo($className);
-               $object = $this->getInstantiator()->instantiate($className);
+               // get an object and avoid calling __construct()
+               $object = unserialize('O:' . strlen($className) . ':"' . $className . '":0:{};');
                $this->injectDependencies($object, $classInfo);
                return $object;
        }
index b8a47f1..02303dd 100644 (file)
@@ -202,14 +202,6 @@ class ContainerTest extends \TYPO3\CMS\Core\Tests\UnitTestCase {
        /**
         * @test
         */
-       public function getEmptyObjectReturnsInstanceOfClassImplementingSerializable() {
-               $object = $this->container->getEmptyObject('t3lib_object_tests_serializable');
-               $this->assertInstanceOf('t3lib_object_tests_serializable', $object);
-       }
-
-       /**
-        * @test
-        */
        public function test_canGetChildClass() {
                $object = $this->container->getInstance('t3lib_object_tests_b_child');
                $this->assertInstanceOf('t3lib_object_tests_b_child', $object);
index 3f08e92..28ed4ed 100644 (file)
@@ -131,14 +131,6 @@ interface t3lib_object_tests_someinterface extends \TYPO3\CMS\Core\SingletonInte
 }
 
 /**
- * Test class D implementing Serializable
- */
-class t3lib_object_tests_serializable implements \Serializable {
-       public function serialize() {}
-       public function unserialize($s) {}
-}
-
-/**
  * class which implements a Interface
  */
 class t3lib_object_tests_someimplementation implements \t3lib_object_tests_someinterface {