{"action":"created","issue":{"url":"https://api.github.com/repos/Railk/T3S/issues/63","labels_url":"https://api.github.com/repos/Railk/T3S/issues/63/labels{/name}","comments_url":"https://api.github.com/repos/Railk/T3S/issues/63/comments","events_url":"https://api.github.com/repos/Railk/T3S/issues/63/events","html_url":"https://github.com/Railk/T3S/pull/63","id":35682185,"number":63,"title":"Some improvements","user":{"login":"Phaiax","id":1649278,"avatar_url":"https://avatars.githubusercontent.com/u/1649278?v=3","gravatar_id":"","url":"https://api.github.com/users/Phaiax","html_url":"https://github.com/Phaiax","followers_url":"https://api.github.com/users/Phaiax/followers","following_url":"https://api.github.com/users/Phaiax/following{/other_user}","gists_url":"https://api.github.com/users/Phaiax/gists{/gist_id}","starred_url":"https://api.github.com/users/Phaiax/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Phaiax/subscriptions","organizations_url":"https://api.github.com/users/Phaiax/orgs","repos_url":"https://api.github.com/users/Phaiax/repos","events_url":"https://api.github.com/users/Phaiax/events{/privacy}","received_events_url":"https://api.github.com/users/Phaiax/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":31,"created_at":"2014-06-13T15:36:59Z","updated_at":"2015-01-05T17:21:41Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/Railk/T3S/pulls/63","html_url":"https://github.com/Railk/T3S/pull/63","diff_url":"https://github.com/Railk/T3S/pull/63.diff","patch_url":"https://github.com/Railk/T3S/pull/63.patch"},"body":"Hey\r\n\r\nI've worked a little bit on the code in the dev branch.\r\n\r\nFormer i had the problem, that there was a bunch of unexecuted showError commands in the async tss queue if I type a character just every debounce_delay seconds. Every showError takes 5-10 seconds on my project so it could easily take up to a minute until i could see the most recent errors. This took CPU time and slowed the builds also.\r\n\r\nI did a lot, these are the main changes:\r\n* still two instances of tss.js for each project (one for completions etc, one for the slow showErrors)\r\n* but both of them are async now\r\n* all commands are working with callbacks now, because there is no more synchron tss.js process\r\n* commands in the tss.js execution queue will be reordered, so that a showErrors will always work with the newest data\r\n* commands in the tss.js execution queue will be merged, so even if there are 3 showErrors in the queue, it will only be executed once\r\n* debouncing still enabled: showErrors will wait 0.8 seconds after the last keystroke\r\n* showErrors will only be executed if anything has changed on the open files.\r\n\r\nThis results in a much better responsiveness. Previously i had some delays (gui hang ups) on completion trigger etc, but now it works much smoother.\r\n\r\nMore changes: \r\n* refactoring, renaming, documentation of some files\r\n* Debug print statements in code\r\n\r\nAll these changes are working well with Linux and sublime 3.\r\nWhen i'm done i can test it with sublime 2 (if they have a free version).\r\nCan you test it in windows?\r\n\r\nI'm open to any suggestions on my changes.\r\n\r\nregargs, Dän"},"comment":{"url":"https://api.github.com/repos/Railk/T3S/issues/comments/68741708","html_url":"https://github.com/Railk/T3S/pull/63#issuecomment-68741708","issue_url":"https://api.github.com/repos/Railk/T3S/issues/63","id":68741708,"user":{"login":"Phaiax","id":1649278,"avatar_url":"https://avatars.githubusercontent.com/u/1649278?v=3","gravatar_id":"","url":"https://api.github.com/users/Phaiax","html_url":"https://github.com/Phaiax","followers_url":"https://api.github.com/users/Phaiax/followers","following_url":"https://api.github.com/users/Phaiax/following{/other_user}","gists_url":"https://api.github.com/users/Phaiax/gists{/gist_id}","starred_url":"https://api.github.com/users/Phaiax/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Phaiax/subscriptions","organizations_url":"https://api.github.com/users/Phaiax/orgs","repos_url":"https://api.github.com/users/Phaiax/repos","events_url":"https://api.github.com/users/Phaiax/events{/privacy}","received_events_url":"https://api.github.com/users/Phaiax/received_events","type":"User","site_admin":false},"created_at":"2015-01-05T17:21:41Z","updated_at":"2015-01-05T17:21:41Z","body":"Hey\r\n\r\nI've created a new plugin, which is based on T3S and includes these patches.\r\n\r\nhttps://github.com/Phaiax/ArcticTypescript\r\n\r\nYou can install ArcticTypescript using PackageControl. Please remove T3S first, both plugins together are incompatible.\r\n\r\n* untested on windows and mac, but i will fix bugs as soon as you create Issues for ArcticTypescript.\r\n* major updates which will break configuration structure may happen in future\r\n\r\nPhaiax"}}