{"action":"created","issue":{"url":"https://api.github.com/repos/cakephp/cakephp/issues/5537","labels_url":"https://api.github.com/repos/cakephp/cakephp/issues/5537/labels{/name}","comments_url":"https://api.github.com/repos/cakephp/cakephp/issues/5537/comments","events_url":"https://api.github.com/repos/cakephp/cakephp/issues/5537/events","html_url":"https://github.com/cakephp/cakephp/issues/5537","id":53235840,"number":5537,"title":"3.0 - Rename String class","user":{"login":"jrbasso","id":26548,"avatar_url":"https://avatars.githubusercontent.com/u/26548?v=3","gravatar_id":"","url":"https://api.github.com/users/jrbasso","html_url":"https://github.com/jrbasso","followers_url":"https://api.github.com/users/jrbasso/followers","following_url":"https://api.github.com/users/jrbasso/following{/other_user}","gists_url":"https://api.github.com/users/jrbasso/gists{/gist_id}","starred_url":"https://api.github.com/users/jrbasso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jrbasso/subscriptions","organizations_url":"https://api.github.com/users/jrbasso/orgs","repos_url":"https://api.github.com/users/jrbasso/repos","events_url":"https://api.github.com/users/jrbasso/events{/privacy}","received_events_url":"https://api.github.com/users/jrbasso/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/cakephp/cakephp/labels/RFC","name":"RFC","color":"c7def8"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/cakephp/cakephp/milestones/7","labels_url":"https://api.github.com/repos/cakephp/cakephp/milestones/7/labels","id":453043,"number":7,"title":"3.0.0","description":"New major release that breaks compatibility with 2.x\r\n\r\n- PHP5.4.19+\r\n- New ORM & behaviors.\r\n- Improved Routing\r\n- PSR-0 and composer support.\r\n- Simpler configuration and bootstrapping.\r\n- Improved configuration handling.\r\n- Improved bake.\r\n\r\nSee [the roadmap](http://github.com/cakephp/cakephp/wiki/3.0-roadmap) for more details.","creator":{"login":"lh-import","id":5175817,"avatar_url":"https://avatars.githubusercontent.com/u/5175817?v=3","gravatar_id":"","url":"https://api.github.com/users/lh-import","html_url":"https://github.com/lh-import","followers_url":"https://api.github.com/users/lh-import/followers","following_url":"https://api.github.com/users/lh-import/following{/other_user}","gists_url":"https://api.github.com/users/lh-import/gists{/gist_id}","starred_url":"https://api.github.com/users/lh-import/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lh-import/subscriptions","organizations_url":"https://api.github.com/users/lh-import/orgs","repos_url":"https://api.github.com/users/lh-import/repos","events_url":"https://api.github.com/users/lh-import/events{/privacy}","received_events_url":"https://api.github.com/users/lh-import/received_events","type":"User","site_admin":false},"open_issues":41,"closed_issues":2060,"state":"open","created_at":"2013-10-11T20:56:23Z","updated_at":"2015-01-02T13:24:49Z","due_on":null,"closed_at":null},"comments":17,"created_at":"2015-01-02T03:19:01Z","updated_at":"2015-01-02T14:09:12Z","closed_at":null,"body":"Since 3.0 is not in RC/GA stage, I guess we should consider to rename or split the methods from the class String.\r\n\r\nIn PHP 7 string will not be allowed as class name. It means that people that upgrade to CakePHP 3.0 (and maybe all the 3.x block) will be incompatible with PHP 7. Changing the class name between minor releases to be compatible with a new PHP version is bad for backward compatibility and bumping the major version sometimes is also hard because we could be working on that for long time, like on 3.0 that we are working for over 2 years.\r\n\r\nReference: https://wiki.php.net/rfc/scalar_type_hints\r\n> No new reserved words are added. The names int, integer, float, string, bool and boolean are recognised and allowed as type hints, and prohibited from use as class/interface/trait names.\r\n\r\nPS: The RFC is not approved yet, but from comments on PHP internals list it is being refined and probably it will be approved.\r\n\r\nPS 2: String name is incompatible with other PHP-related things, such as Zephir and HHVM for a long time (not sure if still).\r\n\r\nSomeone has suggestions for the new class name(s)?"},"comment":{"url":"https://api.github.com/repos/cakephp/cakephp/issues/comments/68528538","html_url":"https://github.com/cakephp/cakephp/issues/5537#issuecomment-68528538","issue_url":"https://api.github.com/repos/cakephp/cakephp/issues/5537","id":68528538,"user":{"login":"jrbasso","id":26548,"avatar_url":"https://avatars.githubusercontent.com/u/26548?v=3","gravatar_id":"","url":"https://api.github.com/users/jrbasso","html_url":"https://github.com/jrbasso","followers_url":"https://api.github.com/users/jrbasso/followers","following_url":"https://api.github.com/users/jrbasso/following{/other_user}","gists_url":"https://api.github.com/users/jrbasso/gists{/gist_id}","starred_url":"https://api.github.com/users/jrbasso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jrbasso/subscriptions","organizations_url":"https://api.github.com/users/jrbasso/orgs","repos_url":"https://api.github.com/users/jrbasso/repos","events_url":"https://api.github.com/users/jrbasso/events{/privacy}","received_events_url":"https://api.github.com/users/jrbasso/received_events","type":"User","site_admin":false},"created_at":"2015-01-02T14:09:12Z","updated_at":"2015-01-02T14:09:12Z","body":"For now I created the branch [`3.0-string-class`](https://github.com/cakephp/cakephp/compare/3.0...3.0-string-class) with the class rename only until we discuss the future of uuid.\r\n\r\nOnce we define it I will update cakephp/upgrade and cakephp/docs repos too."}}