{"action":"closed","issue":{"url":"https://api.github.com/repos/claird/PyPDF4/issues/10","repository_url":"https://api.github.com/repos/claird/PyPDF4","labels_url":"https://api.github.com/repos/claird/PyPDF4/issues/10/labels{/name}","comments_url":"https://api.github.com/repos/claird/PyPDF4/issues/10/comments","events_url":"https://api.github.com/repos/claird/PyPDF4/issues/10/events","html_url":"https://github.com/claird/PyPDF4/issues/10","id":353779605,"node_id":"MDU6SXNzdWUzNTM3Nzk2MDU=","number":10,"title":"Rename encode/decode classes in filters.py","user":{"login":"newnone","id":5630708,"node_id":"MDQ6VXNlcjU2MzA3MDg=","avatar_url":"https://avatars0.githubusercontent.com/u/5630708?v=4","gravatar_id":"","url":"https://api.github.com/users/newnone","html_url":"https://github.com/newnone","followers_url":"https://api.github.com/users/newnone/followers","following_url":"https://api.github.com/users/newnone/following{/other_user}","gists_url":"https://api.github.com/users/newnone/gists{/gist_id}","starred_url":"https://api.github.com/users/newnone/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/newnone/subscriptions","organizations_url":"https://api.github.com/users/newnone/orgs","repos_url":"https://api.github.com/users/newnone/repos","events_url":"https://api.github.com/users/newnone/events{/privacy}","received_events_url":"https://api.github.com/users/newnone/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2018-08-24T13:15:36Z","updated_at":"2018-10-02T15:27:44Z","closed_at":"2018-10-02T15:27:44Z","author_association":"COLLABORATOR","body":"Many, if not all, of the classes in `PyPDF4/filters.py` have an uncorresponding nomenclature (and a very ugly one indeed), for the operations they perform. Those classes I refer to are ones as `FlateDecode`, `ASCIIHexDecode`, `LZWDecode` etc., but other than simply decoding data, they also encode it in the format they represent. (Some of them have just started doing it in PR #9, where I have included `encode()` methods for the easing out of unit testing.)\r\n\r\nI propose to refactor these classes as `*Codec`; for example `FlateCodec`, `ASCIIHexCodec` and so on, for the above-mentioned reason that they cover both operations, encoding and decoding, most of the time.\r\n\r\nI have done a preliminary usage test and they are referenced in only a limited fraction of the codebase (most of the time one or two references, possibly in the same source file). Furthermore, the [official PyPDF2 documentation](https://pythonhosted.org/PyPDF2/index.html) has never documented them to the public and I'm left thinking that the external code that depends on them is very limited.\r\n\r\nThis is a straightforward modification but requires thinking a bit about it in group. But as of now, the names of these classes are almost totally unrepresentative of what they do."}}
{"actor":{"display_login":"newnone"}}