[issue24051] Argument Clinic no longer works with single optional argument

2015-05-03 Thread Larry Hastings

Larry Hastings added the comment:

Closing as wontfix.  This is not a supported use of optional groups.

--
resolution:  -> wont fix
status: languishing -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24051] Argument Clinic no longer works with single optional argument

2015-05-03 Thread Larry Hastings

Larry Hastings added the comment:

If the argument currently uses a default value of -1, then I see no problem 
with converting it to Argument Clinic using a default value of -1.  If you 
claim it's a "hack" then you should discuss that with the author of 
1ab9978123be.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24051] Argument Clinic no longer works with single optional argument

2015-05-03 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

Then it would be better to not convert wantobjects() to Argument Clinic. Using 
-1 as a value for not passed argument is a hack (added in 1ab9978123be) and I 
don't want to propagate it to the signature.

But I afraid that there are other functions that suffer from this bug (may be 
in the curses module).

--
status: open -> languishing

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24051] Argument Clinic no longer works with single optional argument

2015-05-03 Thread Larry Hastings

Larry Hastings added the comment:

Sorry, I forgot to finish the first bullet point.  It should have read:

  * functions that have groups of parameters that are optional only as a group 
(e.g. curses.window.getch)

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24051] Argument Clinic no longer works with single optional argument

2015-05-03 Thread Larry Hastings

Larry Hastings added the comment:

Optional groups were designed to support two specific legacy use cases:
  * functions that have groups of parameters that are 
  * functions with optional parameters to the left of required parameters

They are not intended to be used in cases like this.  I really, really wish you 
would stop using them except for these specific legacy cases.

Furthermore, the argument parsing for tkinter.tkapp.wantobjects has a very 
clear translation into Argument Clinic:

value: int = -1
/


Optional groups should not be used for single-argument functions.  I have no 
interest in fixing this bug.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24051] Argument Clinic no longer works with single optional argument

2015-04-24 Thread Serhiy Storchaka

New submission from Serhiy Storchaka:

Argument Clinic no longer works single optional argument. For example see 
_tkinter.tkapp.wantobjects in the patch in issue20168.

/*[clinic input]
_tkinter.tkapp.wantobjects

[
value: int
]
/

[clinic start generated code]*/

It is converted to the methoddef of type METH_O.

#define _TKINTER_TKAPP_WANTOBJECTS_METHODDEF\
{"wantobjects", (PyCFunction)_tkinter_tkapp_wantobjects, METH_O, 
_tkinter_tkapp_wantobjects__doc__},

static PyObject *
_tkinter_tkapp_wantobjects(PyObject *self, PyObject *arg)
{
PyObject *return_value = NULL;
int group_right_1 = 0;
int value = 0;

if (!PyArg_Parse(arg, "i:wantobjects", &value))
goto exit;
return_value = _tkinter_tkapp_wantobjects_impl(self, group_right_1, value);

exit:
return return_value;
}

As result wantobjects() can't be called without an argument.

--
components: Argument Clinic
messages: 241943
nosy: larry, serhiy.storchaka
priority: normal
severity: normal
stage: needs patch
status: open
title: Argument Clinic no longer works with single optional argument
type: behavior
versions: Python 3.5

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com