From 50cb35116761f3333c052bd9592591402390bf1b Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Sun, 29 May 2016 13:49:30 +0100 Subject: [PATCH 01/13] Tag normalization is now in the model, this is refelcted elsewhere in code usage --- app/Http/Controllers/NotesController.php | 14 +++--------- app/Note.php | 3 ++- app/Tag.php | 28 ++++++++++++++++++++++++ changelog.md | 3 +++ 4 files changed, 36 insertions(+), 12 deletions(-) diff --git a/app/Http/Controllers/NotesController.php b/app/Http/Controllers/NotesController.php index ef215f58..a501be81 100644 --- a/app/Http/Controllers/NotesController.php +++ b/app/Http/Controllers/NotesController.php @@ -155,17 +155,9 @@ class NotesController extends Controller */ public function taggedNotes($tag) { - $tag = mb_strtolower( - preg_replace( - '/&([a-z]{1,2})(acute|cedil|circ|grave|lig|orn|ring|slash|th|tilde|uml|caron);/i', - '$1', - htmlentities($tag) - ), - 'UTF-8' - ); - - $tagId = Tag::where('tag', $tag)->pluck('id'); - $notes = Tag::find($tagId)->notes()->orderBy('updated_at', 'desc')->get(); + $notes = Note::whereHas('tags', function ($query) use ($tag) { + $query->where('tag', $tag); + })->get(); foreach ($notes as $note) { $note->iso8601_time = $note->updated_at->toISO8601String(); $note->human_time = $note->updated_at->diffForHumans(); diff --git a/app/Note.php b/app/Note.php index 29213e14..2e8c53c7 100644 --- a/app/Note.php +++ b/app/Note.php @@ -2,6 +2,7 @@ namespace App; +use App\Tag; use Normalizer; use Jonnybarnes\IndieWeb\Numbers; use Illuminate\Database\Eloquent\Model; @@ -216,7 +217,7 @@ class Note extends Model implements HasMedia foreach ($matches[0] as $name) { $name = str_replace('#', '', $name); $replacements[$name] = - ''; + ''; } // Replace #tags with valid microformat-enabled link diff --git a/app/Tag.php b/app/Tag.php index fb55663a..e6c6bcac 100644 --- a/app/Tag.php +++ b/app/Tag.php @@ -36,4 +36,32 @@ class Tag extends Model * @var array */ protected $guarded = ['id']; + + /** + * Normalize tags so they’re lowercase and fancy diatrics are removed. + * + * @param string + */ + public function setTagAttribute($value) + { + $this->attributes['tag'] = $this->normalizeTag($value); + } + + /** + * This method actually normalizes a tag. That means lowercase-ing and + * removing fancy diatric characters. + * + * @param string + */ + public static function normalizeTag($tag) + { + return mb_strtolower( + preg_replace( + '/&([a-z]{1,2})(acute|cedil|circ|grave|lig|orn|ring|slash|th|tilde|uml|caron);/i', + '$1', + htmlentities($tag) + ), + 'UTF-8' + ); + } } diff --git a/changelog.md b/changelog.md index affb1d3b..e123718a 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,8 @@ # Changelog +## Version {next} + - Better tag normalization code organisation + ## Version 0.0.2 (2016-05-25) - Fix issue#1: tagged notes page needs the tag from the URL normalizing. From 4bb454c5454c59c0a2e097edfd376d750c46d9a4 Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Sun, 29 May 2016 13:52:48 +0100 Subject: [PATCH 02/13] =?UTF-8?q?Fix=20Style=20CI,=20didn=E2=80=99t=20occu?= =?UTF-8?q?r=20to=20me=20models=20exist=20in=20the=20same=20namespace,=20s?= =?UTF-8?q?o=20we=20don=E2=80=99t=20need=20to=20import=20them=20with=20`us?= =?UTF-8?q?e`?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Note.php | 1 - 1 file changed, 1 deletion(-) diff --git a/app/Note.php b/app/Note.php index 2e8c53c7..998afea8 100644 --- a/app/Note.php +++ b/app/Note.php @@ -2,7 +2,6 @@ namespace App; -use App\Tag; use Normalizer; use Jonnybarnes\IndieWeb\Numbers; use Illuminate\Database\Eloquent\Model; From 12c91eab701718512688619e09952e36c262c46f Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Sun, 29 May 2016 14:21:46 +0100 Subject: [PATCH 03/13] Use a less generic model name than Client --- app/Http/Controllers/ClientsAdminController.php | 10 +++++----- app/{Client.php => MicropubClient.php} | 2 +- app/Note.php | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) rename app/{Client.php => MicropubClient.php} (90%) diff --git a/app/Http/Controllers/ClientsAdminController.php b/app/Http/Controllers/ClientsAdminController.php index c374aa24..80de8503 100644 --- a/app/Http/Controllers/ClientsAdminController.php +++ b/app/Http/Controllers/ClientsAdminController.php @@ -2,7 +2,7 @@ namespace App\Http\Controllers; -use App\Client; +use App\MicropubClient; class ClientsAdminController extends Controller { @@ -13,7 +13,7 @@ class ClientsAdminController extends Controller */ public function listClients() { - $clients = Client::all(); + $clients = MicropubClient::all(); return view('admin.listclients', ['clients' => $clients]); } @@ -36,7 +36,7 @@ class ClientsAdminController extends Controller */ public function postNewClient(Request $request) { - Client::create([ + MicropubClient::create([ 'client_url' => $request->input('client_url'), 'client_name' => $request->input('client_name'), ]); @@ -52,7 +52,7 @@ class ClientsAdminController extends Controller */ public function editClient($clientId) { - $client = Client::findOrFail($clientId); + $client = MicropubClient::findOrFail($clientId); return view('admin.editclient', [ 'id' => $clientId, @@ -70,7 +70,7 @@ class ClientsAdminController extends Controller */ public function postEditClient($clientId, Request $request) { - $client = Client::findOrFail($clientId); + $client = MicropubClient::findOrFail($clientId); if ($request->input('edit')) { $client->client_url = $request->input('client_url'); $client->client_name = $request->input('client_name'); diff --git a/app/Client.php b/app/MicropubClient.php similarity index 90% rename from app/Client.php rename to app/MicropubClient.php index 6461399c..23e4917e 100644 --- a/app/Client.php +++ b/app/MicropubClient.php @@ -4,7 +4,7 @@ namespace App; use Illuminate\Database\Eloquent\Model; -class Client extends Model +class MicropubClient extends Model { /** * The table associated with the model. diff --git a/app/Note.php b/app/Note.php index 998afea8..ae533543 100644 --- a/app/Note.php +++ b/app/Note.php @@ -150,7 +150,7 @@ class Note extends Model implements HasMedia if ($this->client_id == null) { return; } - $name = Client::where('client_url', $this->client_id)->value('client_name'); + $name = MicropubClient::where('client_url', $this->client_id)->value('client_name'); if ($name == null) { $url = parse_url($this->client_id); if (isset($url['path'])) { From 68cea9a183ec66337becf04095e2894818162048 Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Sun, 29 May 2016 14:33:44 +0100 Subject: [PATCH 04/13] Try not producing coverage text for phpdbg in 7.0.7 --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index cd687b56..5c28fa00 100644 --- a/.travis.yml +++ b/.travis.yml @@ -39,4 +39,4 @@ before_script: - sleep 5 # Give artisan some time to start serving script: - - phpdbg -qrr vendor/bin/phpunit --coverage-text + - phpdbg -qrr vendor/bin/phpunit From 55bc33a79a2f805ea14a75de33ab98e5d8edfa62 Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Sun, 29 May 2016 14:46:27 +0100 Subject: [PATCH 05/13] Try to confirm a phpdbg bug was introduced in 7.0.7 --- .travis.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 5c28fa00..a3f8a2ff 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,7 +13,8 @@ env: - setup=basic php: - - 7.0 + - 7.0.6 + - 7.0.7 - nightly matrix: allow_failures: @@ -39,4 +40,4 @@ before_script: - sleep 5 # Give artisan some time to start serving script: - - phpdbg -qrr vendor/bin/phpunit + - phpdbg -qrr vendor/bin/phpunit --coverage-text From 3c2803a518a511261c30566bd92890f2d548bf93 Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Sun, 29 May 2016 16:44:57 +0100 Subject: [PATCH 06/13] Updated dependencies --- composer.lock | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/composer.lock b/composer.lock index 906cbbba..825a9c97 100644 --- a/composer.lock +++ b/composer.lock @@ -59,16 +59,16 @@ }, { "name": "aws/aws-sdk-php", - "version": "3.18.12", + "version": "3.18.14", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "12386ad98e3a76df29cee9475264b7364a50542f" + "reference": "9398db378231fe723583fb8d7a919c1806f02be3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/12386ad98e3a76df29cee9475264b7364a50542f", - "reference": "12386ad98e3a76df29cee9475264b7364a50542f", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/9398db378231fe723583fb8d7a919c1806f02be3", + "reference": "9398db378231fe723583fb8d7a919c1806f02be3", "shasum": "" }, "require": { @@ -135,7 +135,7 @@ "s3", "sdk" ], - "time": "2016-05-20 05:19:30" + "time": "2016-05-26 20:43:24" }, { "name": "barnabywalters/mf-cleaner", @@ -698,21 +698,21 @@ }, { "name": "indieauth/client", - "version": "0.1.14", + "version": "0.1.16", "source": { "type": "git", "url": "https://github.com/indieweb/indieauth-client-php.git", - "reference": "504ba095ee10ffaabc570682f3a93b462ba21c77" + "reference": "81e425892c00afef1b6bf9fe16e771b4503bbb8a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/indieweb/indieauth-client-php/zipball/504ba095ee10ffaabc570682f3a93b462ba21c77", - "reference": "504ba095ee10ffaabc570682f3a93b462ba21c77", + "url": "https://api.github.com/repos/indieweb/indieauth-client-php/zipball/81e425892c00afef1b6bf9fe16e771b4503bbb8a", + "reference": "81e425892c00afef1b6bf9fe16e771b4503bbb8a", "shasum": "" }, "require": { "barnabywalters/mf-cleaner": "0.*", - "indieweb/link-rel-parser": "0.1.1", + "indieweb/link-rel-parser": "0.1.*", "mf2/mf2": "~0.3", "php": ">5.3.0" }, @@ -733,20 +733,20 @@ } ], "description": "IndieAuth Client Library", - "time": "2016-04-04 14:57:04" + "time": "2016-05-21 16:43:04" }, { "name": "indieweb/link-rel-parser", - "version": "0.1.1", + "version": "0.1.2", "source": { "type": "git", "url": "https://github.com/indieweb/link-rel-parser-php.git", - "reference": "9e0e635fd301a8b1da7bc181f651f029c531dbb6" + "reference": "7127a92f32cecbf8166fb3b34130a59ea63e2041" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/indieweb/link-rel-parser-php/zipball/9e0e635fd301a8b1da7bc181f651f029c531dbb6", - "reference": "9e0e635fd301a8b1da7bc181f651f029c531dbb6", + "url": "https://api.github.com/repos/indieweb/link-rel-parser-php/zipball/7127a92f32cecbf8166fb3b34130a59ea63e2041", + "reference": "7127a92f32cecbf8166fb3b34130a59ea63e2041", "shasum": "" }, "require": { @@ -779,7 +779,7 @@ "indieweb", "microformats2" ], - "time": "2013-12-23 00:14:58" + "time": "2016-04-13 17:48:59" }, { "name": "intervention/image", @@ -1175,16 +1175,16 @@ }, { "name": "laravel/framework", - "version": "v5.2.32", + "version": "v5.2.34", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "f688217113f70b01d0e127da9035195415812bef" + "reference": "6a26f3bb6a6e00c53654a661221643ad1b98e146" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/f688217113f70b01d0e127da9035195415812bef", - "reference": "f688217113f70b01d0e127da9035195415812bef", + "url": "https://api.github.com/repos/laravel/framework/zipball/6a26f3bb6a6e00c53654a661221643ad1b98e146", + "reference": "6a26f3bb6a6e00c53654a661221643ad1b98e146", "shasum": "" }, "require": { @@ -1300,7 +1300,7 @@ "framework", "laravel" ], - "time": "2016-05-17 13:24:40" + "time": "2016-05-26 21:59:46" }, { "name": "lcobucci/jwt", From cac29bbb633805762a5441eb7c1c905962de8d20 Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Sun, 29 May 2016 16:48:42 +0100 Subject: [PATCH 07/13] Use PHPUnit 5 --- composer.json | 2 +- composer.lock | 263 ++++++++++++++++++++++++++++++++++++++++++-------- 2 files changed, 226 insertions(+), 39 deletions(-) diff --git a/composer.json b/composer.json index f9969344..e93d3e54 100644 --- a/composer.json +++ b/composer.json @@ -27,7 +27,7 @@ "require-dev": { "fzaninotto/faker": "~1.4", "mockery/mockery": "0.9.*", - "phpunit/phpunit": "~4.0", + "phpunit/phpunit": "~5.0", "symfony/css-selector": "2.8.*|3.0.*", "symfony/dom-crawler": "2.8.*|3.0.*", "barryvdh/laravel-debugbar": "~2.0", diff --git a/composer.lock b/composer.lock index 825a9c97..343bc1ec 100644 --- a/composer.lock +++ b/composer.lock @@ -4,8 +4,8 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "hash": "daf7804a781d9e4f7de63ae2da8dee9e", - "content-hash": "59a5ff5c293a0de8dbc63e7b8f0cf055", + "hash": "6d3a18fd5127115b0f3179dc736a876c", + "content-hash": "6b6a8edced77efdac348f0564cf4a6eb", "packages": [ { "name": "anahkiasen/underscore-php", @@ -4009,6 +4009,48 @@ ], "time": "2016-05-22 21:52:33" }, + { + "name": "myclabs/deep-copy", + "version": "1.5.1", + "source": { + "type": "git", + "url": "https://github.com/myclabs/DeepCopy.git", + "reference": "a8773992b362b58498eed24bf85005f363c34771" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/a8773992b362b58498eed24bf85005f363c34771", + "reference": "a8773992b362b58498eed24bf85005f363c34771", + "shasum": "" + }, + "require": { + "php": ">=5.4.0" + }, + "require-dev": { + "doctrine/collections": "1.*", + "phpunit/phpunit": "~4.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "DeepCopy\\": "src/DeepCopy/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Create deep copies (clones) of your objects", + "homepage": "https://github.com/myclabs/DeepCopy", + "keywords": [ + "clone", + "copy", + "duplicate", + "object", + "object graph" + ], + "time": "2015-11-20 12:04:31" + }, { "name": "phpdocumentor/reflection-docblock", "version": "2.0.4", @@ -4122,39 +4164,40 @@ }, { "name": "phpunit/php-code-coverage", - "version": "2.2.4", + "version": "3.3.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979" + "reference": "44cd8e3930e431658d1a5de7d282d5cb37837fd5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/eabf68b476ac7d0f73793aada060f1c1a9bf8979", - "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/44cd8e3930e431658d1a5de7d282d5cb37837fd5", + "reference": "44cd8e3930e431658d1a5de7d282d5cb37837fd5", "shasum": "" }, "require": { - "php": ">=5.3.3", + "php": "^5.6 || ^7.0", "phpunit/php-file-iterator": "~1.3", "phpunit/php-text-template": "~1.2", - "phpunit/php-token-stream": "~1.3", + "phpunit/php-token-stream": "^1.4.2", + "sebastian/code-unit-reverse-lookup": "~1.0", "sebastian/environment": "^1.3.2", - "sebastian/version": "~1.0" + "sebastian/version": "~1.0|~2.0" }, "require-dev": { "ext-xdebug": ">=2.1.4", - "phpunit/phpunit": "~4" + "phpunit/phpunit": "~5" }, "suggest": { "ext-dom": "*", - "ext-xdebug": ">=2.2.1", + "ext-xdebug": ">=2.4.0", "ext-xmlwriter": "*" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2.x-dev" + "dev-master": "3.3.x-dev" } }, "autoload": { @@ -4180,7 +4223,7 @@ "testing", "xunit" ], - "time": "2015-10-06 15:47:00" + "time": "2016-05-27 16:24:29" }, { "name": "phpunit/php-file-iterator", @@ -4365,16 +4408,16 @@ }, { "name": "phpunit/phpunit", - "version": "4.8.26", + "version": "5.3.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "fc1d8cd5b5de11625979125c5639347896ac2c74" + "reference": "00dd95ffb48805503817ced06399017df315fe5c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/fc1d8cd5b5de11625979125c5639347896ac2c74", - "reference": "fc1d8cd5b5de11625979125c5639347896ac2c74", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/00dd95ffb48805503817ced06399017df315fe5c", + "reference": "00dd95ffb48805503817ced06399017df315fe5c", "shasum": "" }, "require": { @@ -4383,19 +4426,22 @@ "ext-pcre": "*", "ext-reflection": "*", "ext-spl": "*", - "php": ">=5.3.3", + "myclabs/deep-copy": "~1.3", + "php": "^5.6 || ^7.0", "phpspec/prophecy": "^1.3.1", - "phpunit/php-code-coverage": "~2.1", + "phpunit/php-code-coverage": "^3.3.0", "phpunit/php-file-iterator": "~1.4", "phpunit/php-text-template": "~1.2", "phpunit/php-timer": "^1.0.6", - "phpunit/phpunit-mock-objects": "~2.3", + "phpunit/phpunit-mock-objects": "^3.1", "sebastian/comparator": "~1.1", "sebastian/diff": "~1.2", "sebastian/environment": "~1.3", "sebastian/exporter": "~1.2", "sebastian/global-state": "~1.0", - "sebastian/version": "~1.0", + "sebastian/object-enumerator": "~1.0", + "sebastian/resource-operations": "~1.0", + "sebastian/version": "~1.0|~2.0", "symfony/yaml": "~2.1|~3.0" }, "suggest": { @@ -4407,7 +4453,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.8.x-dev" + "dev-master": "5.3.x-dev" } }, "autoload": { @@ -4433,30 +4479,30 @@ "testing", "xunit" ], - "time": "2016-05-17 03:09:28" + "time": "2016-05-11 13:28:45" }, { "name": "phpunit/phpunit-mock-objects", - "version": "2.3.8", + "version": "3.1.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", - "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983" + "reference": "151c96874bff6fe61a25039df60e776613a61489" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983", - "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/151c96874bff6fe61a25039df60e776613a61489", + "reference": "151c96874bff6fe61a25039df60e776613a61489", "shasum": "" }, "require": { "doctrine/instantiator": "^1.0.2", - "php": ">=5.3.3", + "php": ">=5.6", "phpunit/php-text-template": "~1.2", "sebastian/exporter": "~1.2" }, "require-dev": { - "phpunit/phpunit": "~4.4" + "phpunit/phpunit": "~5" }, "suggest": { "ext-soap": "*" @@ -4464,7 +4510,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3.x-dev" + "dev-master": "3.1.x-dev" } }, "autoload": { @@ -4489,7 +4535,52 @@ "mock", "xunit" ], - "time": "2015-10-02 06:51:40" + "time": "2016-04-20 14:39:26" + }, + { + "name": "sebastian/code-unit-reverse-lookup", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", + "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/c36f5e7cfce482fde5bf8d10d41a53591e0198fe", + "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe", + "shasum": "" + }, + "require": { + "php": ">=5.6" + }, + "require-dev": { + "phpunit/phpunit": "~5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Looks up which function or method a line of code belongs to", + "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", + "time": "2016-02-13 06:45:14" }, { "name": "sebastian/comparator", @@ -4774,6 +4865,52 @@ ], "time": "2015-10-12 03:26:01" }, + { + "name": "sebastian/object-enumerator", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-enumerator.git", + "reference": "d4ca2fb70344987502567bc50081c03e6192fb26" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/d4ca2fb70344987502567bc50081c03e6192fb26", + "reference": "d4ca2fb70344987502567bc50081c03e6192fb26", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "sebastian/recursion-context": "~1.0" + }, + "require-dev": { + "phpunit/phpunit": "~5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Traverses array structures and object graphs to enumerate all referenced objects", + "homepage": "https://github.com/sebastianbergmann/object-enumerator/", + "time": "2016-01-28 13:25:10" + }, { "name": "sebastian/recursion-context", "version": "1.0.2", @@ -4828,20 +4965,70 @@ "time": "2015-11-11 19:50:13" }, { - "name": "sebastian/version", - "version": "1.0.6", + "name": "sebastian/resource-operations", + "version": "1.0.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/version.git", - "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6" + "url": "https://github.com/sebastianbergmann/resource-operations.git", + "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6", - "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6", + "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/ce990bb21759f94aeafd30209e8cfcdfa8bc3f52", + "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52", "shasum": "" }, + "require": { + "php": ">=5.6.0" + }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides a list of PHP built-in functions that operate on resources", + "homepage": "https://www.github.com/sebastianbergmann/resource-operations", + "time": "2015-07-28 20:34:47" + }, + { + "name": "sebastian/version", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/version.git", + "reference": "c829badbd8fdf16a0bad8aa7fa7971c029f1b9c5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c829badbd8fdf16a0bad8aa7fa7971c029f1b9c5", + "reference": "c829badbd8fdf16a0bad8aa7fa7971c029f1b9c5", + "shasum": "" + }, + "require": { + "php": ">=5.6" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, "autoload": { "classmap": [ "src/" @@ -4860,7 +5047,7 @@ ], "description": "Library that helps with managing the version number of Git-hosted PHP projects", "homepage": "https://github.com/sebastianbergmann/version", - "time": "2015-06-21 13:59:46" + "time": "2016-02-04 12:56:52" }, { "name": "symfony/css-selector", From 58c060ad27929c17664ece444750b604d40ec408 Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Sun, 29 May 2016 17:35:39 +0100 Subject: [PATCH 08/13] =?UTF-8?q?Don=E2=80=99t=20use=20NotePrep=20for=20re?= =?UTF-8?q?treiving=20tags=20from=20a=20note?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Providers/AppServiceProvider.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index 76b7af57..3c5c8377 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -5,7 +5,6 @@ namespace App\Providers; use App\Tag; use App\Note; use Validator; -use Jonnybarnes\IndieWeb\NotePrep; use Illuminate\Support\ServiceProvider; class AppServiceProvider extends ServiceProvider @@ -32,11 +31,14 @@ class AppServiceProvider extends ServiceProvider //Add tags for notes Note::created(function ($note) { - $noteprep = new NotePrep(); $tagsToAdd = []; - $tags = $noteprep->getTags($note->note); - foreach ($tags as $text) { - $tag = Tag::firstOrCreate(['tag' => $text]); + preg_match_all('/#([^\s<>]+)\b/', $note, $tags); + foreach ($tags[1] as $tag) { + $tag = Tag::normalizeTag($tag); + } + $tags = array_unique($tags[1]); + foreach ($tags as $tag) { + $tag = Tag::firstOrCreate(['tag' => $tag]); $tagsToAdd[] = $tag->id; } if (count($tagsToAdd > 0)) { From ceaa00a9cf3611940b2b47276d5257def23347ab Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Mon, 6 Jun 2016 11:30:20 +0100 Subject: [PATCH 09/13] Use latest tagged laravel-postgis, fix a typo in .env.example --- .env.example | 1 - composer.json | 8 +----- composer.lock | 80 ++++++++++++++++++++++----------------------------- 3 files changed, 36 insertions(+), 53 deletions(-) diff --git a/.env.example b/.env.example index 606b9714..4fc0c7fb 100644 --- a/.env.example +++ b/.env.example @@ -11,7 +11,6 @@ DB_PORT=3306 DB_DATABASE=homestead DB_USERNAME=homestead DB_PASSWORD=secret -DB_CONNECTION=pgsql CACHE_DRIVER=file SESSION_DRIVER=file diff --git a/composer.json b/composer.json index e93d3e54..5b3a0b8c 100644 --- a/composer.json +++ b/composer.json @@ -21,7 +21,7 @@ "league/commonmark": "^0.13.0", "spatie/laravel-medialibrary": "^3.5", "league/flysystem-aws-s3-v3": "^1.0", - "phaza/laravel-postgis": "dev-master", + "phaza/laravel-postgis": "~3.1", "lcobucci/jwt": "^3.1" }, "require-dev": { @@ -33,12 +33,6 @@ "barryvdh/laravel-debugbar": "~2.0", "filp/whoops": "~2.0" }, - "repositories": [ - { - "type": "vcs", - "url": "https://github.com/njbarrett/laravel-postgis" - } - ], "autoload": { "classmap": [ "database" diff --git a/composer.lock b/composer.lock index 343bc1ec..5f299024 100644 --- a/composer.lock +++ b/composer.lock @@ -4,8 +4,8 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "hash": "6d3a18fd5127115b0f3179dc736a876c", - "content-hash": "6b6a8edced77efdac348f0564cf4a6eb", + "hash": "52bfae9a802b8b7a53d83918045a0d67", + "content-hash": "08624d66bf872209171586433dfd5150", "packages": [ { "name": "anahkiasen/underscore-php", @@ -1175,16 +1175,16 @@ }, { "name": "laravel/framework", - "version": "v5.2.34", + "version": "v5.2.35", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "6a26f3bb6a6e00c53654a661221643ad1b98e146" + "reference": "d2b6b0fe32fab610d356c22e74a6ffd101b0f513" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/6a26f3bb6a6e00c53654a661221643ad1b98e146", - "reference": "6a26f3bb6a6e00c53654a661221643ad1b98e146", + "url": "https://api.github.com/repos/laravel/framework/zipball/d2b6b0fe32fab610d356c22e74a6ffd101b0f513", + "reference": "d2b6b0fe32fab610d356c22e74a6ffd101b0f513", "shasum": "" }, "require": { @@ -1300,7 +1300,7 @@ "framework", "laravel" ], - "time": "2016-05-26 21:59:46" + "time": "2016-05-30 17:42:01" }, { "name": "lcobucci/jwt", @@ -2100,7 +2100,7 @@ }, { "name": "phaza/laravel-postgis", - "version": "dev-master", + "version": "3.1", "source": { "type": "git", "url": "https://github.com/njbarrett/laravel-postgis.git", @@ -2131,12 +2131,7 @@ "Phaza\\LaravelPostgis\\": "src/" } }, - "autoload-dev": { - "classmap": [ - "tests/BaseTestCase.php", - "tests/Stubs/" - ] - }, + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -2151,31 +2146,27 @@ } ], "description": "Postgis extensions for laravel. Aims to make it easy to work with geometries from laravel models", - "support": { - "source": "https://github.com/njbarrett/laravel-postgis/tree/master", - "issues": "https://github.com/njbarrett/laravel-postgis/issues" - }, "time": "2016-05-21 08:00:18" }, { "name": "predis/predis", - "version": "v1.0.3", + "version": "v1.1.0", "source": { "type": "git", "url": "https://github.com/nrk/predis.git", - "reference": "84060b9034d756b4d79641667d7f9efe1aeb8e04" + "reference": "0e17edbefb50c6cbd1acc4a6f6ef06399deb1af2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nrk/predis/zipball/84060b9034d756b4d79641667d7f9efe1aeb8e04", - "reference": "84060b9034d756b4d79641667d7f9efe1aeb8e04", + "url": "https://api.github.com/repos/nrk/predis/zipball/0e17edbefb50c6cbd1acc4a6f6ef06399deb1af2", + "reference": "0e17edbefb50c6cbd1acc4a6f6ef06399deb1af2", "shasum": "" }, "require": { - "php": ">=5.3.2" + "php": ">=5.3.9" }, "require-dev": { - "phpunit/phpunit": "~4.0" + "phpunit/phpunit": "~4.8" }, "suggest": { "ext-curl": "Allows access to Webdis when paired with phpiredis", @@ -2198,14 +2189,14 @@ "homepage": "http://clorophilla.net" } ], - "description": "Flexible and feature-complete PHP client library for Redis", + "description": "Flexible and feature-complete Redis client for PHP and HHVM", "homepage": "http://github.com/nrk/predis", "keywords": [ "nosql", "predis", "redis" ], - "time": "2015-07-30 18:34:15" + "time": "2016-06-01 22:06:21" }, { "name": "psr/http-message", @@ -2491,16 +2482,16 @@ }, { "name": "spatie/laravel-medialibrary", - "version": "3.17.4", + "version": "3.18.0", "source": { "type": "git", "url": "https://github.com/spatie/laravel-medialibrary.git", - "reference": "7f96cd3c709643ab0dde977936b98a7f75396d31" + "reference": "e7a0a564707b29e22c4e03c815d455de515bc230" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-medialibrary/zipball/7f96cd3c709643ab0dde977936b98a7f75396d31", - "reference": "7f96cd3c709643ab0dde977936b98a7f75396d31", + "url": "https://api.github.com/repos/spatie/laravel-medialibrary/zipball/e7a0a564707b29e22c4e03c815d455de515bc230", + "reference": "e7a0a564707b29e22c4e03c815d455de515bc230", "shasum": "" }, "require": { @@ -2547,7 +2538,7 @@ "media", "spatie" ], - "time": "2016-04-12 09:57:52" + "time": "2016-06-02 11:45:10" }, { "name": "spatie/pdf-to-image", @@ -2824,16 +2815,16 @@ }, { "name": "symfony/event-dispatcher", - "version": "v3.0.6", + "version": "v3.1.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "807dde98589f9b2b00624dca326740380d78dbbc" + "reference": "0343b2cedd0edb26cdc791212a8eb645c406018b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/807dde98589f9b2b00624dca326740380d78dbbc", - "reference": "807dde98589f9b2b00624dca326740380d78dbbc", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/0343b2cedd0edb26cdc791212a8eb645c406018b", + "reference": "0343b2cedd0edb26cdc791212a8eb645c406018b", "shasum": "" }, "require": { @@ -2853,7 +2844,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "3.1-dev" } }, "autoload": { @@ -2880,7 +2871,7 @@ ], "description": "Symfony EventDispatcher Component", "homepage": "https://symfony.com", - "time": "2016-05-05 06:56:13" + "time": "2016-04-12 18:27:47" }, { "name": "symfony/finder", @@ -5160,16 +5151,16 @@ }, { "name": "symfony/yaml", - "version": "v3.0.6", + "version": "v3.1.0", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "0047c8366744a16de7516622c5b7355336afae96" + "reference": "eca51b7b65eb9be6af88ad7cc91685f1556f5c9a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/0047c8366744a16de7516622c5b7355336afae96", - "reference": "0047c8366744a16de7516622c5b7355336afae96", + "url": "https://api.github.com/repos/symfony/yaml/zipball/eca51b7b65eb9be6af88ad7cc91685f1556f5c9a", + "reference": "eca51b7b65eb9be6af88ad7cc91685f1556f5c9a", "shasum": "" }, "require": { @@ -5178,7 +5169,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "3.1-dev" } }, "autoload": { @@ -5205,7 +5196,7 @@ ], "description": "Symfony Yaml Component", "homepage": "https://symfony.com", - "time": "2016-03-04 07:55:57" + "time": "2016-05-26 21:46:24" } ], "aliases": [], @@ -5213,8 +5204,7 @@ "stability-flags": { "jonnybarnes/unicode-tools": 20, "jonnybarnes/indieweb": 20, - "jonnybarnes/webmentions-parser": 20, - "phaza/laravel-postgis": 20 + "jonnybarnes/webmentions-parser": 20 }, "prefer-stable": false, "prefer-lowest": false, From e4b2b64bc8fb74398c7ef36c66c220154fe2b10c Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Mon, 6 Jun 2016 15:49:24 +0100 Subject: [PATCH 10/13] Allow php 7.0.7 to fail as it does so due to known bug in phpdbg --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index a3f8a2ff..59bab10e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,6 +18,7 @@ php: - nightly matrix: allow_failures: + - php: 7.0.7 # A known bug in PHP 7.0.7 stops phpdbg producing code coverage reports - php: nightly before_install: From d09e63d5096772079ca19025ec1f8a7b4d6fd5f4 Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Wed, 8 Jun 2016 16:08:28 +0100 Subject: [PATCH 11/13] Updated .lock dependencies --- composer.lock | 399 ++++++++++++++++++++++++++++++++++---------------- 1 file changed, 274 insertions(+), 125 deletions(-) diff --git a/composer.lock b/composer.lock index 5f299024..caa1bc23 100644 --- a/composer.lock +++ b/composer.lock @@ -59,16 +59,16 @@ }, { "name": "aws/aws-sdk-php", - "version": "3.18.14", + "version": "3.18.16", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "9398db378231fe723583fb8d7a919c1806f02be3" + "reference": "5b959dda467752d4db8fa41fe9bbce85cabbe81e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/9398db378231fe723583fb8d7a919c1806f02be3", - "reference": "9398db378231fe723583fb8d7a919c1806f02be3", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/5b959dda467752d4db8fa41fe9bbce85cabbe81e", + "reference": "5b959dda467752d4db8fa41fe9bbce85cabbe81e", "shasum": "" }, "require": { @@ -135,7 +135,7 @@ "s3", "sdk" ], - "time": "2016-05-26 20:43:24" + "time": "2016-06-07 21:16:15" }, { "name": "barnabywalters/mf-cleaner", @@ -1175,16 +1175,16 @@ }, { "name": "laravel/framework", - "version": "v5.2.35", + "version": "v5.2.36", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "d2b6b0fe32fab610d356c22e74a6ffd101b0f513" + "reference": "236d7c0c5b67a2348ac7831391031d93000de3ab" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/d2b6b0fe32fab610d356c22e74a6ffd101b0f513", - "reference": "d2b6b0fe32fab610d356c22e74a6ffd101b0f513", + "url": "https://api.github.com/repos/laravel/framework/zipball/236d7c0c5b67a2348ac7831391031d93000de3ab", + "reference": "236d7c0c5b67a2348ac7831391031d93000de3ab", "shasum": "" }, "require": { @@ -1300,7 +1300,7 @@ "framework", "laravel" ], - "time": "2016-05-30 17:42:01" + "time": "2016-06-06 15:18:48" }, { "name": "lcobucci/jwt", @@ -1431,16 +1431,16 @@ }, { "name": "league/flysystem", - "version": "1.0.22", + "version": "1.0.24", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem.git", - "reference": "bd73a91703969a2d20ab4bfbf971d6c2cbe36612" + "reference": "9aca859a303fdca30370f42b8c611d9cf0dedf4b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/bd73a91703969a2d20ab4bfbf971d6c2cbe36612", - "reference": "bd73a91703969a2d20ab4bfbf971d6c2cbe36612", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/9aca859a303fdca30370f42b8c611d9cf0dedf4b", + "reference": "9aca859a303fdca30370f42b8c611d9cf0dedf4b", "shasum": "" }, "require": { @@ -1510,20 +1510,20 @@ "sftp", "storage" ], - "time": "2016-04-28 06:53:12" + "time": "2016-06-03 19:11:39" }, { "name": "league/flysystem-aws-s3-v3", - "version": "1.0.11", + "version": "1.0.12", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem-aws-s3-v3.git", - "reference": "1f7ae4e3cc178686c49a9d23cab43ed1e955368c" + "reference": "d9c27edda5b4b2840c3f602d4ce6fbfeaab10e5a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/1f7ae4e3cc178686c49a9d23cab43ed1e955368c", - "reference": "1f7ae4e3cc178686c49a9d23cab43ed1e955368c", + "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/d9c27edda5b4b2840c3f602d4ce6fbfeaab10e5a", + "reference": "d9c27edda5b4b2840c3f602d4ce6fbfeaab10e5a", "shasum": "" }, "require": { @@ -1557,7 +1557,7 @@ } ], "description": "Flysystem adapter for the AWS S3 SDK v3.x", - "time": "2016-05-03 19:35:35" + "time": "2016-06-06 11:18:47" }, { "name": "league/glide", @@ -2698,16 +2698,16 @@ }, { "name": "symfony/console", - "version": "v3.0.6", + "version": "v3.0.7", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "34a214710e0714b6efcf40ba3cd1e31373a97820" + "reference": "382fc9ed852edabd6133e34f8549d7a7d99db115" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/34a214710e0714b6efcf40ba3cd1e31373a97820", - "reference": "34a214710e0714b6efcf40ba3cd1e31373a97820", + "url": "https://api.github.com/repos/symfony/console/zipball/382fc9ed852edabd6133e34f8549d7a7d99db115", + "reference": "382fc9ed852edabd6133e34f8549d7a7d99db115", "shasum": "" }, "require": { @@ -2754,20 +2754,20 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2016-04-28 09:48:42" + "time": "2016-06-06 15:08:35" }, { "name": "symfony/debug", - "version": "v3.0.6", + "version": "v3.0.7", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", - "reference": "a06d10888a45afd97534506afb058ec38d9ba35b" + "reference": "e67e1552dd7313df1cf6535cb606751899e0e727" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/a06d10888a45afd97534506afb058ec38d9ba35b", - "reference": "a06d10888a45afd97534506afb058ec38d9ba35b", + "url": "https://api.github.com/repos/symfony/debug/zipball/e67e1552dd7313df1cf6535cb606751899e0e727", + "reference": "e67e1552dd7313df1cf6535cb606751899e0e727", "shasum": "" }, "require": { @@ -2811,7 +2811,7 @@ ], "description": "Symfony Debug Component", "homepage": "https://symfony.com", - "time": "2016-03-30 10:41:14" + "time": "2016-06-06 15:08:35" }, { "name": "symfony/event-dispatcher", @@ -2875,16 +2875,16 @@ }, { "name": "symfony/finder", - "version": "v3.0.6", + "version": "v3.0.7", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "c54e407b35bc098916704e9fd090da21da4c4f52" + "reference": "39e5f3d533d07b5416b9d7aad53a27f939d4f811" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/c54e407b35bc098916704e9fd090da21da4c4f52", - "reference": "c54e407b35bc098916704e9fd090da21da4c4f52", + "url": "https://api.github.com/repos/symfony/finder/zipball/39e5f3d533d07b5416b9d7aad53a27f939d4f811", + "reference": "39e5f3d533d07b5416b9d7aad53a27f939d4f811", "shasum": "" }, "require": { @@ -2920,20 +2920,20 @@ ], "description": "Symfony Finder Component", "homepage": "https://symfony.com", - "time": "2016-03-10 11:13:05" + "time": "2016-05-13 18:03:36" }, { "name": "symfony/http-foundation", - "version": "v3.0.6", + "version": "v3.0.7", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "18b24bc32d2495ae79d76e777368786a6536fe31" + "reference": "d268a643884f85e91d6ba11ca68de96833f3f6e5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/18b24bc32d2495ae79d76e777368786a6536fe31", - "reference": "18b24bc32d2495ae79d76e777368786a6536fe31", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/d268a643884f85e91d6ba11ca68de96833f3f6e5", + "reference": "d268a643884f85e91d6ba11ca68de96833f3f6e5", "shasum": "" }, "require": { @@ -2973,20 +2973,20 @@ ], "description": "Symfony HttpFoundation Component", "homepage": "https://symfony.com", - "time": "2016-04-12 18:09:53" + "time": "2016-06-06 11:33:26" }, { "name": "symfony/http-kernel", - "version": "v3.0.6", + "version": "v3.0.7", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "6a5010978edf0a9646342232531e53bfc7abbcd3" + "reference": "97cc1c15e3406e7a2adf14ad6b0e41a04d4a6fc4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/6a5010978edf0a9646342232531e53bfc7abbcd3", - "reference": "6a5010978edf0a9646342232531e53bfc7abbcd3", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/97cc1c15e3406e7a2adf14ad6b0e41a04d4a6fc4", + "reference": "97cc1c15e3406e7a2adf14ad6b0e41a04d4a6fc4", "shasum": "" }, "require": { @@ -3055,7 +3055,7 @@ ], "description": "Symfony HttpKernel Component", "homepage": "https://symfony.com", - "time": "2016-05-09 22:13:13" + "time": "2016-06-06 16:52:35" }, { "name": "symfony/polyfill-mbstring", @@ -3226,16 +3226,16 @@ }, { "name": "symfony/process", - "version": "v3.0.6", + "version": "v3.0.7", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "53f9407c0bb1c5a79127db8f7bfe12f0f6f3dcdb" + "reference": "bf6e2d1fa8b93fdd7cca6b684c0ea213cf0255dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/53f9407c0bb1c5a79127db8f7bfe12f0f6f3dcdb", - "reference": "53f9407c0bb1c5a79127db8f7bfe12f0f6f3dcdb", + "url": "https://api.github.com/repos/symfony/process/zipball/bf6e2d1fa8b93fdd7cca6b684c0ea213cf0255dd", + "reference": "bf6e2d1fa8b93fdd7cca6b684c0ea213cf0255dd", "shasum": "" }, "require": { @@ -3271,20 +3271,20 @@ ], "description": "Symfony Process Component", "homepage": "https://symfony.com", - "time": "2016-04-14 15:30:28" + "time": "2016-06-06 11:33:26" }, { "name": "symfony/routing", - "version": "v3.0.6", + "version": "v3.0.7", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "a6cd168310066176599442aa21f5da86c3f8e0b3" + "reference": "c780454838a1131adc756d737a4b4cc1d18f8c64" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/a6cd168310066176599442aa21f5da86c3f8e0b3", - "reference": "a6cd168310066176599442aa21f5da86c3f8e0b3", + "url": "https://api.github.com/repos/symfony/routing/zipball/c780454838a1131adc756d737a4b4cc1d18f8c64", + "reference": "c780454838a1131adc756d737a4b4cc1d18f8c64", "shasum": "" }, "require": { @@ -3346,20 +3346,20 @@ "uri", "url" ], - "time": "2016-05-03 12:23:49" + "time": "2016-05-30 06:58:27" }, { "name": "symfony/translation", - "version": "v3.0.6", + "version": "v3.0.7", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "f7a07af51ea067745a521dab1e3152044a2fb1f2" + "reference": "2b0aacaa613c0ec1ad8046f972d8abdcb19c1db7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/f7a07af51ea067745a521dab1e3152044a2fb1f2", - "reference": "f7a07af51ea067745a521dab1e3152044a2fb1f2", + "url": "https://api.github.com/repos/symfony/translation/zipball/2b0aacaa613c0ec1ad8046f972d8abdcb19c1db7", + "reference": "2b0aacaa613c0ec1ad8046f972d8abdcb19c1db7", "shasum": "" }, "require": { @@ -3410,20 +3410,20 @@ ], "description": "Symfony Translation Component", "homepage": "https://symfony.com", - "time": "2016-03-25 01:41:20" + "time": "2016-06-06 11:33:26" }, { "name": "symfony/var-dumper", - "version": "v3.0.6", + "version": "v3.0.7", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "0e918c269093ba4c77fca14e9424fa74ed16f1a6" + "reference": "d8bb851da153d97abe7c2b71a65dee19f324bcf7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/0e918c269093ba4c77fca14e9424fa74ed16f1a6", - "reference": "0e918c269093ba4c77fca14e9424fa74ed16f1a6", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/d8bb851da153d97abe7c2b71a65dee19f324bcf7", + "reference": "d8bb851da153d97abe7c2b71a65dee19f324bcf7", "shasum": "" }, "require": { @@ -3473,7 +3473,7 @@ "debug", "dump" ], - "time": "2016-04-25 11:17:47" + "time": "2016-05-24 10:03:10" }, { "name": "themattharris/tmhoauth", @@ -4043,38 +4043,87 @@ "time": "2015-11-20 12:04:31" }, { - "name": "phpdocumentor/reflection-docblock", - "version": "2.0.4", + "name": "phpdocumentor/reflection-common", + "version": "1.0", "source": { "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8" + "url": "https://github.com/phpDocumentor/ReflectionCommon.git", + "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/d68dbdc53dc358a816f00b300704702b2eaff7b8", - "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c", + "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.5" }, "require-dev": { - "phpunit/phpunit": "~4.0" - }, - "suggest": { - "dflydev/markdown": "~1.0", - "erusev/parsedown": "~1.0" + "phpunit/phpunit": "^4.6" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "1.0.x-dev" } }, "autoload": { - "psr-0": { - "phpDocumentor": [ + "psr-4": { + "phpDocumentor\\Reflection\\": [ + "src" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jaap van Otterdijk", + "email": "opensource@ijaap.nl" + } + ], + "description": "Common reflection classes used by phpdocumentor to reflect the code structure", + "homepage": "http://www.phpdoc.org", + "keywords": [ + "FQSEN", + "phpDocumentor", + "phpdoc", + "reflection", + "static analysis" + ], + "time": "2015-12-27 11:43:31" + }, + { + "name": "phpdocumentor/reflection-docblock", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", + "reference": "45ada3e3fd09789fbfbd6d65b3f0901f0030dc61" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/45ada3e3fd09789fbfbd6d65b3f0901f0030dc61", + "reference": "45ada3e3fd09789fbfbd6d65b3f0901f0030dc61", + "shasum": "" + }, + "require": { + "php": ">=5.5", + "phpdocumentor/reflection-common": "^1.0@dev", + "phpdocumentor/type-resolver": "^0.1.5", + "webmozart/assert": "^1.0" + }, + "require-dev": { + "mockery/mockery": "^0.9.4", + "phpunit/phpunit": "^4.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": [ "src/" ] } @@ -4086,39 +4135,87 @@ "authors": [ { "name": "Mike van Riel", - "email": "mike.vanriel@naenius.com" + "email": "me@mikevanriel.com" } ], - "time": "2015-02-03 12:10:50" + "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", + "time": "2016-06-06 06:44:13" }, { - "name": "phpspec/prophecy", - "version": "v1.6.0", + "name": "phpdocumentor/type-resolver", + "version": "0.1.8", "source": { "type": "git", - "url": "https://github.com/phpspec/prophecy.git", - "reference": "3c91bdf81797d725b14cb62906f9a4ce44235972" + "url": "https://github.com/phpDocumentor/TypeResolver.git", + "reference": "9891754231e55d42f0d16988ffb799af39f31a12" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/3c91bdf81797d725b14cb62906f9a4ce44235972", - "reference": "3c91bdf81797d725b14cb62906f9a4ce44235972", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/9891754231e55d42f0d16988ffb799af39f31a12", + "reference": "9891754231e55d42f0d16988ffb799af39f31a12", + "shasum": "" + }, + "require": { + "php": ">=5.5", + "phpdocumentor/reflection-common": "^1.0" + }, + "require-dev": { + "mockery/mockery": "^0.9.4", + "phpunit/phpunit": "^5.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + } + ], + "time": "2016-03-28 10:02:29" + }, + { + "name": "phpspec/prophecy", + "version": "v1.6.1", + "source": { + "type": "git", + "url": "https://github.com/phpspec/prophecy.git", + "reference": "58a8137754bc24b25740d4281399a4a3596058e0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/58a8137754bc24b25740d4281399a4a3596058e0", + "reference": "58a8137754bc24b25740d4281399a4a3596058e0", "shasum": "" }, "require": { "doctrine/instantiator": "^1.0.2", "php": "^5.3|^7.0", - "phpdocumentor/reflection-docblock": "~2.0", - "sebastian/comparator": "~1.1", - "sebastian/recursion-context": "~1.0" + "phpdocumentor/reflection-docblock": "^2.0|^3.0.2", + "sebastian/comparator": "^1.1", + "sebastian/recursion-context": "^1.0" }, "require-dev": { - "phpspec/phpspec": "~2.0" + "phpspec/phpspec": "^2.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.5.x-dev" + "dev-master": "1.6.x-dev" } }, "autoload": { @@ -4151,20 +4248,20 @@ "spy", "stub" ], - "time": "2016-02-15 07:46:21" + "time": "2016-06-07 08:13:47" }, { "name": "phpunit/php-code-coverage", - "version": "3.3.3", + "version": "4.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "44cd8e3930e431658d1a5de7d282d5cb37837fd5" + "reference": "900370c81280cc0d942ffbc5912d80464eaee7e9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/44cd8e3930e431658d1a5de7d282d5cb37837fd5", - "reference": "44cd8e3930e431658d1a5de7d282d5cb37837fd5", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/900370c81280cc0d942ffbc5912d80464eaee7e9", + "reference": "900370c81280cc0d942ffbc5912d80464eaee7e9", "shasum": "" }, "require": { @@ -4178,7 +4275,7 @@ }, "require-dev": { "ext-xdebug": ">=2.1.4", - "phpunit/phpunit": "~5" + "phpunit/phpunit": "^5.4" }, "suggest": { "ext-dom": "*", @@ -4188,7 +4285,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.3.x-dev" + "dev-master": "4.0.x-dev" } }, "autoload": { @@ -4214,7 +4311,7 @@ "testing", "xunit" ], - "time": "2016-05-27 16:24:29" + "time": "2016-06-03 05:03:56" }, { "name": "phpunit/php-file-iterator", @@ -4399,16 +4496,16 @@ }, { "name": "phpunit/phpunit", - "version": "5.3.4", + "version": "5.4.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "00dd95ffb48805503817ced06399017df315fe5c" + "reference": "f5726a0262e5f74f8e9cf03128798b64160c441d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/00dd95ffb48805503817ced06399017df315fe5c", - "reference": "00dd95ffb48805503817ced06399017df315fe5c", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f5726a0262e5f74f8e9cf03128798b64160c441d", + "reference": "f5726a0262e5f74f8e9cf03128798b64160c441d", "shasum": "" }, "require": { @@ -4420,11 +4517,11 @@ "myclabs/deep-copy": "~1.3", "php": "^5.6 || ^7.0", "phpspec/prophecy": "^1.3.1", - "phpunit/php-code-coverage": "^3.3.0", + "phpunit/php-code-coverage": "^4.0", "phpunit/php-file-iterator": "~1.4", "phpunit/php-text-template": "~1.2", "phpunit/php-timer": "^1.0.6", - "phpunit/phpunit-mock-objects": "^3.1", + "phpunit/phpunit-mock-objects": "^3.2", "sebastian/comparator": "~1.1", "sebastian/diff": "~1.2", "sebastian/environment": "~1.3", @@ -4444,7 +4541,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "5.3.x-dev" + "dev-master": "5.4.x-dev" } }, "autoload": { @@ -4470,30 +4567,33 @@ "testing", "xunit" ], - "time": "2016-05-11 13:28:45" + "time": "2016-06-03 09:59:50" }, { "name": "phpunit/phpunit-mock-objects", - "version": "3.1.3", + "version": "3.2.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", - "reference": "151c96874bff6fe61a25039df60e776613a61489" + "reference": "0dc8fd8e87e0366c22b6c25d1f43c4e2e66847b3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/151c96874bff6fe61a25039df60e776613a61489", - "reference": "151c96874bff6fe61a25039df60e776613a61489", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/0dc8fd8e87e0366c22b6c25d1f43c4e2e66847b3", + "reference": "0dc8fd8e87e0366c22b6c25d1f43c4e2e66847b3", "shasum": "" }, "require": { "doctrine/instantiator": "^1.0.2", - "php": ">=5.6", - "phpunit/php-text-template": "~1.2", - "sebastian/exporter": "~1.2" + "php": "^5.6 || ^7.0", + "phpunit/php-text-template": "^1.2", + "sebastian/exporter": "^1.2" + }, + "conflict": { + "phpunit/phpunit": "<5.4.0" }, "require-dev": { - "phpunit/phpunit": "~5" + "phpunit/phpunit": "^5.4" }, "suggest": { "ext-soap": "*" @@ -4501,7 +4601,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.1.x-dev" + "dev-master": "3.2.x-dev" } }, "autoload": { @@ -4526,7 +4626,7 @@ "mock", "xunit" ], - "time": "2016-04-20 14:39:26" + "time": "2016-06-04 05:52:19" }, { "name": "sebastian/code-unit-reverse-lookup", @@ -5042,16 +5142,16 @@ }, { "name": "symfony/css-selector", - "version": "v3.0.6", + "version": "v3.0.7", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "65e764f404685f2dc20c057e889b3ad04b2e2db0" + "reference": "e8a66c51bf65f188c02f8120c0748b2291d3a2d0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/65e764f404685f2dc20c057e889b3ad04b2e2db0", - "reference": "65e764f404685f2dc20c057e889b3ad04b2e2db0", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/e8a66c51bf65f188c02f8120c0748b2291d3a2d0", + "reference": "e8a66c51bf65f188c02f8120c0748b2291d3a2d0", "shasum": "" }, "require": { @@ -5091,11 +5191,11 @@ ], "description": "Symfony CssSelector Component", "homepage": "https://symfony.com", - "time": "2016-03-04 07:55:57" + "time": "2016-06-06 11:33:26" }, { "name": "symfony/dom-crawler", - "version": "v3.0.6", + "version": "v3.0.7", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", @@ -5197,6 +5297,55 @@ "description": "Symfony Yaml Component", "homepage": "https://symfony.com", "time": "2016-05-26 21:46:24" + }, + { + "name": "webmozart/assert", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/webmozart/assert.git", + "reference": "30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozart/assert/zipball/30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde", + "reference": "30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "phpunit/phpunit": "^4.6" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Assert\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], + "time": "2015-08-24 13:29:44" } ], "aliases": [], From c815d40be4038aa3c22f56ce33d3c83346587f28 Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Thu, 9 Jun 2016 00:49:33 +0100 Subject: [PATCH 12/13] Remove `jonnybarnes/unicode-tools` dependency --- app/Article.php | 4 +--- app/Note.php | 5 +---- changelog.md | 1 + composer.json | 1 - composer.lock | 49 ++----------------------------------------------- 5 files changed, 5 insertions(+), 55 deletions(-) diff --git a/app/Article.php b/app/Article.php index 5ca3f582..292526fa 100644 --- a/app/Article.php +++ b/app/Article.php @@ -3,7 +3,6 @@ namespace App; use Illuminate\Database\Eloquent\Model; -use Jonnybarnes\UnicodeTools\UnicodeTools; use League\CommonMark\CommonMarkConverter; use MartinBean\Database\Eloquent\Sluggable; use Illuminate\Database\Eloquent\SoftDeletes; @@ -57,9 +56,8 @@ class Article extends Model */ public function getMainAttribute($value) { - $unicode = new UnicodeTools(); $markdown = new CommonMarkConverter(); - $html = $markdown->convertToHtml($unicode->convertUnicodeCodepoints($value)); + $html = $markdown->convertToHtml($value); //change
[lang] ~> 

         $match = '/
\[(.*)\]\n/';
         $replace = '
';
diff --git a/app/Note.php b/app/Note.php
index ae533543..040a0bbd 100644
--- a/app/Note.php
+++ b/app/Note.php
@@ -5,7 +5,6 @@ namespace App;
 use Normalizer;
 use Jonnybarnes\IndieWeb\Numbers;
 use Illuminate\Database\Eloquent\Model;
-use Jonnybarnes\UnicodeTools\UnicodeTools;
 use League\CommonMark\CommonMarkConverter;
 use Illuminate\Database\Eloquent\SoftDeletes;
 use Spatie\MediaLibrary\HasMedia\HasMediaTrait;
@@ -98,10 +97,8 @@ class Note extends Model implements HasMedia
      */
     public function getNoteAttribute($value)
     {
-        $unicode = new UnicodeTools();
-        $codepoints = $unicode->convertUnicodeCodepoints($value);
         $markdown = new CommonMarkConverter();
-        $html = $markdown->convertToHtml($codepoints);
+        $html = $markdown->convertToHtml($value);
         $hcards = $this->makeHCards($html);
         $hashtags = $this->autoLinkHashtag($hcards);
 
diff --git a/changelog.md b/changelog.md
index e123718a..fe864e3e 100644
--- a/changelog.md
+++ b/changelog.md
@@ -2,6 +2,7 @@
 
 ## Version {next}
   - Better tag normalization code organisation
+  - Remove `jonnybarnes/unicode-tools` dependency and clean up relevant code
 
 ## Version 0.0.2 (2016-05-25)
   - Fix issue#1: tagged notes page needs the tag from the URL normalizing.
diff --git a/composer.json b/composer.json
index 5b3a0b8c..ab1a4393 100644
--- a/composer.json
+++ b/composer.json
@@ -8,7 +8,6 @@
         "ext-intl": "*",
         "php": ">=7.0.0",
         "laravel/framework": "5.2.*",
-        "jonnybarnes/unicode-tools": "dev-master",
         "jonnybarnes/indieweb": "dev-master",
         "jonnybarnes/webmentions-parser": "dev-master",
         "guzzlehttp/guzzle": "~6.0",
diff --git a/composer.lock b/composer.lock
index caa1bc23..dfe7330f 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,8 +4,8 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
         "This file is @generated automatically"
     ],
-    "hash": "52bfae9a802b8b7a53d83918045a0d67",
-    "content-hash": "08624d66bf872209171586433dfd5150",
+    "hash": "ae25cd7787df367a650bf7dc2fa74227",
+    "content-hash": "7982802429d5fe540f528ec69c3d84d2",
     "packages": [
         {
             "name": "anahkiasen/underscore-php",
@@ -1085,50 +1085,6 @@
             ],
             "time": "2016-01-14 15:10:20"
         },
-        {
-            "name": "jonnybarnes/unicode-tools",
-            "version": "dev-master",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/jonnybarnes/unicode-tools.git",
-                "reference": "0f469c30cb9a40a1cb578f893b3af1abc1a6ff53"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/jonnybarnes/unicode-tools/zipball/0f469c30cb9a40a1cb578f893b3af1abc1a6ff53",
-                "reference": "0f469c30cb9a40a1cb578f893b3af1abc1a6ff53",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.0"
-            },
-            "require-dev": {
-                "phpunit/phpunit": "3.7.*"
-            },
-            "type": "library",
-            "autoload": {
-                "psr-0": {
-                    "Jonnybarnes\\UnicodeTools": "src/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Jonny Barnes",
-                    "email": "jonny@jonnybarnes.net"
-                }
-            ],
-            "description": "Turns Unicode codepoints into raw utf-8 multibyte characters",
-            "homepage": "https://github.com/jonnybarnes/unicode-tools",
-            "keywords": [
-                "unicode",
-                "utf-8"
-            ],
-            "time": "2013-07-18 15:32:42"
-        },
         {
             "name": "jonnybarnes/webmentions-parser",
             "version": "dev-master",
@@ -5351,7 +5307,6 @@
     "aliases": [],
     "minimum-stability": "stable",
     "stability-flags": {
-        "jonnybarnes/unicode-tools": 20,
         "jonnybarnes/indieweb": 20,
         "jonnybarnes/webmentions-parser": 20
     },

From d86ee51d315b332a466b7abb502750d5208dc822 Mon Sep 17 00:00:00 2001
From: Jonny Barnes 
Date: Thu, 9 Jun 2016 15:47:11 +0100
Subject: [PATCH 13/13] Bump to version 0.0.3

---
 changelog.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/changelog.md b/changelog.md
index fe864e3e..34a65b0f 100644
--- a/changelog.md
+++ b/changelog.md
@@ -1,6 +1,6 @@
 # Changelog
 
-## Version {next}
+## Version 0.0.3 (2013-06-09)
   - Better tag normalization code organisation
   - Remove `jonnybarnes/unicode-tools` dependency and clean up relevant code