This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author ncoghlan
Recipients brett.cannon, larry, ncoghlan, r.david.murray, yselivanov
Date 2014-04-01.05:38:29
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1396330709.94.0.79456526935.issue21117@psf.upfronthosting.co.za>
In-reply-to
Content
I believe Yury already figured out what I meant, but to make it entirely clear, after the change, this example:

   def foo(a, b): pass
   foo_partial = functools.partial(foo, 'spam')
   foo_partial2 = functools.partial(foo, a='spam')

Should lead to the following signature for both "foo_partial" and "foo_partial2":

    (b, *, a='spam')

That accurately indicates that "a" is now effectively a keyword only parameter - the first supplied positional argument will map to "b", and attempting to supply *two* positional arguments will fail.

Correctly handing *args may get a little interesting, but should be feasible.
History
Date User Action Args
2014-04-01 05:38:29ncoghlansetrecipients: + ncoghlan, brett.cannon, larry, r.david.murray, yselivanov
2014-04-01 05:38:29ncoghlansetmessageid: <1396330709.94.0.79456526935.issue21117@psf.upfronthosting.co.za>
2014-04-01 05:38:29ncoghlanlinkissue21117 messages
2014-04-01 05:38:29ncoghlancreate