{"action":"created","issue":{"url":"https://api.github.com/repos/AdamsLair/duality/issues/208","labels_url":"https://api.github.com/repos/AdamsLair/duality/issues/208/labels{/name}","comments_url":"https://api.github.com/repos/AdamsLair/duality/issues/208/comments","events_url":"https://api.github.com/repos/AdamsLair/duality/issues/208/events","html_url":"https://github.com/AdamsLair/duality/issues/208","id":105192968,"number":208,"title":"Write a v2.0 Project Upgrade Guide","user":{"login":"AdamsLair","id":5013908,"avatar_url":"https://avatars.githubusercontent.com/u/5013908?v=3","gravatar_id":"","url":"https://api.github.com/users/AdamsLair","html_url":"https://github.com/AdamsLair","followers_url":"https://api.github.com/users/AdamsLair/followers","following_url":"https://api.github.com/users/AdamsLair/following{/other_user}","gists_url":"https://api.github.com/users/AdamsLair/gists{/gist_id}","starred_url":"https://api.github.com/users/AdamsLair/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AdamsLair/subscriptions","organizations_url":"https://api.github.com/users/AdamsLair/orgs","repos_url":"https://api.github.com/users/AdamsLair/repos","events_url":"https://api.github.com/users/AdamsLair/events{/privacy}","received_events_url":"https://api.github.com/users/AdamsLair/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/AdamsLair/duality/labels/Task","name":"Task","color":"c7def8"}],"state":"closed","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/AdamsLair/duality/milestones/4","html_url":"https://github.com/AdamsLair/duality/milestones/v2.0","labels_url":"https://api.github.com/repos/AdamsLair/duality/milestones/4/labels","id":989404,"number":4,"title":"v2.0","description":"\"Coming Soon\" Stuff that would introduce too many or too severe breaking changes to be released in anything less than a major version step.","creator":{"login":"AdamsLair","id":5013908,"avatar_url":"https://avatars.githubusercontent.com/u/5013908?v=3","gravatar_id":"","url":"https://api.github.com/users/AdamsLair","html_url":"https://github.com/AdamsLair","followers_url":"https://api.github.com/users/AdamsLair/followers","following_url":"https://api.github.com/users/AdamsLair/following{/other_user}","gists_url":"https://api.github.com/users/AdamsLair/gists{/gist_id}","starred_url":"https://api.github.com/users/AdamsLair/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AdamsLair/subscriptions","organizations_url":"https://api.github.com/users/AdamsLair/orgs","repos_url":"https://api.github.com/users/AdamsLair/repos","events_url":"https://api.github.com/users/AdamsLair/events{/privacy}","received_events_url":"https://api.github.com/users/AdamsLair/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":20,"state":"open","created_at":"2015-02-21T15:06:22Z","updated_at":"2015-09-13T12:53:47Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2015-09-07T10:40:02Z","updated_at":"2015-09-13T12:53:47Z","closed_at":"2015-09-13T12:53:47Z","body":"Even though moving a project from v1.x to v2.0 isn't recommended or easy, it would be a good thing to get as much users as possible on the v2.0 boat soon, to prevent confusion like \"Which version are you on?\" and \"Why does that API result in a compile error?\". To achieve this, there should be an upgrade guide for existing projects.\r\n\r\n- Warn users that it won't be easy or one-click-and-done, but still possible if some effort is acceptable.\r\n- Explain the base procedure:\r\n  - Make sure all game content is using the XML format.\r\n  - Upgrade editor and dependency plugins to v2.0. If dependencies aren't available in v2.0 yet, wait until they are.\r\n  - Install the v2.0 backend plugins.\r\n  - Close the editor and keep it closed.\r\n  - Upgrade the game plugin project.\r\n    - Edit its .csproj file to be a PCL project.\r\n    - Remove references to OpenTK and System.XY assemblies.\r\n    - Add reference to DualityPrimitives.\r\n    - Fix compile errors (renamed and moved classes, adjusted API).\r\n    - Recompile!\r\n  - Perform a text replace across all .res files with the provided list of renamed and relocated type names.\r\n  - Open the editor and click on a few Resources. Have a look at the Log View. If there are errors, look out for type names that couldn't be resolved, close the editor and perform the replace step with them. Repeat until there are no more errors.\r\n  - Delete and Re-Import all Fonts."},"comment":{"url":"https://api.github.com/repos/AdamsLair/duality/issues/comments/139872121","html_url":"https://github.com/AdamsLair/duality/issues/208#issuecomment-139872121","issue_url":"https://api.github.com/repos/AdamsLair/duality/issues/208","id":139872121,"user":{"login":"AdamsLair","id":5013908,"avatar_url":"https://avatars.githubusercontent.com/u/5013908?v=3","gravatar_id":"","url":"https://api.github.com/users/AdamsLair","html_url":"https://github.com/AdamsLair","followers_url":"https://api.github.com/users/AdamsLair/followers","following_url":"https://api.github.com/users/AdamsLair/following{/other_user}","gists_url":"https://api.github.com/users/AdamsLair/gists{/gist_id}","starred_url":"https://api.github.com/users/AdamsLair/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AdamsLair/subscriptions","organizations_url":"https://api.github.com/users/AdamsLair/orgs","repos_url":"https://api.github.com/users/AdamsLair/repos","events_url":"https://api.github.com/users/AdamsLair/events{/privacy}","received_events_url":"https://api.github.com/users/AdamsLair/received_events","type":"User","site_admin":false},"created_at":"2015-09-13T12:53:47Z","updated_at":"2015-09-13T12:53:47Z","body":"Wrote a tutorial on this [here](http://forum.adamslair.net/viewtopic.php?f=17&t=557&p=3039#p3039)"}}