{"action":"created","issue":{"url":"https://api.github.com/repos/godotengine/godot/issues/16863","repository_url":"https://api.github.com/repos/godotengine/godot","labels_url":"https://api.github.com/repos/godotengine/godot/issues/16863/labels{/name}","comments_url":"https://api.github.com/repos/godotengine/godot/issues/16863/comments","events_url":"https://api.github.com/repos/godotengine/godot/issues/16863/events","html_url":"https://github.com/godotengine/godot/issues/16863","id":298665775,"node_id":"MDU6SXNzdWUyOTg2NjU3NzU=","number":16863,"title":"[TRACKER] Methods, properties and signals to consider for renaming in next planned compatibility breakage","user":{"login":"akien-mga","id":4701338,"node_id":"MDQ6VXNlcjQ3MDEzMzg=","avatar_url":"https://avatars0.githubusercontent.com/u/4701338?v=4","gravatar_id":"","url":"https://api.github.com/users/akien-mga","html_url":"https://github.com/akien-mga","followers_url":"https://api.github.com/users/akien-mga/followers","following_url":"https://api.github.com/users/akien-mga/following{/other_user}","gists_url":"https://api.github.com/users/akien-mga/gists{/gist_id}","starred_url":"https://api.github.com/users/akien-mga/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akien-mga/subscriptions","organizations_url":"https://api.github.com/users/akien-mga/orgs","repos_url":"https://api.github.com/users/akien-mga/repos","events_url":"https://api.github.com/users/akien-mga/events{/privacy}","received_events_url":"https://api.github.com/users/akien-mga/received_events","type":"User","site_admin":false},"labels":[{"id":955079684,"node_id":"MDU6TGFiZWw5NTUwNzk2ODQ=","url":"https://api.github.com/repos/godotengine/godot/labels/breaks%20compat","name":"breaks compat","color":"b60205","default":false},{"id":73330066,"node_id":"MDU6TGFiZWw3MzMzMDA2Ng==","url":"https://api.github.com/repos/godotengine/godot/labels/enhancement","name":"enhancement","color":"44bbff","default":true},{"id":279097966,"node_id":"MDU6TGFiZWwyNzkwOTc5NjY=","url":"https://api.github.com/repos/godotengine/godot/labels/topic:core","name":"topic:core","color":"ffdd44","default":false},{"id":362483476,"node_id":"MDU6TGFiZWwzNjI0ODM0NzY=","url":"https://api.github.com/repos/godotengine/godot/labels/tracker","name":"tracker","color":"f9d0c4","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":29,"created_at":"2018-02-20T16:44:26Z","updated_at":"2018-07-24T12:55:52Z","closed_at":null,"author_association":"MEMBER","body":"This issue is meant to keep track of awkwardly named or deprecated methods, properties and signals that we would like to rename next time we have the opportunity.\r\n\r\nThis can't be done lightly as it breaks compatibility for users using their old names, so any such change has to be done:\r\n- either after following a deprecation procedure: marked as deprecated - using it shows a warning - for at least one full minor release cycle (e.g. 3.1.x), then removed in a future minor or major version bump,\r\n- or within a major compatibility breaking release (such as 3.0 was to 2.1; but such situations won't happen often - if ever again - so the deprecation workflow should be preferred).\r\n\r\nTo properly deprecate methods, properties and signals, we need #4397 implemented.\r\n\r\n------------\r\n\r\n## Classes\r\n\r\n- [ ] `OS*` could be renamed to `Platform*` https://github.com/godotengine/godot/issues/16863#issuecomment-403253127\r\n- [ ] `TCP_Server` and `IP_Unix` should be renamed to `TCPServer` and `IPUnix` #19623 \r\n\r\n## Methods\r\n\r\n- [ ] `Animation`: `track_remove_key_at_position` should be `track_remove_key_at_time`\r\n- [ ] `Control`: Discrepancy between property names and their setter/getter names\r\n- [ ] `OS`: `can_draw` would be better suited in the `Engine` singleton\r\n- [ ] `OS`: `execute` should be split in two different methods, one blocking and the other non-blocking.\r\ne.g. names: `execute`/`exec_process` (blocking) and `spawn_process` (non-blocking) #19302\r\n- [ ] `RichTextLabel`: `set_use_bbcode` and `set_bbcode` should be renamed to `set_use_fixed_bbcode` and `set_fixed_bbcode`. Warnings should be thrown if bbcode is modified by another function #19118 \r\n- [ ] `Skeleton`: `set_bone_global_pose` should be renamed to `set_bone_skeleton_pose` (same for the getter). `get_bone_transform` should also be renamed, or dropped if unnecessary #19551\r\n- [ ] `Sprite`, `Sprite3D`: `set_region` and `is_region` should be renamed to `set_region_enabled` and `is_region_enabled`\r\n- [ ] `String`: `ord_at` considered unclear, proposal to rename it to `unicode_at` #15519\r\n- [ ] `TileMap`: `set_y_sort_mode` and `is_y_sort_mode_enabled` should be renamed to `set_y_sort_enabled` and `is_y_sort_enabled`\r\n- [ ] `TileMap`: Discrepancy between property names and their setter/getter names\r\n- [ ] `VisualServer`: `sync` and `draw` bindings should be deprecated in favour of the existing `force_sync` and `force_draw` #15892\r\n\r\n## Properties\r\n\r\n- [ ] `BoxShape`, `CubeMesh` and `CSGBox`: their dimension properties are inconsistent, and `CubeMesh` should maybe be renamed to `BoxMesh` https://github.com/godotengine/godot/issues/16863#issuecomment-403253127\r\n- [ ] `Camera2D`: `offset` and `offset_h`/`offset_v` are confusingly named as they refer to completely different things. It should likely be harmonized with `Camera` too which has `h_offset` and `v_offset` https://github.com/godotengine/godot/issues/16863#issuecomment-407133383\r\n- [ ] `Label` and `Button`: `clip_text` is not necessary anymore, as all Controls have `rect/clip_content` #20228\r\n- [ ] `LineEdit`: `cursor_*` properties should be renamed to `caret_*` #16116\r\n- [ ] `Node2D`, `Spatial`: inconsistency between `position` (2D) and `translation` (3D) #9128\r\n- [ ] `TileMap`: `collision_friction` property should be renamed to `friction` #18191\r\n\r\n## Signals\r\n\r\n- [ ] `ARVRController`: `button_release` should be spelled `button_released` (like `button_pressed`)\r\n- [ ] `CanvasItem`: `hide` should be renamed to `hidden`\r\n- [ ] `Tabs`: `tab_close` and `tab_hover` should be spelled `tab_closed` and `tab_hovered`\r\n- [ ] `Tree`: `item_activated` (label double-click) and `item_double_clicked` (icon double-click), names don't properly convey what they do #16839\r\n\r\n## Enums\r\n\r\n- [ ] `Viewport`: `ClearMode` and `UpdateMode` enums should use the same suffixes (#19404)\r\n\r\n## Objects\r\n\r\n- [ ] CapsuleShape should be vertical by default\r\n"},"comment":{"url":"https://api.github.com/repos/godotengine/godot/issues/comments/407396645","html_url":"https://github.com/godotengine/godot/issues/16863#issuecomment-407396645","issue_url":"https://api.github.com/repos/godotengine/godot/issues/16863","id":407396645,"node_id":"MDEyOklzc3VlQ29tbWVudDQwNzM5NjY0NQ==","user":{"login":"akien-mga","id":4701338,"node_id":"MDQ6VXNlcjQ3MDEzMzg=","avatar_url":"https://avatars0.githubusercontent.com/u/4701338?v=4","gravatar_id":"","url":"https://api.github.com/users/akien-mga","html_url":"https://github.com/akien-mga","followers_url":"https://api.github.com/users/akien-mga/followers","following_url":"https://api.github.com/users/akien-mga/following{/other_user}","gists_url":"https://api.github.com/users/akien-mga/gists{/gist_id}","starred_url":"https://api.github.com/users/akien-mga/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akien-mga/subscriptions","organizations_url":"https://api.github.com/users/akien-mga/orgs","repos_url":"https://api.github.com/users/akien-mga/repos","events_url":"https://api.github.com/users/akien-mga/events{/privacy}","received_events_url":"https://api.github.com/users/akien-mga/received_events","type":"User","site_admin":false},"created_at":"2018-07-24T12:55:52Z","updated_at":"2018-07-24T12:55:52Z","author_association":"MEMBER","body":"@neikeq Yes, 3.1 scripts are already incompatible with 3.0 (`class_name`, tons of API changes with new optional parameters or brand new properties/methods, new classes, etc.). We only take care of backward compatibility, not forward."}}
{"actor":{"display_login":"akien-mga"}}