{"action":"closed","issue":{"url":"https://api.github.com/repos/ExpHP/kmc-dichalcogen/issues/2","repository_url":"https://api.github.com/repos/ExpHP/kmc-dichalcogen","labels_url":"https://api.github.com/repos/ExpHP/kmc-dichalcogen/issues/2/labels{/name}","comments_url":"https://api.github.com/repos/ExpHP/kmc-dichalcogen/issues/2/comments","events_url":"https://api.github.com/repos/ExpHP/kmc-dichalcogen/issues/2/events","html_url":"https://github.com/ExpHP/kmc-dichalcogen/issues/2","id":168337085,"number":2,"title":"State doesn't need to expose (or even have) ids","user":{"login":"ExpHP","id":1411280,"avatar_url":"https://avatars.githubusercontent.com/u/1411280?v=3","gravatar_id":"","url":"https://api.github.com/users/ExpHP","html_url":"https://github.com/ExpHP","followers_url":"https://api.github.com/users/ExpHP/followers","following_url":"https://api.github.com/users/ExpHP/following{/other_user}","gists_url":"https://api.github.com/users/ExpHP/gists{/gist_id}","starred_url":"https://api.github.com/users/ExpHP/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ExpHP/subscriptions","organizations_url":"https://api.github.com/users/ExpHP/orgs","repos_url":"https://api.github.com/users/ExpHP/repos","events_url":"https://api.github.com/users/ExpHP/events{/privacy}","received_events_url":"https://api.github.com/users/ExpHP/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-07-29T14:28:32Z","updated_at":"2016-08-01T19:05:04Z","closed_at":"2016-08-01T19:05:04Z","body":"Id numbers for vacancies were introduced back when there was the notion that each vacancy had an identity which was preserved when they move around the board.  Not only is this an inconsequential detail, but it is also no longer even true.\r\n\r\nLately, I've been trying to avoid using them entirely in code outside of `State`, to get an idea of how a strictly-node-based API feels. (it's not bad!)\r\n\r\nThey also serve little purpose *inside* State either; it is just because **vacancies/trefoils are dicts, which are not hashable**.  By using namedtuples instead we can just create sets of the actual objects, and place the objects directly in `__owner`  (**unresolved question:** `clone` uses `pickle`. If I do this, will each reference to the same vacancy/trefoil be individually pickled?)\r\n\r\nFrom [FIXME here](https://github.com/ExpHP/kmc-dichalcogen/blob/a69426d57958a45cfbf630c00aa0a7d44707a751/demo1/state.py#L100)."}}
{"actor":{"display_login":"ExpHP"}}