{"action":"created","issue":{"url":"https://api.github.com/repos/nodejs/node-eps/issues/28","repository_url":"https://api.github.com/repos/nodejs/node-eps","labels_url":"https://api.github.com/repos/nodejs/node-eps/issues/28/labels{/name}","comments_url":"https://api.github.com/repos/nodejs/node-eps/issues/28/comments","events_url":"https://api.github.com/repos/nodejs/node-eps/issues/28/events","html_url":"https://github.com/nodejs/node-eps/pull/28","id":157944998,"number":28,"title":"proposal: what-wg url standard implementation","user":{"login":"jasnell","id":439929,"avatar_url":"https://avatars.githubusercontent.com/u/439929?v=3","gravatar_id":"","url":"https://api.github.com/users/jasnell","html_url":"https://github.com/jasnell","followers_url":"https://api.github.com/users/jasnell/followers","following_url":"https://api.github.com/users/jasnell/following{/other_user}","gists_url":"https://api.github.com/users/jasnell/gists{/gist_id}","starred_url":"https://api.github.com/users/jasnell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasnell/subscriptions","organizations_url":"https://api.github.com/users/jasnell/orgs","repos_url":"https://api.github.com/users/jasnell/repos","events_url":"https://api.github.com/users/jasnell/events{/privacy}","received_events_url":"https://api.github.com/users/jasnell/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2016-06-01T16:01:22Z","updated_at":"2016-06-01T16:29:03Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/nodejs/node-eps/pulls/28","html_url":"https://github.com/nodejs/node-eps/pull/28","diff_url":"https://github.com/nodejs/node-eps/pull/28.diff","patch_url":"https://github.com/nodejs/node-eps/pull/28.patch"},"body":"The [WhatWG URL Standard](https://url.spec.whatwg.org) specifies updated syntax, parsing and serialization of\r\nURLs as currently implemented by the main Web Browsers. The existing Node.js\r\n`url` module parsing and serialization implementation currently does not support\r\nthe URL standard and fails to pass almost half of the parsing tests.\r\n\r\nThis proposal is to implement the WhatWG URL Standard by introducing a new\r\n`URL` *global*.\r\n\r\nThe *existing* `url` module would **remain** as it currently is, with the\r\naddition of a single `require('url').URL` export that can be used an an\r\nalternative way of the getting a reference to the new `URL` constructor.\r\n\r\nExisting locations within core that currently accept a URL string or the\r\nparsed results of `require('url').parse()` would be modified to also accept\r\nthe `URL` object. Instances within core that current parse URL strings using\r\n`require('url').parse()` would be modified to use the new `URL` global instead.\r\n\r\nBecause the existing `require('url')` module remains, there should be no\r\nbackwards compatibility concerns.\r\n\r\n## Example\r\n\r\n```js\r\nconst url = new URL('http://user:pass@example.org:1234/p/a/t/h?xyz=abc#hash');\r\n\r\nconsole.log(url.protocol;      // http:\r\nconsole.log(url.username);     // user\r\nconsole.log(url.password);     // password\r\nconsole.log(url.host);         // example.org:1234\r\nconsole.log(url.hostname);     // example.org\r\nconsole.log(url.port);         // 1234\r\nconsole.log(url.pathname);     // /p/a/t/h\r\nconsole.log(url.search);       // ?xyz=abc\r\nconsole.log(url.searchParams); // SearchParams object\r\nconsole.log(url.hash);         // hash\r\n\r\n// The SearchParams object is defined by the WhatWG spec also\r\nurl.searchParams.append('key', 'value');\r\n\r\nconsole.log(url);\r\n // http://user:pass@example.org:1234/p/a/t/h?xyz=abc&key=value#hash\r\n```\r\n"},"comment":{"url":"https://api.github.com/repos/nodejs/node-eps/issues/comments/223048828","html_url":"https://github.com/nodejs/node-eps/pull/28#issuecomment-223048828","issue_url":"https://api.github.com/repos/nodejs/node-eps/issues/28","id":223048828,"user":{"login":"jasnell","id":439929,"avatar_url":"https://avatars.githubusercontent.com/u/439929?v=3","gravatar_id":"","url":"https://api.github.com/users/jasnell","html_url":"https://github.com/jasnell","followers_url":"https://api.github.com/users/jasnell/followers","following_url":"https://api.github.com/users/jasnell/following{/other_user}","gists_url":"https://api.github.com/users/jasnell/gists{/gist_id}","starred_url":"https://api.github.com/users/jasnell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasnell/subscriptions","organizations_url":"https://api.github.com/users/jasnell/orgs","repos_url":"https://api.github.com/users/jasnell/repos","events_url":"https://api.github.com/users/jasnell/events{/privacy}","received_events_url":"https://api.github.com/users/jasnell/received_events","type":"User","site_admin":false},"created_at":"2016-06-01T16:29:02Z","updated_at":"2016-06-01T16:29:02Z","body":"Regarding borrowing from other impls, it's entirely possible that we could borrow from chromes implementation. I'm not sure yet if theirs is a pure JS impl or not. I'll look into that."}}
{"actor":{"display_login":"jasnell"}}