{"action":"created","issue":{"url":"https://api.github.com/repos/JuliaLang/julia/issues/11004","labels_url":"https://api.github.com/repos/JuliaLang/julia/issues/11004/labels{/name}","comments_url":"https://api.github.com/repos/JuliaLang/julia/issues/11004/comments","events_url":"https://api.github.com/repos/JuliaLang/julia/issues/11004/events","html_url":"https://github.com/JuliaLang/julia/pull/11004","id":70875968,"number":11004,"title":"Fix Unicode bugs with UTF-16/UTF-32 conversions (#10959)","user":{"login":"ScottPJones","id":11798751,"avatar_url":"https://avatars.githubusercontent.com/u/11798751?v=3","gravatar_id":"","url":"https://api.github.com/users/ScottPJones","html_url":"https://github.com/ScottPJones","followers_url":"https://api.github.com/users/ScottPJones/followers","following_url":"https://api.github.com/users/ScottPJones/following{/other_user}","gists_url":"https://api.github.com/users/ScottPJones/gists{/gist_id}","starred_url":"https://api.github.com/users/ScottPJones/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ScottPJones/subscriptions","organizations_url":"https://api.github.com/users/ScottPJones/orgs","repos_url":"https://api.github.com/users/ScottPJones/repos","events_url":"https://api.github.com/users/ScottPJones/events{/privacy}","received_events_url":"https://api.github.com/users/ScottPJones/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/JuliaLang/julia/labels/unicode","name":"unicode","color":"5f4a60"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":299,"created_at":"2015-04-25T08:18:36Z","updated_at":"2015-06-02T23:12:56Z","closed_at":"2015-06-02T22:15:10Z","pull_request":{"url":"https://api.github.com/repos/JuliaLang/julia/pulls/11004","html_url":"https://github.com/JuliaLang/julia/pull/11004","diff_url":"https://github.com/JuliaLang/julia/pull/11004.diff","patch_url":"https://github.com/JuliaLang/julia/pull/11004.patch"},"body":"Rewrote a number of the conversions between ASCIIString, UTF8String,\r\nUTF16String, and UTF32String, and also rewrote length() for\r\nUTF16String().\r\n\r\nAdded validation functions that can be used in many other places, which also fix a number of Unicode handling bugs, such as detecting overlong encodings, out of range characters, singleton surrogate characters, and missing continuation characters, among other problems.\r\n\r\nAdded over 150 lines of testing code to detect the above conversion problems\r\n\r\nAdded (in a gist) code to show other conversion problems not yet fixed:\r\nhttps://gist.github.com/ScottPJones/4e6e8938f0559998f9fc\r\n\r\nAdded (in a gist) code to benchmark the performance, to ensure that adding the extra validity\r\nchecking did not adversely affect performance (in fact, performance was greatly improved).\r\nhttps://gist.github.com/ScottPJones/79ed895f05f85f333d84"},"comment":{"url":"https://api.github.com/repos/JuliaLang/julia/issues/comments/108125870","html_url":"https://github.com/JuliaLang/julia/pull/11004#issuecomment-108125870","issue_url":"https://api.github.com/repos/JuliaLang/julia/issues/11004","id":108125870,"user":{"login":"ScottPJones","id":11798751,"avatar_url":"https://avatars.githubusercontent.com/u/11798751?v=3","gravatar_id":"","url":"https://api.github.com/users/ScottPJones","html_url":"https://github.com/ScottPJones","followers_url":"https://api.github.com/users/ScottPJones/followers","following_url":"https://api.github.com/users/ScottPJones/following{/other_user}","gists_url":"https://api.github.com/users/ScottPJones/gists{/gist_id}","starred_url":"https://api.github.com/users/ScottPJones/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ScottPJones/subscriptions","organizations_url":"https://api.github.com/users/ScottPJones/orgs","repos_url":"https://api.github.com/users/ScottPJones/repos","events_url":"https://api.github.com/users/ScottPJones/events{/privacy}","received_events_url":"https://api.github.com/users/ScottPJones/received_events","type":"User","site_admin":false},"created_at":"2015-06-02T23:12:56Z","updated_at":"2015-06-02T23:12:56Z","body":">So, here's a toast :wine_glass: to both the code-author and all the reviewers of this issue! Nice job sticking with it, everyone. I'm a string noob so can't help in any meaningful way, but you all have my good wishes for a speedy and constructive conclusion!\r\n\r\n@timholy I guess you spoke too soon, unfortunately.  Thanks for all of your help reviewing this, along with everybody else."}}