diff --git a/composer.json b/composer.json index 53c6638cb2c..c8f3c209269 100644 --- a/composer.json +++ b/composer.json @@ -14,7 +14,8 @@ "slim/slim": "^3.0", "pimple/pimple": "^3.0", "illuminate/database": "4.1.*", - "firebase/php-jwt": "^5.0" + "firebase/php-jwt": "^5.0", + "cweagans/composer-patches": "^1.7" }, "require-dev": { "phpunit/phpunit-selenium": "1.4.2" @@ -22,5 +23,12 @@ "config": { "component-dir": "lib/components", "vendor-dir": "lib/vendor" + }, + "extra": { + "patches": { + "illuminate/database": { + "Patch Laravel binding array issue": "lib/laravel-binding-6632.diff" + } + } } } diff --git a/composer.lock b/composer.lock index ebafc8a52e0..e8ed440c802 100644 --- a/composer.lock +++ b/composer.lock @@ -1,10 +1,10 @@ { "_readme": [ "This file locks the dependencies of your project to a known state", - "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "d91912e0ada26496f06c252893cbf719", + "content-hash": "bcf8bb7eb51cad8bbfc8110870854cb1", "packages": [ { "name": "alex198710/pnotify", @@ -196,8 +196,53 @@ ], "description": "Promoting the interoperability of container objects (DIC, SL, etc.)", "homepage": "https://github.com/container-interop/container-interop", + "abandoned": "psr/container", "time": "2017-02-14T19:40:03+00:00" }, + { + "name": "cweagans/composer-patches", + "version": "1.7.0", + "source": { + "type": "git", + "url": "https://github.com/cweagans/composer-patches.git", + "reference": "ae02121445ad75f4eaff800cc532b5e6233e2ddf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cweagans/composer-patches/zipball/ae02121445ad75f4eaff800cc532b5e6233e2ddf", + "reference": "ae02121445ad75f4eaff800cc532b5e6233e2ddf", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.0 || ^2.0", + "php": ">=5.3.0" + }, + "require-dev": { + "composer/composer": "~1.0 || ~2.0", + "phpunit/phpunit": "~4.6" + }, + "type": "composer-plugin", + "extra": { + "class": "cweagans\\Composer\\Patches" + }, + "autoload": { + "psr-4": { + "cweagans\\Composer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Cameron Eagans", + "email": "me@cweagans.net" + } + ], + "description": "Provides a way to patch Composer packages.", + "time": "2020-09-30T17:56:20+00:00" + }, { "name": "ezyang/htmlpurifier", "version": "v4.6.0", @@ -859,6 +904,7 @@ "php", "stylesheet" ], + "abandoned": true, "time": "2015-03-10T18:12:59+00:00" }, { @@ -1133,6 +1179,7 @@ } ], "description": "Allows installation of Components via Composer.", + "abandoned": "oomphinc/composer-installers-extender", "time": "2015-08-10T12:35:38+00:00" }, { @@ -2664,5 +2711,6 @@ "prefer-stable": false, "prefer-lowest": false, "platform": [], - "platform-dev": [] + "platform-dev": [], + "plugin-api-version": "1.1.0" } diff --git a/lib/laravel-binding-6632.diff b/lib/laravel-binding-6632.diff new file mode 100644 index 00000000000..8934d24d0af --- /dev/null +++ b/lib/laravel-binding-6632.diff @@ -0,0 +1,38 @@ +diff --git a/src/Illuminate/Database/Query/Builder.php b/src/Illuminate/Database/Query/Builder.php +index 0d4c7c3ae16..83416d83be0 100755 +--- a/src/Illuminate/Database/Query/Builder.php +@@ -398,7 +398,7 @@ + + if ( ! $value instanceof Expression) + { +- $this->bindings[] = $value; ++ $this->bindings[] = is_array($value) ? head($value) : $value; + } + + return $this; +@@ -477,7 +477,7 @@ + + $this->wheres[] = compact('column', 'type', 'boolean', 'not'); + +- $this->bindings = array_merge($this->bindings, $values); ++ $this->bindings = array_merge($this->bindings, array_slice($values, 0, 2)); + + return $this; + } +@@ -846,6 +846,7 @@ + { + $this->wheres[] = compact('column', 'type', 'boolean', 'operator', 'value'); + ++ $value = is_array($value) ? head($value) : $value; + $this->bindings[] = $value; + + return $this; +@@ -941,7 +942,7 @@ + + $this->havings[] = compact('type', 'column', 'operator', 'value'); + +- $this->bindings[] = $value; ++ $this->bindings[] = is_array($value) ? head($value) : $value; + + return $this; + }