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

stubgen: don't append star arg when args list already has varargs appended #4518

Merged
merged 2 commits into from Jan 29, 2018

Conversation

Projects
None yet
2 participants
@hoefling
Contributor

hoefling commented Jan 28, 2018

Hi, this is a proposal to fix the issue when stubgen encounters function signatures with varargs and keyword args:

def f(x, *args, y=1)

becomes

def f(x, *args, *, y=1)

in the stub file. I also added a separate test that covers possible valid cases of having varargs mixed with keyword args in a signature.

Fixes #3985

@hoefling

This comment has been minimized.

Contributor

hoefling commented Jan 28, 2018

You can invoke the new test with

pytest -v -n0 mypy/test/teststubgen.py::StubgenPythonSuite::testVarArgsWithKwVarArgs

@gvanrossum gvanrossum merged commit 73e58da into python:master Jan 29, 2018

2 checks passed

continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@gvanrossum

This comment has been minimized.

Member

gvanrossum commented Jan 29, 2018

Thanks!

@hoefling hoefling deleted the hoefling:issue-3985 branch Jan 30, 2018

carljm added a commit to carljm/mypy that referenced this pull request Feb 14, 2018

Merge branch 'master' into import-cycle
* master: (32 commits)
  Fix some fine-grained cache/fswatcher problems (python#4560)
  Sync typeshed (python#4559)
  Add _cached suffix to test cases in fine-grained tests with cache (python#4558)
  Add back support for simplified fine-grained logging (python#4557)
  Type checking of class decorators (python#4544)
  Sync typeshed (python#4556)
  When loading from a fine-grained cache, use the real path, not the cached (python#4555)
  Switch all of the fine-grained debug logging to use manager.log (python#4550)
  Caching for fine-grained incremental mode (python#4483)
  Fix --warn-return-any for NotImplemented (python#4545)
  Remove myunit (python#4369)
  Store line numbers of imports in the cache metadata (python#4533)
  README.md: Fix a typo (python#4529)
  Enable generation and caching of fine-grained dependencies from normal runs (python#4526)
  Move argument parsing for the fine-grained flag into the main arg parsing code (python#4524)
  Don't warn about unrecognized options starting with 'x_' (python#4522)
  stubgen: don't append star arg when args list already has varargs appended (python#4518)
  Handle TypedDict in diff and deps (python#4510)
  Fix Options.__repr__ to not infinite recurse (python#4514)
  Fix some fine-grained incremental bugs with newly imported files (python#4502)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment