Larry Hastings
2623c8c23c
Issue #20530 : Argument Clinic's signature format has been revised again.
...
The new syntax is highly human readable while still preventing false
positives. The syntax also extends Python syntax to denote "self" and
positional-only parameters, allowing inspect.Signature objects to be
totally accurate for all supported builtins in Python 3.4.
2014-02-08 22:15:29 -08:00
Larry Hastings
7726ac9163
#Issue 20456: Several improvements and bugfixes for Argument Clinic,
...
including correctly generating code for Clinic blocks inside C
preprocessor conditional blocks.
2014-01-31 22:03:12 -08:00
Larry Hastings
581ee3618c
Issue #20326 : Argument Clinic now uses a simple, unique signature to
...
annotate text signatures in docstrings, resulting in fewer false
positives. "self" parameters are also explicitly marked, allowing
inspect.Signature() to authoritatively detect (and skip) said parameters.
Issue #20326 : Argument Clinic now generates separate checksums for the
input and output sections of the block, allowing external tools to verify
that the input has not changed (and thus the output is not out-of-date).
2014-01-28 05:00:08 -08:00
Larry Hastings
f0537e8d1c
Issue #20390 : Final fix, for generating NoPositional/NoKeyword for __init__ calls.
2014-01-25 22:01:12 -08:00
Larry Hastings
f256c22f34
Fix for catestrophic errors in previous checkin (Argument Clinic rollup patch).
2014-01-25 21:30:37 -08:00
Larry Hastings
c20472640c
Issue #20390 : Small fixes and improvements for Argument Clinic.
2014-01-25 20:43:29 -08:00
Zachary Ware
9d7849f454
Issue #20376 : Argument Clinic now escapes backslashes in docstrings.
2014-01-25 03:26:20 -06:00
Zachary Ware
021bb87845
Issue #20381 : Fix sanity checking on default arguments when c_default is
...
also specified.
2014-01-24 22:52:30 -06:00
Larry Hastings
5c66189e88
Issue #20189 : Four additional builtin types (PyTypeObject,
...
PyMethodDescr_Type, _PyMethodWrapper_Type, and PyWrapperDescr_Type)
have been modified to provide introspection information for builtins.
Also: many additional Lib, test suite, and Argument Clinic fixes.
2014-01-24 06:17:25 -08:00
Larry Hastings
462582651c
Two minor Argument Clinic bugfixes: use the name of the class in the
...
docstring for __new__ and __init__, and always use "goto exit" instead of
returning "NULL" for failure to parse (as _new__ and __init__ return ints).
2014-01-22 03:05:49 -08:00
Zachary Ware
071baa63c4
Argument Clinic: make 'destination' directive work.
2014-01-21 23:07:12 -06:00
Larry Hastings
665757847e
Improve fix for issue #20300 .
2014-01-19 03:01:23 -08:00
Larry Hastings
c4fe092bc3
Issue #20300 : Fix exception when setting conversion class member "default"
...
to None.
2014-01-19 02:27:34 -08:00
Larry Hastings
b7ccb20423
Issue #20294 : Argument Clinic now supports argument parsing for __new__ and
...
__init__ functions.
2014-01-18 23:50:21 -08:00
Larry Hastings
b470575e24
Issue #20299 : Argument Clinic custom converters may now change the default
...
value of c_default and py_default with a class member.
2014-01-18 21:54:15 -08:00
Serhiy Storchaka
49776ef9e7
Use correct C type in byte_converter.
2014-01-19 00:38:36 +02:00
Larry Hastings
4903e00141
Issue #20292 : Small bug fix for Argument Clinic supporting format units
...
for strings with explicit encodings.
2014-01-18 00:26:16 -08:00
Larry Hastings
bebf73511a
Issue #20287 : Argument Clinic's output is now configurable, allowing
...
delaying its output or even redirecting it to a separate file.
2014-01-17 17:47:17 -08:00
Larry Hastings
1abd708681
Issue #20226 : Added tests for new features and regressions.
2014-01-16 14:15:03 -08:00
Larry Hastings
2a727916c5
Issue #20226 : Major improvements to Argument Clinic.
...
* You may now specify an expression as the default value for a
parameter! Example: "sys.maxsize - 1". This support is
intentionally quite limited; you may only use values that
can be represented as static C values.
* Removed "doc_default", simplified support for "c_default"
and "py_default". (I'm not sure we still even need
"py_default", but I'm leaving it in for now in case a
use presents itself.)
* Parameter lines support a trailing '\\' as a line
continuation character, allowing you to break up long lines.
* The argument parsing code generated when supporting optional
groups now uses PyTuple_GET_SIZE instead of PyTuple_GetSize,
leading to a 850% speedup in parsing. (Just kidding, this
is an unmeasurable difference.)
* A bugfix for the recent regression where the generated
prototype from pydoc for builtins would be littered with
unreadable "=<object ...>"" default values for parameters
that had no default value.
* Converted some asserts into proper failure messages.
* Many doc improvements and fixes.
2014-01-16 11:32:01 -08:00
Serhiy Storchaka
8f8ec92de8
Issue #19936 : Added executable bits or shebang lines to Python scripts which
...
requires them. Disable executable bits and shebang lines in test and
benchmark files in order to prevent using a random system python, and in
source files of modules which don't provide command line interface. Fixed
shebang lines in the unittestgui and checkpip scripts.
2014-01-16 17:33:23 +02:00
Georg Brandl
aabebde358
Closes #20235 : Report file and line on unexpected exceptions in Argument Clinic.
2014-01-16 06:53:54 +01:00
Larry Hastings
4a714d48ad
Issue #20268 : Argument Clinic now supports cloning the parameters
...
and return converter from existing functions.
2014-01-14 22:22:41 -08:00
Antoine Pitrou
d7fb7919e3
Replace assert with a proper error
2014-01-14 21:02:43 +01:00
Antoine Pitrou
cc1d31e09e
improve an error message in clinic
2014-01-14 20:52:01 +01:00
Larry Hastings
8666e65206
Issue #20228 : Argument Clinic now has special support for class special
...
methods.
2014-01-12 14:12:59 -08:00
Larry Hastings
4a55fc5a9d
Issue #20214 : Fixed a number of small issues and documentation errors in
...
Argument Clinic (see issue for details).
2014-01-12 11:09:57 -08:00
Larry Hastings
583baa8fef
Issue #20196 : Fixed a bug where Argument Clinic did not generate correct
...
parsing code for functions with positional-only parameters where all arguments
are optional.
2014-01-12 08:49:30 -08:00
Larry Hastings
61272b77b0
Issue #19273 : The marker comments Argument Clinic uses have been changed
...
to improve readability.
2014-01-07 12:41:53 -08:00
Larry Hastings
9026113fd4
Issue #20157 : When Argument Clinic renames a parameter because its name
...
collides with a C keyword, it no longer exposes that rename to PyArg_Parse.
2014-01-07 12:21:08 -08:00
Larry Hastings
77561cccb2
Issue #20141 : Improved Argument Clinic's support for the PyArg_Parse "O!"
...
format unit.
2014-01-07 12:13:13 -08:00
Larry Hastings
16c5191ab3
Issue #20144 : Argument Clinic now supports simple constants as parameter
...
default values. inspect.Signature correspondingly supports them in
__text_signature__ fields for builtins.
2014-01-07 11:53:01 -08:00
Larry Hastings
eb31e9d6ed
Issue #20143 : The line numbers reported in Argument Clinic errors are
...
now more accurate.
2014-01-06 11:10:08 -08:00
Larry Hastings
3f144c2ad7
Issue #20142 : Py_buffer variables generated by Argument Clinic are now
...
initialized with a default value.
2014-01-06 10:34:00 -08:00
Larry Hastings
6d2ea21337
Argument Clinic: fixed test suite, improved howto.
2014-01-05 02:50:45 -08:00
Larry Hastings
78cf85c669
Issue #19659 : Added documentation for Argument Clinic.
2014-01-04 12:44:57 -08:00
Larry Hastings
3cceb38486
Issue #19976 : Argument Clinic METH_NOARGS functions now always
...
take two parameters.
2014-01-04 11:09:09 -08:00
Larry Hastings
dc6aaec9e3
Clinic: fix "self converters" with METH_NOARGS functions.
2013-11-24 04:41:57 -08:00
Larry Hastings
2f9a9aaf21
Clinic: Add warning for untested (and unused in CPython!) format units.
2013-11-24 04:23:35 -08:00
Larry Hastings
44e2eaab54
Issue #19674 : inspect.signature() now produces a correct signature
...
for some builtins.
2013-11-23 15:37:55 -08:00
Larry Hastings
dcd340eeeb
Issue #19358 : "make clinic" now runs the Argument Clinic preprocessor
...
over all CPython source files.
2013-11-23 14:58:45 -08:00
Larry Hastings
ebdcb50b8a
Issue #19730 : Argument Clinic now supports all the existing PyArg
...
"format units" as legacy converters, as well as two new features:
"self converters" and the "version" directive.
2013-11-23 14:54:00 -08:00
Larry Hastings
abc716b058
Issue #19474 : Argument Clinic now always specifies a default value for
...
variables in option groups, to prevent "uninitialized value" warnings.
2013-11-20 09:13:52 -08:00
Larry Hastings
ed4a1c5703
Argument Clinic: rename "self" to "module" for module-level functions.
2013-11-18 09:32:13 -08:00
Larry Hastings
dfcd46769b
Issue #19390 : Argument Clinic no longer accepts malformed Python and C ids.
2013-10-27 02:49:39 -07:00
Larry Hastings
ef3b1fbb2b
Two small, quick bugfixes for Argument Clinic.
2013-10-22 23:26:23 -07:00
Larry Hastings
3182680210
Issue #16612 : Add "Argument Clinic", a compile-time preprocessor
...
for C files to generate argument parsing code. (See PEP 436.)
2013-10-19 00:09:25 -07:00