On Mon, Oct 12, 2020 at 10:05 AM Ricky Stewart <rstew...@mozilla.com> wrote:

> Hello everyone,
>
> If you don't write Python code in mozilla-central, you can stop reading
> now.
>
> On October 19, 2020 we will be officially adopting the black Python style
> for all our Python code in mozilla-central.
>
> black (https://black.readthedocs.io/en/stable/) is an opinionated, fast,
> and correct auto-formatter for Python. It is an increasingly popular
> autoformatter which might be considered the de facto standard for Python
> code (like clang-format and jslint are for C++ and JS). It is already used
> by several Mozilla projects, including Release Engineering, Lando, and
> moz-phab.
>
> black makes it easy for us to reliably format all our Python code in a
> consistent way, making the codebase easier to read on the whole and
> allowing us to spend more time in code review discussing substantive issues
> over trivial formatting matters.
>
> This policy change will affect all Python code in-tree, including
> sandboxed Python code used by the build system (.configure, .build, and
> .mozbuild files).
>
> As part of this policy change, we plan on doing a one-time auto-reformat
> on October 19 of all Python code in the entire repository. In addition,
> mach lint (
> https://firefox-source-docs.mozilla.org/code-quality/lint/linters/black.html)
> and reviewbot will be updated to print warnings for Python source files
> that violate the black style. Just like with C/C++ or Rust, we won’t
> backout offending changes but instead will do regular refreshes of the tree.
>
> If there are any questions, please let me know!
>

Is there some way we can see the results of this change before it lands in
the tree? I would like to review the results of formatting for Python files
I care about to make sure nothing gets too messed up by it. For instance,
clang-format did some kind of line wrapping for wide comments that broke a
lot of ASCII diagram comments, and I and others had to spend a fair amount
of time fixing that.

Relatedly, is there some way to disable formatting for specific lines of
code, in case there's something that gets mangled by the formatting and
there's no easy way to fix it?

What does "all Python code in-tree" mean? Does that mean that this is going
to be run on all files that end in .py? I assume that this doesn't apply to
any third party code we have in the tree (either under the third-party
directory, or included in whatever other list I think we have)?

Thanks,
Andrew


> Ricky
> _______________________________________________
> dev-platform mailing list
> dev-platform@lists.mozilla.org
> https://lists.mozilla.org/listinfo/dev-platform
>
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to