{"action":"created","issue":{"url":"https://api.github.com/repos/godotengine/godot/issues/10148","repository_url":"https://api.github.com/repos/godotengine/godot","labels_url":"https://api.github.com/repos/godotengine/godot/issues/10148/labels{/name}","comments_url":"https://api.github.com/repos/godotengine/godot/issues/10148/comments","events_url":"https://api.github.com/repos/godotengine/godot/issues/10148/events","html_url":"https://github.com/godotengine/godot/pull/10148","id":248446202,"number":10148,"title":"Replacement of internal RegEx with PCRE2","user":{"login":"leezh","id":185322,"avatar_url":"https://avatars3.githubusercontent.com/u/185322?v=4","gravatar_id":"","url":"https://api.github.com/users/leezh","html_url":"https://github.com/leezh","followers_url":"https://api.github.com/users/leezh/followers","following_url":"https://api.github.com/users/leezh/following{/other_user}","gists_url":"https://api.github.com/users/leezh/gists{/gist_id}","starred_url":"https://api.github.com/users/leezh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leezh/subscriptions","organizations_url":"https://api.github.com/users/leezh/orgs","repos_url":"https://api.github.com/users/leezh/repos","events_url":"https://api.github.com/users/leezh/events{/privacy}","received_events_url":"https://api.github.com/users/leezh/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2017-08-07T15:24:27Z","updated_at":"2017-08-07T18:36:06Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/godotengine/godot/pulls/10148","html_url":"https://github.com/godotengine/godot/pull/10148","diff_url":"https://github.com/godotengine/godot/pull/10148.diff","patch_url":"https://github.com/godotengine/godot/pull/10148.patch"},"body":"Turns out PCRE2 was not as heavy as I thought and was fairly easy to integrate into Godot. This is the minimal feature-parity-ish commit. Plans to introduce serialised compilations and JIT speed-ups would come separately later.\r\n\r\n**That said, discussion is needed for `modules/regex/SCsub`.** Due to how `wchar_t` can be 32 bit on *nix but 16-bit on Windows, it is necessary to know at compile-time its width. Unfortunately, I'm not sure the tests in `modules/regex/SCsub` is the right place (or even the right method).\r\n\r\nIf someone more familiar with SCons can help me out, that'd be great.\r\n\r\n## Notable minor breaking changes:\r\n\r\n* The pattern and replacement matching behaviour has been changed purely due to the nature of switching to a standards-compliant library.\r\n* One mistake in the previous behaviour was that named groups didn't have a number. This has been corrected.\r\n* As names are actually just an alias of numbered groups, `RegExMatch::get_name_dict()` has been removed. Also, for clarity, `RegExMatch::get_group_array()` has been renamed.\r\n* Due the lack of a suitable equivalent in PCRE2, `RegExMatch::expand()` was removed."},"comment":{"url":"https://api.github.com/repos/godotengine/godot/issues/comments/320744950","html_url":"https://github.com/godotengine/godot/pull/10148#issuecomment-320744950","issue_url":"https://api.github.com/repos/godotengine/godot/issues/10148","id":320744950,"user":{"login":"tagcup","id":16531565,"avatar_url":"https://avatars1.githubusercontent.com/u/16531565?v=4","gravatar_id":"","url":"https://api.github.com/users/tagcup","html_url":"https://github.com/tagcup","followers_url":"https://api.github.com/users/tagcup/followers","following_url":"https://api.github.com/users/tagcup/following{/other_user}","gists_url":"https://api.github.com/users/tagcup/gists{/gist_id}","starred_url":"https://api.github.com/users/tagcup/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tagcup/subscriptions","organizations_url":"https://api.github.com/users/tagcup/orgs","repos_url":"https://api.github.com/users/tagcup/repos","events_url":"https://api.github.com/users/tagcup/events{/privacy}","received_events_url":"https://api.github.com/users/tagcup/received_events","type":"User","site_admin":false},"created_at":"2017-08-07T18:36:06Z","updated_at":"2017-08-07T18:36:06Z","body":"Ah, does this String class use UCS-4?"}}
{"actor":{"display_login":"tagcup"}}