{"action":"created","issue":{"url":"https://api.github.com/repos/rubberduck-vba/Rubberduck/issues/4244","repository_url":"https://api.github.com/repos/rubberduck-vba/Rubberduck","labels_url":"https://api.github.com/repos/rubberduck-vba/Rubberduck/issues/4244/labels{/name}","comments_url":"https://api.github.com/repos/rubberduck-vba/Rubberduck/issues/4244/comments","events_url":"https://api.github.com/repos/rubberduck-vba/Rubberduck/issues/4244/events","html_url":"https://github.com/rubberduck-vba/Rubberduck/issues/4244","id":346014601,"node_id":"MDU6SXNzdWUzNDYwMTQ2MDE=","number":4244,"title":"Expand the use of busy state","user":{"login":"bclothier","id":2367644,"node_id":"MDQ6VXNlcjIzNjc2NDQ=","avatar_url":"https://avatars2.githubusercontent.com/u/2367644?v=4","gravatar_id":"","url":"https://api.github.com/users/bclothier","html_url":"https://github.com/bclothier","followers_url":"https://api.github.com/users/bclothier/followers","following_url":"https://api.github.com/users/bclothier/following{/other_user}","gists_url":"https://api.github.com/users/bclothier/gists{/gist_id}","starred_url":"https://api.github.com/users/bclothier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bclothier/subscriptions","organizations_url":"https://api.github.com/users/bclothier/orgs","repos_url":"https://api.github.com/users/bclothier/repos","events_url":"https://api.github.com/users/bclothier/events{/privacy}","received_events_url":"https://api.github.com/users/bclothier/received_events","type":"User","site_admin":false},"labels":[{"id":540647642,"node_id":"MDU6TGFiZWw1NDA2NDc2NDI=","url":"https://api.github.com/repos/rubberduck-vba/Rubberduck/labels/difficulty-02-ducky","name":"difficulty-02-ducky","color":"9ECFA4","default":false},{"id":141909752,"node_id":"MDU6TGFiZWwxNDE5MDk3NTI=","url":"https://api.github.com/repos/rubberduck-vba/Rubberduck/labels/enhancement","name":"enhancement","color":"FEFEFE","default":true},{"id":175554363,"node_id":"MDU6TGFiZWwxNzU1NTQzNjM=","url":"https://api.github.com/repos/rubberduck-vba/Rubberduck/labels/parse-tree-processing","name":"parse-tree-processing","color":"DDDDDD","default":false},{"id":202355751,"node_id":"MDU6TGFiZWwyMDIzNTU3NTE=","url":"https://api.github.com/repos/rubberduck-vba/Rubberduck/labels/up-for-grabs","name":"up-for-grabs","color":"0e8a16","default":false},{"id":159676180,"node_id":"MDU6TGFiZWwxNTk2NzYxODA=","url":"https://api.github.com/repos/rubberduck-vba/Rubberduck/labels/user-interface","name":"user-interface","color":"DDDDDd","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-07-31T02:44:16Z","updated_at":"2018-07-31T05:41:50Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"With PR #3956 finally merged (thanks to @MDoerner for all the help!), there are few other things that could benefit to leverage the busy action to avoid concurrency issues arising from changing the codebase:\r\n\r\n- [ ] Rewriter -- ideally, we should be able to queue all module rewriters' programs into a single action and execute them as a single busy action. That will ensure that we enter and leave the rewriter in a consistent state. This would apply to all quickfixes or refactorings where rewriters are used.\r\n- [ ] Adding or removing components to the project -- whenever we insert a new module or remove it, we need to ensure that no parsing or inspections are running during that moment. \r\n- [ ] ???\r\n"},"comment":{"url":"https://api.github.com/repos/rubberduck-vba/Rubberduck/issues/comments/409101531","html_url":"https://github.com/rubberduck-vba/Rubberduck/issues/4244#issuecomment-409101531","issue_url":"https://api.github.com/repos/rubberduck-vba/Rubberduck/issues/4244","id":409101531,"node_id":"MDEyOklzc3VlQ29tbWVudDQwOTEwMTUzMQ==","user":{"login":"MDoerner","id":22868956,"node_id":"MDQ6VXNlcjIyODY4OTU2","avatar_url":"https://avatars1.githubusercontent.com/u/22868956?v=4","gravatar_id":"","url":"https://api.github.com/users/MDoerner","html_url":"https://github.com/MDoerner","followers_url":"https://api.github.com/users/MDoerner/followers","following_url":"https://api.github.com/users/MDoerner/following{/other_user}","gists_url":"https://api.github.com/users/MDoerner/gists{/gist_id}","starred_url":"https://api.github.com/users/MDoerner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MDoerner/subscriptions","organizations_url":"https://api.github.com/users/MDoerner/orgs","repos_url":"https://api.github.com/users/MDoerner/repos","events_url":"https://api.github.com/users/MDoerner/events{/privacy}","received_events_url":"https://api.github.com/users/MDoerner/received_events","type":"User","site_admin":false},"created_at":"2018-07-31T05:41:50Z","updated_at":"2018-07-31T05:41:50Z","author_association":"CONTRIBUTOR","body":"To rewrite in a busy action is already on my todo list. This will be necessary anyway when we rewrite the attributes for multiple modules. Otherwise, they would all trigger a separate reparse. "}}
{"actor":{"display_login":"MDoerner"}}