{"action":"created","issue":{"url":"https://api.github.com/repos/neo4j/neo4j-dotnet-driver/issues/42","repository_url":"https://api.github.com/repos/neo4j/neo4j-dotnet-driver","labels_url":"https://api.github.com/repos/neo4j/neo4j-dotnet-driver/issues/42/labels{/name}","comments_url":"https://api.github.com/repos/neo4j/neo4j-dotnet-driver/issues/42/comments","events_url":"https://api.github.com/repos/neo4j/neo4j-dotnet-driver/issues/42/events","html_url":"https://github.com/neo4j/neo4j-dotnet-driver/pull/42","id":143801600,"number":42,"title":"Fixing compiler warnings","user":{"login":"IngvarKofoed","id":1925988,"avatar_url":"https://avatars.githubusercontent.com/u/1925988?v=3","gravatar_id":"","url":"https://api.github.com/users/IngvarKofoed","html_url":"https://github.com/IngvarKofoed","followers_url":"https://api.github.com/users/IngvarKofoed/followers","following_url":"https://api.github.com/users/IngvarKofoed/following{/other_user}","gists_url":"https://api.github.com/users/IngvarKofoed/gists{/gist_id}","starred_url":"https://api.github.com/users/IngvarKofoed/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/IngvarKofoed/subscriptions","organizations_url":"https://api.github.com/users/IngvarKofoed/orgs","repos_url":"https://api.github.com/users/IngvarKofoed/repos","events_url":"https://api.github.com/users/IngvarKofoed/events{/privacy}","received_events_url":"https://api.github.com/users/IngvarKofoed/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":7,"created_at":"2016-03-27T11:47:37Z","updated_at":"2016-03-30T15:09:19Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/neo4j/neo4j-dotnet-driver/pulls/42","html_url":"https://github.com/neo4j/neo4j-dotnet-driver/pull/42","diff_url":"https://github.com/neo4j/neo4j-dotnet-driver/pull/42.diff","patch_url":"https://github.com/neo4j/neo4j-dotnet-driver/pull/42.patch"},"body":"I have fixed all compiler warnings in all projects because it leave a better impression when cloning and compiling the code :)\r\n\r\nTake special note to the commit: https://github.com/neo4j/neo4j-dotnet-driver/commit/e968381c75f1248fe7e00787a7cbca52f1a7b3b2\r\n\r\nI think this change is for the better, because the changed classes now behaves like you would expect. Eg: Dispose does not have any side effects other than the object being disposed. And calling most of the methods on a disposed object throws `ObjectDisposedException` because the state of an disposed is undefined."},"comment":{"url":"https://api.github.com/repos/neo4j/neo4j-dotnet-driver/issues/comments/203481412","html_url":"https://github.com/neo4j/neo4j-dotnet-driver/pull/42#issuecomment-203481412","issue_url":"https://api.github.com/repos/neo4j/neo4j-dotnet-driver/issues/42","id":203481412,"user":{"login":"jakewins","id":182752,"avatar_url":"https://avatars.githubusercontent.com/u/182752?v=3","gravatar_id":"","url":"https://api.github.com/users/jakewins","html_url":"https://github.com/jakewins","followers_url":"https://api.github.com/users/jakewins/followers","following_url":"https://api.github.com/users/jakewins/following{/other_user}","gists_url":"https://api.github.com/users/jakewins/gists{/gist_id}","starred_url":"https://api.github.com/users/jakewins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jakewins/subscriptions","organizations_url":"https://api.github.com/users/jakewins/orgs","repos_url":"https://api.github.com/users/jakewins/repos","events_url":"https://api.github.com/users/jakewins/events{/privacy}","received_events_url":"https://api.github.com/users/jakewins/received_events","type":"User","site_admin":false},"created_at":"2016-03-30T15:09:19Z","updated_at":"2016-03-30T15:09:19Z","body":"@IngvarKofoed do you have a reference for Take and friends being side-effect free? The docs just say `Take` \"Returns a specified number of contiguous elements from the start of a sequence.\".\r\n\r\nAs it stands, IEnumerable seems to be the standard for representing blocking stream APIs (as highlighted on the [Rx.NET intro page](https://github.com/Reactive-Extensions/Rx.NET), for instance) - meaning there's good precedence for using Enumerable to represent a blocking stream API as we are doing here. We can't make the API immutable, because the result streams can be infinite or, if finite, in the hundreds of gigabytes range, implicitly making copies of the stream is not an option :("}}