Skip to main content

Import order detection

Project description

A script to detect that the import order matches Mozilla WebDev Python guidelines. Usage:

baked.py [filename] [filename..]

Filename can be a glob. Or multiple filenames. For example:

baked.py apps/*.py mkt/*.py

Loads a confg file as JSON. It will look in the following places for the file:

  • the current directory for .baked

  • the users profile directory for .baked

For an example see:

https://gist.github.com/andymckay/5507339

The config file contains:

  • order: the list of orders of import blocks. This allows you to group your imports into categories.

  • fallback: if a category is not found for lib, what should it fall back to, for most this will be local.

  • from_order: a dictionary of sections with a boolean value for each section. If the value is false, then baked will not care that an import came before from. Default is true for each category.

  • modules: a dictionary of categories and a list of modules. This allows baked to put each module in the category.

If you’d like to exclude an import from baked add the comment #NOQA.

Guidelines:

http://mozweb.readthedocs.org/en/latest/coding.html#import-statements

With one exception, we ignore that imports should be ordered CONSTANT, Class, var. Just sort by alpha, case insensitive. That’s easier for everyone to parse.

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

baked-0.1.2.tar.gz (3.0 kB view details)

Uploaded Source

File details

Details for the file baked-0.1.2.tar.gz.

File metadata

  • Download URL: baked-0.1.2.tar.gz
  • Upload date:
  • Size: 3.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for baked-0.1.2.tar.gz
Algorithm Hash digest
SHA256 3eb1919ac6cab44a2c37d40e774cb4bc10cc99de5741eeffa59ee412375af0cb
MD5 4c2cb22289b538728bfbd9d911d22177
BLAKE2b-256 acb6d1b7c8b27c5af5674993e193729cd73bfde57713f72ffcc513ff2de26958

See more details on using hashes here.

Supported by

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