Skip to main content

A hack on top of 2to3 for modernizing code for hybrid codebases.

Project description

Python           _              _
   _ __  ___  __| |___ _ _ _ _ (_)______
  | '  \/ _ \/ _` / -_) '_| ' \| |_ / -_)
  |_|_|_\___/\__,_\___|_| |_||_|_/__\___|

This library is a very thin wrapper around lib2to3 to utilize it to make Python 2 code more modern with the intention of eventually porting it over to Python 3.

It does not guarantee, but it attempts to spit out a Python 2/3 compatible codebase. The code that it generates has a runtime dependency on six, unless the --no-six option is used.

See the LICENSE file for the license of python-modernize. Using this tool does not affect licensing of the modernized code.

Unicode Literal Control:

  • By default modernize does not change Unicode literals at all, which means that you can take advantage of PEP 414. This is the simplest option if you only want to support Python 3.3 and above along with Python 2.

  • Alternatively, there is the --six-unicode flag which will wrap Unicode literals with the six helper function six.u(). This is useful if you want to support Python 3.1 and Python 3.2 without bigger changes.

  • The last alternative is the --future-unicode flag which imports the unicode_literals from the __future__ module. This requires Python 2.6 and later, and will require that you mark bytestrings with b'' and native strings in str('') or something similar that survives the transformation.

https://travis-ci.org/python-modernize/python-modernize.svg?branch=master

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

modernize-0.3.tar.gz (11.3 kB view details)

Uploaded Source

File details

Details for the file modernize-0.3.tar.gz.

File metadata

  • Download URL: modernize-0.3.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for modernize-0.3.tar.gz
Algorithm Hash digest
SHA256 c64425be14ffcadeabfb5abbd592d3682b108feb3471603f2e3d352229a2f351
MD5 edc8ccf1410c4410d931d37ac8facb9c
BLAKE2b-256 6f4930d6a5de4e327468656e6867d2788d0e2c161019fefc7e07f7afb7a9d6cb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page