{"action":"created","issue":{"url":"https://api.github.com/repos/FakeItEasy/FakeItEasy/issues/617","repository_url":"https://api.github.com/repos/FakeItEasy/FakeItEasy","labels_url":"https://api.github.com/repos/FakeItEasy/FakeItEasy/issues/617/labels{/name}","comments_url":"https://api.github.com/repos/FakeItEasy/FakeItEasy/issues/617/comments","events_url":"https://api.github.com/repos/FakeItEasy/FakeItEasy/issues/617/events","html_url":"https://github.com/FakeItEasy/FakeItEasy/pull/617","id":136518140,"number":617,"title":"[WIP] Porting to .Net Core","user":{"login":"jeremymeng","id":7583839,"avatar_url":"https://avatars.githubusercontent.com/u/7583839?v=3","gravatar_id":"","url":"https://api.github.com/users/jeremymeng","html_url":"https://github.com/jeremymeng","followers_url":"https://api.github.com/users/jeremymeng/followers","following_url":"https://api.github.com/users/jeremymeng/following{/other_user}","gists_url":"https://api.github.com/users/jeremymeng/gists{/gist_id}","starred_url":"https://api.github.com/users/jeremymeng/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeremymeng/subscriptions","organizations_url":"https://api.github.com/users/jeremymeng/orgs","repos_url":"https://api.github.com/users/jeremymeng/repos","events_url":"https://api.github.com/users/jeremymeng/events{/privacy}","received_events_url":"https://api.github.com/users/jeremymeng/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":25,"created_at":"2016-02-25T21:31:23Z","updated_at":"2016-06-22T17:59:34Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/FakeItEasy/FakeItEasy/pulls/617","html_url":"https://github.com/FakeItEasy/FakeItEasy/pull/617","diff_url":"https://github.com/FakeItEasy/FakeItEasy/pull/617.diff","patch_url":"https://github.com/FakeItEasy/FakeItEasy/pull/617.patch"},"body":"This is for #531.  \r\n\r\n**Update** 06/21/2016:\r\n\r\nAdded a unit test project that targets netcoreapp1.0.  Had to disable a bunch of tests (145) though, mostly due to missing of \r\n1. binary serialization\r\n2. ReflectedType (a lot of parameterized tests since `ReflectedMethodData` cannot be used on .NET Core)\r\n3. CurrentCultrue/CurrentUICultrue setter\r\n\r\n**Update** 05/10/2016:\r\nReplace binary serialization with Json serialization.\r\n\r\n**Update** 04/12/2016:\r\nThe netcore project now builds fine and my Dnx test project only failed due to the lack of Binary serialization (currently `NotYetImplementedException is thrown for .NET Core).\r\n\r\n ~~still has one build error~~ and I want to start a discussion about a couple of things, as well as getting feedback.\r\n\r\n- [X] `MethodInfo.ReflectedType` isn't supported yet.  This is the remaining build error.  It is coming back (https://github.com/dotnet/corefx/issues/5381), but in RTM.  In the meantime, we need something.  Options are: wrapping the MethodInfo with the original type, or passing the original type through the chain of method calls.   NUnit did the former in their port (https://github.com/nunit/nunit/pull/797).\r\n\r\n    **Edit:** It looks that the MethodInfo wrapper is only needed for one file so I made the change.  Once the ReflectedType becomes available in RTM [this change](https://github.com/FakeItEasy/FakeItEasy/pull/617/commits/9eeed21accec0e4c6cde27bdcae295e82e05972f) can be reverted.\r\n\r\n- [X] Replacement of `BinaryFormatter`?  ~~I've briefly tried `DataContractSerializer` but it seems unable to serialize `MethodInfo`.~~\r\n- [X] is the usage of `LibraryManager` achieving the same goal as desktop version?\r\n\r\n    **Edit:** I've changed to use `LibraryManager.GetLibraries()`.  Tests passed.  However it returns the transitive closure of the references, which is much more than number of loaded assemblies form `AppDomain.GetAssemblies()`\r\n\r\n- [ ] usage of custom `AssemblyLoadContext` needs review.\r\n\r\nOnce the netcore project builds, things to do include, but not lmited to \r\n\r\n- [X] Add a dnx test project that exercises the .Net Core code paths.\r\n\r\n    **Edit:** added in a branch of my fork to test the porting changes.  As there is a work item to migrate tests to xUnit.  It make little sense to merge this back.\r\n- [X] Add signing key to `project.json`.\r\n\r\n@adamralph \r\n\r\n/cc @thecodejunkie @jchannon\r\n\r\n<!--\r\nconnects to #531\r\n-->"},"comment":{"url":"https://api.github.com/repos/FakeItEasy/FakeItEasy/issues/comments/227826292","html_url":"https://github.com/FakeItEasy/FakeItEasy/pull/617#issuecomment-227826292","issue_url":"https://api.github.com/repos/FakeItEasy/FakeItEasy/issues/617","id":227826292,"user":{"login":"jeremymeng","id":7583839,"avatar_url":"https://avatars.githubusercontent.com/u/7583839?v=3","gravatar_id":"","url":"https://api.github.com/users/jeremymeng","html_url":"https://github.com/jeremymeng","followers_url":"https://api.github.com/users/jeremymeng/followers","following_url":"https://api.github.com/users/jeremymeng/following{/other_user}","gists_url":"https://api.github.com/users/jeremymeng/gists{/gist_id}","starred_url":"https://api.github.com/users/jeremymeng/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeremymeng/subscriptions","organizations_url":"https://api.github.com/users/jeremymeng/orgs","repos_url":"https://api.github.com/users/jeremymeng/repos","events_url":"https://api.github.com/users/jeremymeng/events{/privacy}","received_events_url":"https://api.github.com/users/jeremymeng/received_events","type":"User","site_admin":false},"created_at":"2016-06-22T17:59:34Z","updated_at":"2016-06-22T17:59:34Z","body":"> a bit off-topic, but how did you setup your build in AppVeyor?\r\n@thomaslevesque I only used two individual rake targets: `bundle exec rake unit` and `bundle exec rake pack`.  I think the failure is due to older version of ruby. [AppVeyor has ruby 1.9.3 as default](http://www.appveyor.com/docs/installed-software#ruby).  You can use the following before running bundle.\r\n\r\n```\r\nset PATH=C:\\Ruby23-x64\\bin;%PATH%\r\n```\r\n"}}
{"actor":{"display_login":"jeremymeng"}}