{"action":"created","issue":{"url":"https://api.github.com/repos/amethyst/amethyst/issues/839","repository_url":"https://api.github.com/repos/amethyst/amethyst","labels_url":"https://api.github.com/repos/amethyst/amethyst/issues/839/labels{/name}","comments_url":"https://api.github.com/repos/amethyst/amethyst/issues/839/comments","events_url":"https://api.github.com/repos/amethyst/amethyst/issues/839/events","html_url":"https://github.com/amethyst/amethyst/issues/839","id":347467288,"node_id":"MDU6SXNzdWUzNDc0NjcyODg=","number":839,"title":"[RFC] Drop AppVeyor from the main repo","user":{"login":"Moxinilian","id":30992420,"node_id":"MDQ6VXNlcjMwOTkyNDIw","avatar_url":"https://avatars0.githubusercontent.com/u/30992420?v=4","gravatar_id":"","url":"https://api.github.com/users/Moxinilian","html_url":"https://github.com/Moxinilian","followers_url":"https://api.github.com/users/Moxinilian/followers","following_url":"https://api.github.com/users/Moxinilian/following{/other_user}","gists_url":"https://api.github.com/users/Moxinilian/gists{/gist_id}","starred_url":"https://api.github.com/users/Moxinilian/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Moxinilian/subscriptions","organizations_url":"https://api.github.com/users/Moxinilian/orgs","repos_url":"https://api.github.com/users/Moxinilian/repos","events_url":"https://api.github.com/users/Moxinilian/events{/privacy}","received_events_url":"https://api.github.com/users/Moxinilian/received_events","type":"User","site_admin":false},"labels":[{"id":347135559,"node_id":"MDU6TGFiZWwzNDcxMzU1NTk=","url":"https://api.github.com/repos/amethyst/amethyst/labels/type:%20RFC","name":"type: RFC","color":"84b6eb","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2018-08-03T16:52:31Z","updated_at":"2018-08-14T15:15:27Z","closed_at":null,"author_association":"MEMBER","body":"# Drop AppVeyor from the main repo\r\n\r\nThis RFC discusses the possibility of dropping AppVeyor from our PR workflow.\r\n\r\n## Why?\r\n\r\nThe current main issue with the way we handle PRs is that we spend hours waiting for CI to process.\r\nThe average build is approximately 30 minutes per target (and they can't always run at the same time), and this is done once for every new commit added to the PR, and then twice while we wait for bors to check the final merging.\r\nThis is spending way too much time and congests the free allocated resource we have for the Amethyst repo.\r\nThis is why we have been trying to implement build caches, so that we could avoid rebuilding all dependencies every time. This could reduce build times by a factor of 10.\r\nUnfortunately, the binary size we need to cache is quite large (approximately 7GB-8GB uncompressed). Travis seems to handle it properly. AppVeyor on the other hand maximizes the compressed build cache to 1GB, which is way under our needs.\r\n5GB of build cache on AppVeyor is already $99/month, which is a price we can not pay.\r\nThis is why this RFC suggests dropping AppVeyor entirely, to not have it slow down builds.\r\n\r\n## Issues raised\r\n\r\nAppVeyor is the only way we have available to have CI try Windows build, as Travis only provides macOS and Linux build platforms.\r\nHowever, Windows-specific errors that could be detected by CI are pretty rare, and many contributors (such as @Xaeroxe or myself) work on Windows. If this kind of error would ever come up, we would most likely notice it."},"comment":{"url":"https://api.github.com/repos/amethyst/amethyst/issues/comments/412908210","html_url":"https://github.com/amethyst/amethyst/issues/839#issuecomment-412908210","issue_url":"https://api.github.com/repos/amethyst/amethyst/issues/839","id":412908210,"node_id":"MDEyOklzc3VlQ29tbWVudDQxMjkwODIxMA==","user":{"login":"jojolepro","id":4755185,"node_id":"MDQ6VXNlcjQ3NTUxODU=","avatar_url":"https://avatars2.githubusercontent.com/u/4755185?v=4","gravatar_id":"","url":"https://api.github.com/users/jojolepro","html_url":"https://github.com/jojolepro","followers_url":"https://api.github.com/users/jojolepro/followers","following_url":"https://api.github.com/users/jojolepro/following{/other_user}","gists_url":"https://api.github.com/users/jojolepro/gists{/gist_id}","starred_url":"https://api.github.com/users/jojolepro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jojolepro/subscriptions","organizations_url":"https://api.github.com/users/jojolepro/orgs","repos_url":"https://api.github.com/users/jojolepro/repos","events_url":"https://api.github.com/users/jojolepro/events{/privacy}","received_events_url":"https://api.github.com/users/jojolepro/received_events","type":"User","site_admin":false},"created_at":"2018-08-14T15:15:27Z","updated_at":"2018-08-14T15:15:27Z","author_association":"COLLABORATOR","body":"Tbh, I'd prefer if we keep appveyor, but only run it using bors, and not each time we push a commit, to save time on things we want to merge."}}
{"actor":{"display_login":"jojolepro"}}