{"action":"created","issue":{"url":"https://api.github.com/repos/john-kurkowski/tldextract/issues/81","repository_url":"https://api.github.com/repos/john-kurkowski/tldextract","labels_url":"https://api.github.com/repos/john-kurkowski/tldextract/issues/81/labels{/name}","comments_url":"https://api.github.com/repos/john-kurkowski/tldextract/issues/81/comments","events_url":"https://api.github.com/repos/john-kurkowski/tldextract/issues/81/events","html_url":"https://github.com/john-kurkowski/tldextract/issues/81","id":120039993,"number":81,"title":"Use JSON instead of pickle for tld data","user":{"login":"andresriancho","id":865200,"avatar_url":"https://avatars.githubusercontent.com/u/865200?v=3","gravatar_id":"","url":"https://api.github.com/users/andresriancho","html_url":"https://github.com/andresriancho","followers_url":"https://api.github.com/users/andresriancho/followers","following_url":"https://api.github.com/users/andresriancho/following{/other_user}","gists_url":"https://api.github.com/users/andresriancho/gists{/gist_id}","starred_url":"https://api.github.com/users/andresriancho/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andresriancho/subscriptions","organizations_url":"https://api.github.com/users/andresriancho/orgs","repos_url":"https://api.github.com/users/andresriancho/repos","events_url":"https://api.github.com/users/andresriancho/events{/privacy}","received_events_url":"https://api.github.com/users/andresriancho/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/john-kurkowski/tldextract/labels/security","name":"security","color":"009800"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2015-12-02T21:30:27Z","updated_at":"2016-03-07T18:58:06Z","closed_at":null,"body":".tld_set_snapshot and .tld_set use pickle to store the TLD information. While this is perfectly fine in most cases it brings the following issues:\r\n * Binary data stored in your git repository is a bad practice\r\n * If this library gets packaged for ubuntu/debian, the maintainer will complain. I just started using tldextract in the [w3af project](https://github.com/andresriancho/w3af/commit/72c09c57ed588caf9bc1b5c9de686b85ebe7c072) which is part of ubuntu/debian. When the package maintainer packages the next version he'll most likely dislike the binary blob\r\n * Pickles are \"executables\". A specially crafted pickle can trigger an arbitrary remote command execution when unpickled. While I did review the library for bugs and backdoors before including it in w3af, I did not read the whole pickle; which is bad for w3af user's security."},"comment":{"url":"https://api.github.com/repos/john-kurkowski/tldextract/issues/comments/193395741","html_url":"https://github.com/john-kurkowski/tldextract/issues/81#issuecomment-193395741","issue_url":"https://api.github.com/repos/john-kurkowski/tldextract/issues/81","id":193395741,"user":{"login":"john-kurkowski","id":299487,"avatar_url":"https://avatars.githubusercontent.com/u/299487?v=3","gravatar_id":"","url":"https://api.github.com/users/john-kurkowski","html_url":"https://github.com/john-kurkowski","followers_url":"https://api.github.com/users/john-kurkowski/followers","following_url":"https://api.github.com/users/john-kurkowski/following{/other_user}","gists_url":"https://api.github.com/users/john-kurkowski/gists{/gist_id}","starred_url":"https://api.github.com/users/john-kurkowski/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/john-kurkowski/subscriptions","organizations_url":"https://api.github.com/users/john-kurkowski/orgs","repos_url":"https://api.github.com/users/john-kurkowski/repos","events_url":"https://api.github.com/users/john-kurkowski/events{/privacy}","received_events_url":"https://api.github.com/users/john-kurkowski/received_events","type":"User","site_admin":false},"created_at":"2016-03-07T18:58:06Z","updated_at":"2016-03-07T18:58:06Z","body":"I would start it with JSON for to be  more forward thinking, [as mentioned](https://github.com/john-kurkowski/tldextract/issues/81#issuecomment-193245567). \r\n\r\nAs a concrete use case, metadata about each suffix will be required for #66, i.e. whether it's a private suffix or not. Teasing this from JSON is easy. Teasing from plain text is less fun."}}