On Tue, Jun 4, 2019 at 8:45 AM Dana Walker <dawal...@redhat.com> wrote:
> I think it's important to note that Django voted to adopt it once it is > out of beta and stable, which is not yet the case. > This is true although it seems that they are close to being stable. Although they were supposed to go stable right after PyCon: https://github.com/python/black/issues/517 > > I was surprised they went for it instead of autopep8 or other options > given the reason the pulp_python team closed the PR for black was that it > was not pep8 compliant. Maybe black has since improved in that area, but > it's another downside to keep in mind and discuss/look into. > Black's documentation says that it's "a strict subset of PEP 8". The conflict that arose in pulp_python is due to how black and flake8 handle spaces around colons when one argument is omitted. It seems that there is a bug in flake8 and there is an open issue: https://github.com/python/black#slices https://github.com/PyCQA/pycodestyle/issues/373 > > Given that there would still be the need for checking flake8 and pep8 in > addition and it only adds yet another requirement and does not eliminate > the need for other tools, I'm slightly opposed, but certainly open to any > auto formatter if folks feel the consistency and lack of worry on context > switching is worth it. > We could probably remove some of these tools/checks. It doesn't do certain things like docstrings but it looks like we can run parts of flake8 like pydocstyle without flake8. I think this is worth exploring more if we're interested in black. > > --Dana > > Dana Walker > > She / Her / Hers > > Software Engineer, Pulp Project > > Red Hat <https://www.redhat.com> > > dawal...@redhat.com > <https://www.redhat.com> > > > > On Tue, Jun 4, 2019 at 8:27 AM David Davis <davidda...@redhat.com> wrote: > >> I wanted to get feedback from the Pulp community on using black[0] to >> auto-format our Pulp 3 code. I have some mixed feelings about it as I see >> some potential benefits of using it but also some downsides as well. >> >> For potential upsides, I think it would be nice if all our projects in >> Pulp conformed to the same style. It would make switching between projects >> much easier. I've worked on other projects where each repository had its >> own code style and it added a mental tax switching from one project to >> another. Granted, this was in Ruby whose design incorporates the TMTOWTDI >> philosophy[1] while Python's design is based around the principle "there >> should be one way to do it"[2]. >> >> Moreover, using black would effectively take style comments/noise out of >> PR reviews and we could just focus on logic. It integrates with a lot of >> IDEs[3] and you can also set up a git pre-commit hook[4] so it would also I >> think free developers from having to worry about formatting their code >> while developing. >> >> The main downside to black I see is that not everyone is going to love >> it. It's highly opinionated and even personally, I don't like all the >> stylistic decisions they've made. I guess it's a question if we can all >> live with it or not. I feel much more confident in it since other projects >> like django[5] have adopted it as well as Pulp QE. >> >> There's a PR open currently against pulp_rpm[6] and one that was closed >> against pulp_python[7]. I think if enough people are interested in using >> black, we would update pulpcore, the plugin template, and possibly >> pulp_file to use black. We could also recommend it to plugins but of course >> we wouldn't/couldn't enforce its use. >> >> [0] https://github.com/python/black >> [1] https://en.wikipedia.org/wiki/There%27s_more_than_one_way_to_do_it >> [2] https://www.python.org/dev/peps/pep-0020/#id3 >> [3] https://github.com/python/black#editor-integration >> [4] https://github.com/python/black#version-control-integration >> [5] https://github.com/django/deps/blob/master/accepted/0008-black.rst >> [6] https://github.com/pulp/pulp_rpm/pull/1355 >> [7] https://github.com/pulp/pulp_python/pull/177 >> >> David >> _______________________________________________ >> Pulp-dev mailing list >> Pulp-dev@redhat.com >> https://www.redhat.com/mailman/listinfo/pulp-dev >> >
_______________________________________________ Pulp-dev mailing list Pulp-dev@redhat.com https://www.redhat.com/mailman/listinfo/pulp-dev