Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rename async to async_mode for python 3.7 compatibility #120

Closed
wants to merge 5 commits into from

Conversation

michael-k
Copy link
Contributor

@michael-k michael-k commented Apr 11, 2018

This PR should not break backwards compatibility for anyone using pylama as a command line tool. It is however breaking for anyone importing from pylama.async or relying on the existence of options.async.

Fixes #89

This PR is based on PR #112 by @maxnordlund and includes his commits.

maxnordlund and others added 4 commits January 11, 2018 17:27
You can't rely on tox alone to test the various versions of python
because they might not be installed. Instead specify a build matrix by
hand. This also allows for a cleaner after_script for coveralls.
This correctly parses options of the form "E302,W405", which before this
was split into individual characters. This resulted in all errors and/or
being considered when ignoring/selecting.

Since specifying just "E" disables all errors, having a list of
characters meant that it always encountered an individual "E" and thus
disabled all errors.
Python 3.7 will be released in about 2 months.[1] It also introduces
`async` as a reserved keyword which is currently used by pylama as a
module, variable, and option name.

This also removes python 3.3 from `.travis.yml`.  Python 3.3 reached
its end of life at 2017-09-29.[2] Without `py33` specified in
`tox.ini` the tests fail anyway.

[1] https://www.python.org/dev/peps/pep-0537/#schedule
[2] https://www.python.org/dev/peps/pep-0398/#x-end-of-life
Fixes W606 'async' and 'await' are reserved keywords starting with Python 3.7

This continues to accept `--async` as an argument and `async = 1` in
config files.  Therefore this commit should not be breaking.
@coveralls
Copy link

coveralls commented Apr 11, 2018

Coverage Status

Coverage increased (+0.09%) to 77.47% when pulling b7b6f9f on michael-k:py37-async into c07a906 on klen:develop.

@michael-k
Copy link
Contributor Author

@klen Can you please merge and release this? Python 3.7 will be released at the end of this month, see https://www.python.org/dev/peps/pep-0537/#schedule.

@michael-k
Copy link
Contributor Author

michael-k commented Jul 4, 2018

ping @klen
Python 3.7 was released a week ago and I would really appreciate it, if you could release a 3.7-compatible version. :)

@Deimos
Copy link
Contributor

Deimos commented Jul 4, 2018

Unfortunately pylama seems to be effectively unmaintained now. From what I've seen, issues/PRs/pings on this repo and some of the plugins haven't been getting any responses in almost a year.

Python 3.7 incompatibility will probably be the nudge I needed to either fork and fix up a few things myself, or to switch to something else (possibly just running the checkers separately).

@devnore
Copy link

devnore commented Jul 18, 2018

ping @klen !

@romanosipenko
Copy link

ping @klen

@rsdubtso
Copy link

rsdubtso commented Aug 4, 2018

@michael-k : python-mode uses this fork: https://github.com/fmv1992/pylama. Can you please publish your pull request there as well?

@fmv1992
Copy link
Contributor

fmv1992 commented Aug 7, 2018

AFAIK Klen does not maintain this project. python-mode uses my own branch because I can accept/review PRs in a timely way.

If there are other more commited devs in this project we can change python-mode's pylama to it.

@cscutcher
Copy link

Just wondering if anyone is considering alternatives? https://github.com/PyCQA/prospector seems a bit more lively.

@susam
Copy link

susam commented Aug 16, 2018

I have pulled the changes in this pull request into Pylava. Pylava is intended to be a community maintained fork of Pylama. It works with Python 3.7.

Enter the following command to install Pylava:

pip install pylava

With Python 3, you may need to enter the following command instead:

pip3 install pylava

After that you need to use pylava instead of pylama, for example, by updating your pylama commands to pylava commands.

Thanks to @michael-k for this pull request.

@michael-k
Copy link
Contributor Author

See #129

@michael-k michael-k closed this Oct 2, 2018
@michael-k michael-k deleted the py37-async branch October 2, 2018 16:16
@klen
Copy link
Owner

klen commented Oct 3, 2018

@michael-k Thank you for the work!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet