From 89885140d357d0c368f0e178fe697a52d69db119 Mon Sep 17 00:00:00 2001 From: Rob Bast Date: Tue, 2 Jun 2015 15:04:58 +0200 Subject: [PATCH 1/2] Created a failing test case --- .../Composer/Test/Package/Loader/ValidatingArrayLoaderTest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Composer/Test/Package/Loader/ValidatingArrayLoaderTest.php b/tests/Composer/Test/Package/Loader/ValidatingArrayLoaderTest.php index a0df20f72..075ee8253 100644 --- a/tests/Composer/Test/Package/Loader/ValidatingArrayLoaderTest.php +++ b/tests/Composer/Test/Package/Loader/ValidatingArrayLoaderTest.php @@ -47,7 +47,7 @@ class ValidatingArrayLoaderTest extends \PHPUnit_Framework_TestCase 'description' => 'Foo bar', 'version' => '1.0.0', 'type' => 'library', - 'keywords' => array('a', 'b_c', 'D E'), + 'keywords' => array('a', 'b_c', 'D E', 'éîüø', '微信'), 'homepage' => 'https://foo.com', 'time' => '2010-10-10T10:10:10+00:00', 'license' => 'MIT', From 0f04f97088bc95ee050750676caf37b8542d4720 Mon Sep 17 00:00:00 2001 From: Rob Bast Date: Tue, 2 Jun 2015 15:05:08 +0200 Subject: [PATCH 2/2] Fixed failing testcase --- src/Composer/Package/Loader/ValidatingArrayLoader.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Composer/Package/Loader/ValidatingArrayLoader.php b/src/Composer/Package/Loader/ValidatingArrayLoader.php index c3377019b..86386989c 100644 --- a/src/Composer/Package/Loader/ValidatingArrayLoader.php +++ b/src/Composer/Package/Loader/ValidatingArrayLoader.php @@ -70,7 +70,7 @@ class ValidatingArrayLoader implements LoaderInterface $this->validateArray('scripts'); // TODO validate event names & listener syntax $this->validateString('description'); $this->validateUrl('homepage'); - $this->validateFlatArray('keywords', '[A-Za-z0-9 ._-]+'); + $this->validateFlatArray('keywords', '[\p{N}\p{L} ._-]+'); if (isset($this->config['license'])) { if (is_string($this->config['license'])) {