PyCQA / modernize

Modernizes Python code for eventual Python 3 migration. Built on top of fissix (a fork of lib2to3)
https://modernize.readthedocs.org/
Other
355 stars 51 forks source link

PEP 263 fixer #183

Open jayvdb opened 5 years ago

jayvdb commented 5 years ago

I had a case recently, sorry I cant find it atm, where the code is using unicode literal values, but without an encoding declared for the source file. I was expecting 2to3 or modernizer would add PEP 263 (coding=...) headers to the files, but couldnt find one fixer for it.

It would be quite easy to do for the most common case of unicode, even without any attempt at detecting the real encoding. A default disabled fixer maybe?

takluyver commented 5 years ago

I think both 2to3 and modernize generally assume that the input is valid Python 2 source code - which means a file with any non-ASCII characters should already have an encoding comment. But I've no objection to adding a fixer if you can see how to do it.