You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

320 lines
12 KiB

Merged revisions 82805-82806,83523-83527,83536,83538,83542,83546-83548,83550-83555,83558,83560 via svnmerge from svn+ssh://svn.python.org/python/branches/py3k ........ r82805 | georg.brandl | 2010-07-11 11:42:10 +0200 (So, 11 Jul 2010) | 1 line #7935: cross-reference to ast.literal_eval() from eval() docs. ........ r82806 | georg.brandl | 2010-07-11 12:22:44 +0200 (So, 11 Jul 2010) | 1 line #9223: link to Command class reference, and move Command interface docs nearer to class docs. ........ r83523 | georg.brandl | 2010-08-02 14:06:18 +0200 (Mo, 02 Aug 2010) | 1 line #9209 and #7781: fix two crashes in pstats interactive browser. ........ r83524 | georg.brandl | 2010-08-02 14:20:23 +0200 (Mo, 02 Aug 2010) | 1 line #9428: fix running scripts from profile/cProfile with their own name and the right namespace. Same fix as for trace.py in #1690103. ........ r83525 | georg.brandl | 2010-08-02 14:36:24 +0200 (Mo, 02 Aug 2010) | 1 line Get rid of spurious "threading" entries in trace output. ........ r83526 | georg.brandl | 2010-08-02 14:40:22 +0200 (Mo, 02 Aug 2010) | 1 line Fix softspace relic. ........ r83527 | georg.brandl | 2010-08-02 14:48:46 +0200 (Mo, 02 Aug 2010) | 1 line #3821: beginnings of a trace.py unittest. ........ r83536 | georg.brandl | 2010-08-02 19:49:25 +0200 (Mo, 02 Aug 2010) | 1 line #8578: mention danger of not incref'ing weak referenced object. ........ r83538 | georg.brandl | 2010-08-02 20:10:13 +0200 (Mo, 02 Aug 2010) | 1 line #6928: fix class docs w.r.t. new metaclasses. ........ r83542 | georg.brandl | 2010-08-02 20:56:54 +0200 (Mo, 02 Aug 2010) | 1 line Move test_SimpleHTTPServer into test_httpservers. ........ r83546 | georg.brandl | 2010-08-02 21:16:34 +0200 (Mo, 02 Aug 2010) | 1 line #7973: Fix distutils options spelling. ........ r83547 | georg.brandl | 2010-08-02 21:19:26 +0200 (Mo, 02 Aug 2010) | 1 line #7386: add example that shows that trailing path separators are stripped. ........ r83548 | georg.brandl | 2010-08-02 21:23:34 +0200 (Mo, 02 Aug 2010) | 1 line #8172: how does one use a property? ........ r83550 | georg.brandl | 2010-08-02 21:32:43 +0200 (Mo, 02 Aug 2010) | 1 line #9451: strengthen warning about __*__ special name usage. ........ r83551 | georg.brandl | 2010-08-02 21:35:06 +0200 (Mo, 02 Aug 2010) | 1 line Remove XXX comment that was displayed. ........ r83552 | georg.brandl | 2010-08-02 21:36:36 +0200 (Mo, 02 Aug 2010) | 1 line #9438: clarify that constant names also cannot be assigned as attributes. ........ r83553 | georg.brandl | 2010-08-02 21:39:17 +0200 (Mo, 02 Aug 2010) | 1 line Remove redundant information. ........ r83554 | georg.brandl | 2010-08-02 21:43:05 +0200 (Mo, 02 Aug 2010) | 1 line #7280: note about nasmw.exe. ........ r83555 | georg.brandl | 2010-08-02 21:44:48 +0200 (Mo, 02 Aug 2010) | 1 line #8861: remove unused variable. ........ r83558 | georg.brandl | 2010-08-02 22:05:19 +0200 (Mo, 02 Aug 2010) | 1 line #8648: document UTF-7 codec functions. ........ r83560 | georg.brandl | 2010-08-02 22:16:18 +0200 (Mo, 02 Aug 2010) | 1 line #9087: update json docstrings -- unicode and long do not exist anymore. ........
16 years ago
Merged revisions 82805-82806,83523-83527,83536,83538,83542,83546-83548,83550-83555,83558,83560 via svnmerge from svn+ssh://svn.python.org/python/branches/py3k ........ r82805 | georg.brandl | 2010-07-11 11:42:10 +0200 (So, 11 Jul 2010) | 1 line #7935: cross-reference to ast.literal_eval() from eval() docs. ........ r82806 | georg.brandl | 2010-07-11 12:22:44 +0200 (So, 11 Jul 2010) | 1 line #9223: link to Command class reference, and move Command interface docs nearer to class docs. ........ r83523 | georg.brandl | 2010-08-02 14:06:18 +0200 (Mo, 02 Aug 2010) | 1 line #9209 and #7781: fix two crashes in pstats interactive browser. ........ r83524 | georg.brandl | 2010-08-02 14:20:23 +0200 (Mo, 02 Aug 2010) | 1 line #9428: fix running scripts from profile/cProfile with their own name and the right namespace. Same fix as for trace.py in #1690103. ........ r83525 | georg.brandl | 2010-08-02 14:36:24 +0200 (Mo, 02 Aug 2010) | 1 line Get rid of spurious "threading" entries in trace output. ........ r83526 | georg.brandl | 2010-08-02 14:40:22 +0200 (Mo, 02 Aug 2010) | 1 line Fix softspace relic. ........ r83527 | georg.brandl | 2010-08-02 14:48:46 +0200 (Mo, 02 Aug 2010) | 1 line #3821: beginnings of a trace.py unittest. ........ r83536 | georg.brandl | 2010-08-02 19:49:25 +0200 (Mo, 02 Aug 2010) | 1 line #8578: mention danger of not incref'ing weak referenced object. ........ r83538 | georg.brandl | 2010-08-02 20:10:13 +0200 (Mo, 02 Aug 2010) | 1 line #6928: fix class docs w.r.t. new metaclasses. ........ r83542 | georg.brandl | 2010-08-02 20:56:54 +0200 (Mo, 02 Aug 2010) | 1 line Move test_SimpleHTTPServer into test_httpservers. ........ r83546 | georg.brandl | 2010-08-02 21:16:34 +0200 (Mo, 02 Aug 2010) | 1 line #7973: Fix distutils options spelling. ........ r83547 | georg.brandl | 2010-08-02 21:19:26 +0200 (Mo, 02 Aug 2010) | 1 line #7386: add example that shows that trailing path separators are stripped. ........ r83548 | georg.brandl | 2010-08-02 21:23:34 +0200 (Mo, 02 Aug 2010) | 1 line #8172: how does one use a property? ........ r83550 | georg.brandl | 2010-08-02 21:32:43 +0200 (Mo, 02 Aug 2010) | 1 line #9451: strengthen warning about __*__ special name usage. ........ r83551 | georg.brandl | 2010-08-02 21:35:06 +0200 (Mo, 02 Aug 2010) | 1 line Remove XXX comment that was displayed. ........ r83552 | georg.brandl | 2010-08-02 21:36:36 +0200 (Mo, 02 Aug 2010) | 1 line #9438: clarify that constant names also cannot be assigned as attributes. ........ r83553 | georg.brandl | 2010-08-02 21:39:17 +0200 (Mo, 02 Aug 2010) | 1 line Remove redundant information. ........ r83554 | georg.brandl | 2010-08-02 21:43:05 +0200 (Mo, 02 Aug 2010) | 1 line #7280: note about nasmw.exe. ........ r83555 | georg.brandl | 2010-08-02 21:44:48 +0200 (Mo, 02 Aug 2010) | 1 line #8861: remove unused variable. ........ r83558 | georg.brandl | 2010-08-02 22:05:19 +0200 (Mo, 02 Aug 2010) | 1 line #8648: document UTF-7 codec functions. ........ r83560 | georg.brandl | 2010-08-02 22:16:18 +0200 (Mo, 02 Aug 2010) | 1 line #9087: update json docstrings -- unicode and long do not exist anymore. ........
16 years ago
Merged revisions 85530,85532-85534,85538-85543,85546-85548 via svnmerge from svn+ssh://svn.python.org/python/branches/py3k ........ r85530 | georg.brandl | 2010-10-15 17:32:05 +0200 (Fr, 15 Okt 2010) | 1 line Refrain from using inline suites. ........ r85532 | georg.brandl | 2010-10-15 18:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #7771: reference to documentation of dictview methods and operations. ........ r85533 | georg.brandl | 2010-10-15 18:07:41 +0200 (Fr, 15 Okt 2010) | 1 line #9683: remove broken dead code dealing with nested arguments removed from Py3k, and update the docs and docstrings accordingly. ........ r85534 | georg.brandl | 2010-10-15 18:19:43 +0200 (Fr, 15 Okt 2010) | 1 line #9801: document how list and dict proxies created by Managers behave w.r.t. mutable items. ........ r85538 | georg.brandl | 2010-10-15 18:35:46 +0200 (Fr, 15 Okt 2010) | 1 line #7303: add documentation for useful pkgutil functions and classes. ........ r85539 | georg.brandl | 2010-10-15 18:42:14 +0200 (Fr, 15 Okt 2010) | 1 line Fix issue references. ........ r85540 | georg.brandl | 2010-10-15 18:42:37 +0200 (Fr, 15 Okt 2010) | 1 line #6798: fix wrong docs for the arguments to several trace events. ........ r85541 | georg.brandl | 2010-10-15 18:53:24 +0200 (Fr, 15 Okt 2010) | 1 line #4968: updates to inspect.is* function docs. ........ r85542 | georg.brandl | 2010-10-15 19:01:15 +0200 (Fr, 15 Okt 2010) | 1 line #7790: move table of struct_time members to the actual description of struct_time. ........ r85543 | georg.brandl | 2010-10-15 19:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #4785: document strict argument of JSONDecoder, plus add object_pairs_hook in the docstrings. ........ r85546 | georg.brandl | 2010-10-15 19:58:45 +0200 (Fr, 15 Okt 2010) | 1 line #5762: fix handling of empty namespace in minidom, which would result in AttributeError on toxml(). ........ r85547 | georg.brandl | 2010-10-15 20:00:35 +0200 (Fr, 15 Okt 2010) | 1 line #6098: Refrain from claiming DOM level 3 conformance in minidom. ........ r85548 | georg.brandl | 2010-10-15 21:46:19 +0200 (Fr, 15 Okt 2010) | 1 line #10072: assume a bit less knowledge of the FTP protocol in the ftplib docs. ........
15 years ago
Merged revisions 82805-82806,83523-83527,83536,83538,83542,83546-83548,83550-83555,83558,83560 via svnmerge from svn+ssh://svn.python.org/python/branches/py3k ........ r82805 | georg.brandl | 2010-07-11 11:42:10 +0200 (So, 11 Jul 2010) | 1 line #7935: cross-reference to ast.literal_eval() from eval() docs. ........ r82806 | georg.brandl | 2010-07-11 12:22:44 +0200 (So, 11 Jul 2010) | 1 line #9223: link to Command class reference, and move Command interface docs nearer to class docs. ........ r83523 | georg.brandl | 2010-08-02 14:06:18 +0200 (Mo, 02 Aug 2010) | 1 line #9209 and #7781: fix two crashes in pstats interactive browser. ........ r83524 | georg.brandl | 2010-08-02 14:20:23 +0200 (Mo, 02 Aug 2010) | 1 line #9428: fix running scripts from profile/cProfile with their own name and the right namespace. Same fix as for trace.py in #1690103. ........ r83525 | georg.brandl | 2010-08-02 14:36:24 +0200 (Mo, 02 Aug 2010) | 1 line Get rid of spurious "threading" entries in trace output. ........ r83526 | georg.brandl | 2010-08-02 14:40:22 +0200 (Mo, 02 Aug 2010) | 1 line Fix softspace relic. ........ r83527 | georg.brandl | 2010-08-02 14:48:46 +0200 (Mo, 02 Aug 2010) | 1 line #3821: beginnings of a trace.py unittest. ........ r83536 | georg.brandl | 2010-08-02 19:49:25 +0200 (Mo, 02 Aug 2010) | 1 line #8578: mention danger of not incref'ing weak referenced object. ........ r83538 | georg.brandl | 2010-08-02 20:10:13 +0200 (Mo, 02 Aug 2010) | 1 line #6928: fix class docs w.r.t. new metaclasses. ........ r83542 | georg.brandl | 2010-08-02 20:56:54 +0200 (Mo, 02 Aug 2010) | 1 line Move test_SimpleHTTPServer into test_httpservers. ........ r83546 | georg.brandl | 2010-08-02 21:16:34 +0200 (Mo, 02 Aug 2010) | 1 line #7973: Fix distutils options spelling. ........ r83547 | georg.brandl | 2010-08-02 21:19:26 +0200 (Mo, 02 Aug 2010) | 1 line #7386: add example that shows that trailing path separators are stripped. ........ r83548 | georg.brandl | 2010-08-02 21:23:34 +0200 (Mo, 02 Aug 2010) | 1 line #8172: how does one use a property? ........ r83550 | georg.brandl | 2010-08-02 21:32:43 +0200 (Mo, 02 Aug 2010) | 1 line #9451: strengthen warning about __*__ special name usage. ........ r83551 | georg.brandl | 2010-08-02 21:35:06 +0200 (Mo, 02 Aug 2010) | 1 line Remove XXX comment that was displayed. ........ r83552 | georg.brandl | 2010-08-02 21:36:36 +0200 (Mo, 02 Aug 2010) | 1 line #9438: clarify that constant names also cannot be assigned as attributes. ........ r83553 | georg.brandl | 2010-08-02 21:39:17 +0200 (Mo, 02 Aug 2010) | 1 line Remove redundant information. ........ r83554 | georg.brandl | 2010-08-02 21:43:05 +0200 (Mo, 02 Aug 2010) | 1 line #7280: note about nasmw.exe. ........ r83555 | georg.brandl | 2010-08-02 21:44:48 +0200 (Mo, 02 Aug 2010) | 1 line #8861: remove unused variable. ........ r83558 | georg.brandl | 2010-08-02 22:05:19 +0200 (Mo, 02 Aug 2010) | 1 line #8648: document UTF-7 codec functions. ........ r83560 | georg.brandl | 2010-08-02 22:16:18 +0200 (Mo, 02 Aug 2010) | 1 line #9087: update json docstrings -- unicode and long do not exist anymore. ........
16 years ago
Merged revisions 82805-82806,83523-83527,83536,83538,83542,83546-83548,83550-83555,83558,83560 via svnmerge from svn+ssh://svn.python.org/python/branches/py3k ........ r82805 | georg.brandl | 2010-07-11 11:42:10 +0200 (So, 11 Jul 2010) | 1 line #7935: cross-reference to ast.literal_eval() from eval() docs. ........ r82806 | georg.brandl | 2010-07-11 12:22:44 +0200 (So, 11 Jul 2010) | 1 line #9223: link to Command class reference, and move Command interface docs nearer to class docs. ........ r83523 | georg.brandl | 2010-08-02 14:06:18 +0200 (Mo, 02 Aug 2010) | 1 line #9209 and #7781: fix two crashes in pstats interactive browser. ........ r83524 | georg.brandl | 2010-08-02 14:20:23 +0200 (Mo, 02 Aug 2010) | 1 line #9428: fix running scripts from profile/cProfile with their own name and the right namespace. Same fix as for trace.py in #1690103. ........ r83525 | georg.brandl | 2010-08-02 14:36:24 +0200 (Mo, 02 Aug 2010) | 1 line Get rid of spurious "threading" entries in trace output. ........ r83526 | georg.brandl | 2010-08-02 14:40:22 +0200 (Mo, 02 Aug 2010) | 1 line Fix softspace relic. ........ r83527 | georg.brandl | 2010-08-02 14:48:46 +0200 (Mo, 02 Aug 2010) | 1 line #3821: beginnings of a trace.py unittest. ........ r83536 | georg.brandl | 2010-08-02 19:49:25 +0200 (Mo, 02 Aug 2010) | 1 line #8578: mention danger of not incref'ing weak referenced object. ........ r83538 | georg.brandl | 2010-08-02 20:10:13 +0200 (Mo, 02 Aug 2010) | 1 line #6928: fix class docs w.r.t. new metaclasses. ........ r83542 | georg.brandl | 2010-08-02 20:56:54 +0200 (Mo, 02 Aug 2010) | 1 line Move test_SimpleHTTPServer into test_httpservers. ........ r83546 | georg.brandl | 2010-08-02 21:16:34 +0200 (Mo, 02 Aug 2010) | 1 line #7973: Fix distutils options spelling. ........ r83547 | georg.brandl | 2010-08-02 21:19:26 +0200 (Mo, 02 Aug 2010) | 1 line #7386: add example that shows that trailing path separators are stripped. ........ r83548 | georg.brandl | 2010-08-02 21:23:34 +0200 (Mo, 02 Aug 2010) | 1 line #8172: how does one use a property? ........ r83550 | georg.brandl | 2010-08-02 21:32:43 +0200 (Mo, 02 Aug 2010) | 1 line #9451: strengthen warning about __*__ special name usage. ........ r83551 | georg.brandl | 2010-08-02 21:35:06 +0200 (Mo, 02 Aug 2010) | 1 line Remove XXX comment that was displayed. ........ r83552 | georg.brandl | 2010-08-02 21:36:36 +0200 (Mo, 02 Aug 2010) | 1 line #9438: clarify that constant names also cannot be assigned as attributes. ........ r83553 | georg.brandl | 2010-08-02 21:39:17 +0200 (Mo, 02 Aug 2010) | 1 line Remove redundant information. ........ r83554 | georg.brandl | 2010-08-02 21:43:05 +0200 (Mo, 02 Aug 2010) | 1 line #7280: note about nasmw.exe. ........ r83555 | georg.brandl | 2010-08-02 21:44:48 +0200 (Mo, 02 Aug 2010) | 1 line #8861: remove unused variable. ........ r83558 | georg.brandl | 2010-08-02 22:05:19 +0200 (Mo, 02 Aug 2010) | 1 line #8648: document UTF-7 codec functions. ........ r83560 | georg.brandl | 2010-08-02 22:16:18 +0200 (Mo, 02 Aug 2010) | 1 line #9087: update json docstrings -- unicode and long do not exist anymore. ........
16 years ago
Merged revisions 85530,85532-85534,85538-85543,85546-85548 via svnmerge from svn+ssh://svn.python.org/python/branches/py3k ........ r85530 | georg.brandl | 2010-10-15 17:32:05 +0200 (Fr, 15 Okt 2010) | 1 line Refrain from using inline suites. ........ r85532 | georg.brandl | 2010-10-15 18:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #7771: reference to documentation of dictview methods and operations. ........ r85533 | georg.brandl | 2010-10-15 18:07:41 +0200 (Fr, 15 Okt 2010) | 1 line #9683: remove broken dead code dealing with nested arguments removed from Py3k, and update the docs and docstrings accordingly. ........ r85534 | georg.brandl | 2010-10-15 18:19:43 +0200 (Fr, 15 Okt 2010) | 1 line #9801: document how list and dict proxies created by Managers behave w.r.t. mutable items. ........ r85538 | georg.brandl | 2010-10-15 18:35:46 +0200 (Fr, 15 Okt 2010) | 1 line #7303: add documentation for useful pkgutil functions and classes. ........ r85539 | georg.brandl | 2010-10-15 18:42:14 +0200 (Fr, 15 Okt 2010) | 1 line Fix issue references. ........ r85540 | georg.brandl | 2010-10-15 18:42:37 +0200 (Fr, 15 Okt 2010) | 1 line #6798: fix wrong docs for the arguments to several trace events. ........ r85541 | georg.brandl | 2010-10-15 18:53:24 +0200 (Fr, 15 Okt 2010) | 1 line #4968: updates to inspect.is* function docs. ........ r85542 | georg.brandl | 2010-10-15 19:01:15 +0200 (Fr, 15 Okt 2010) | 1 line #7790: move table of struct_time members to the actual description of struct_time. ........ r85543 | georg.brandl | 2010-10-15 19:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #4785: document strict argument of JSONDecoder, plus add object_pairs_hook in the docstrings. ........ r85546 | georg.brandl | 2010-10-15 19:58:45 +0200 (Fr, 15 Okt 2010) | 1 line #5762: fix handling of empty namespace in minidom, which would result in AttributeError on toxml(). ........ r85547 | georg.brandl | 2010-10-15 20:00:35 +0200 (Fr, 15 Okt 2010) | 1 line #6098: Refrain from claiming DOM level 3 conformance in minidom. ........ r85548 | georg.brandl | 2010-10-15 21:46:19 +0200 (Fr, 15 Okt 2010) | 1 line #10072: assume a bit less knowledge of the FTP protocol in the ftplib docs. ........
15 years ago
Merged revisions 85530,85532-85534,85538-85543,85546-85548 via svnmerge from svn+ssh://svn.python.org/python/branches/py3k ........ r85530 | georg.brandl | 2010-10-15 17:32:05 +0200 (Fr, 15 Okt 2010) | 1 line Refrain from using inline suites. ........ r85532 | georg.brandl | 2010-10-15 18:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #7771: reference to documentation of dictview methods and operations. ........ r85533 | georg.brandl | 2010-10-15 18:07:41 +0200 (Fr, 15 Okt 2010) | 1 line #9683: remove broken dead code dealing with nested arguments removed from Py3k, and update the docs and docstrings accordingly. ........ r85534 | georg.brandl | 2010-10-15 18:19:43 +0200 (Fr, 15 Okt 2010) | 1 line #9801: document how list and dict proxies created by Managers behave w.r.t. mutable items. ........ r85538 | georg.brandl | 2010-10-15 18:35:46 +0200 (Fr, 15 Okt 2010) | 1 line #7303: add documentation for useful pkgutil functions and classes. ........ r85539 | georg.brandl | 2010-10-15 18:42:14 +0200 (Fr, 15 Okt 2010) | 1 line Fix issue references. ........ r85540 | georg.brandl | 2010-10-15 18:42:37 +0200 (Fr, 15 Okt 2010) | 1 line #6798: fix wrong docs for the arguments to several trace events. ........ r85541 | georg.brandl | 2010-10-15 18:53:24 +0200 (Fr, 15 Okt 2010) | 1 line #4968: updates to inspect.is* function docs. ........ r85542 | georg.brandl | 2010-10-15 19:01:15 +0200 (Fr, 15 Okt 2010) | 1 line #7790: move table of struct_time members to the actual description of struct_time. ........ r85543 | georg.brandl | 2010-10-15 19:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #4785: document strict argument of JSONDecoder, plus add object_pairs_hook in the docstrings. ........ r85546 | georg.brandl | 2010-10-15 19:58:45 +0200 (Fr, 15 Okt 2010) | 1 line #5762: fix handling of empty namespace in minidom, which would result in AttributeError on toxml(). ........ r85547 | georg.brandl | 2010-10-15 20:00:35 +0200 (Fr, 15 Okt 2010) | 1 line #6098: Refrain from claiming DOM level 3 conformance in minidom. ........ r85548 | georg.brandl | 2010-10-15 21:46:19 +0200 (Fr, 15 Okt 2010) | 1 line #10072: assume a bit less knowledge of the FTP protocol in the ftplib docs. ........
15 years ago
Merged revisions 85530,85532-85534,85538-85543,85546-85548 via svnmerge from svn+ssh://svn.python.org/python/branches/py3k ........ r85530 | georg.brandl | 2010-10-15 17:32:05 +0200 (Fr, 15 Okt 2010) | 1 line Refrain from using inline suites. ........ r85532 | georg.brandl | 2010-10-15 18:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #7771: reference to documentation of dictview methods and operations. ........ r85533 | georg.brandl | 2010-10-15 18:07:41 +0200 (Fr, 15 Okt 2010) | 1 line #9683: remove broken dead code dealing with nested arguments removed from Py3k, and update the docs and docstrings accordingly. ........ r85534 | georg.brandl | 2010-10-15 18:19:43 +0200 (Fr, 15 Okt 2010) | 1 line #9801: document how list and dict proxies created by Managers behave w.r.t. mutable items. ........ r85538 | georg.brandl | 2010-10-15 18:35:46 +0200 (Fr, 15 Okt 2010) | 1 line #7303: add documentation for useful pkgutil functions and classes. ........ r85539 | georg.brandl | 2010-10-15 18:42:14 +0200 (Fr, 15 Okt 2010) | 1 line Fix issue references. ........ r85540 | georg.brandl | 2010-10-15 18:42:37 +0200 (Fr, 15 Okt 2010) | 1 line #6798: fix wrong docs for the arguments to several trace events. ........ r85541 | georg.brandl | 2010-10-15 18:53:24 +0200 (Fr, 15 Okt 2010) | 1 line #4968: updates to inspect.is* function docs. ........ r85542 | georg.brandl | 2010-10-15 19:01:15 +0200 (Fr, 15 Okt 2010) | 1 line #7790: move table of struct_time members to the actual description of struct_time. ........ r85543 | georg.brandl | 2010-10-15 19:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #4785: document strict argument of JSONDecoder, plus add object_pairs_hook in the docstrings. ........ r85546 | georg.brandl | 2010-10-15 19:58:45 +0200 (Fr, 15 Okt 2010) | 1 line #5762: fix handling of empty namespace in minidom, which would result in AttributeError on toxml(). ........ r85547 | georg.brandl | 2010-10-15 20:00:35 +0200 (Fr, 15 Okt 2010) | 1 line #6098: Refrain from claiming DOM level 3 conformance in minidom. ........ r85548 | georg.brandl | 2010-10-15 21:46:19 +0200 (Fr, 15 Okt 2010) | 1 line #10072: assume a bit less knowledge of the FTP protocol in the ftplib docs. ........
15 years ago
Merged revisions 85530,85532-85534,85538-85543,85546-85548 via svnmerge from svn+ssh://svn.python.org/python/branches/py3k ........ r85530 | georg.brandl | 2010-10-15 17:32:05 +0200 (Fr, 15 Okt 2010) | 1 line Refrain from using inline suites. ........ r85532 | georg.brandl | 2010-10-15 18:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #7771: reference to documentation of dictview methods and operations. ........ r85533 | georg.brandl | 2010-10-15 18:07:41 +0200 (Fr, 15 Okt 2010) | 1 line #9683: remove broken dead code dealing with nested arguments removed from Py3k, and update the docs and docstrings accordingly. ........ r85534 | georg.brandl | 2010-10-15 18:19:43 +0200 (Fr, 15 Okt 2010) | 1 line #9801: document how list and dict proxies created by Managers behave w.r.t. mutable items. ........ r85538 | georg.brandl | 2010-10-15 18:35:46 +0200 (Fr, 15 Okt 2010) | 1 line #7303: add documentation for useful pkgutil functions and classes. ........ r85539 | georg.brandl | 2010-10-15 18:42:14 +0200 (Fr, 15 Okt 2010) | 1 line Fix issue references. ........ r85540 | georg.brandl | 2010-10-15 18:42:37 +0200 (Fr, 15 Okt 2010) | 1 line #6798: fix wrong docs for the arguments to several trace events. ........ r85541 | georg.brandl | 2010-10-15 18:53:24 +0200 (Fr, 15 Okt 2010) | 1 line #4968: updates to inspect.is* function docs. ........ r85542 | georg.brandl | 2010-10-15 19:01:15 +0200 (Fr, 15 Okt 2010) | 1 line #7790: move table of struct_time members to the actual description of struct_time. ........ r85543 | georg.brandl | 2010-10-15 19:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #4785: document strict argument of JSONDecoder, plus add object_pairs_hook in the docstrings. ........ r85546 | georg.brandl | 2010-10-15 19:58:45 +0200 (Fr, 15 Okt 2010) | 1 line #5762: fix handling of empty namespace in minidom, which would result in AttributeError on toxml(). ........ r85547 | georg.brandl | 2010-10-15 20:00:35 +0200 (Fr, 15 Okt 2010) | 1 line #6098: Refrain from claiming DOM level 3 conformance in minidom. ........ r85548 | georg.brandl | 2010-10-15 21:46:19 +0200 (Fr, 15 Okt 2010) | 1 line #10072: assume a bit less knowledge of the FTP protocol in the ftplib docs. ........
15 years ago
Merged revisions 85530,85532-85534,85538-85543,85546-85548 via svnmerge from svn+ssh://svn.python.org/python/branches/py3k ........ r85530 | georg.brandl | 2010-10-15 17:32:05 +0200 (Fr, 15 Okt 2010) | 1 line Refrain from using inline suites. ........ r85532 | georg.brandl | 2010-10-15 18:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #7771: reference to documentation of dictview methods and operations. ........ r85533 | georg.brandl | 2010-10-15 18:07:41 +0200 (Fr, 15 Okt 2010) | 1 line #9683: remove broken dead code dealing with nested arguments removed from Py3k, and update the docs and docstrings accordingly. ........ r85534 | georg.brandl | 2010-10-15 18:19:43 +0200 (Fr, 15 Okt 2010) | 1 line #9801: document how list and dict proxies created by Managers behave w.r.t. mutable items. ........ r85538 | georg.brandl | 2010-10-15 18:35:46 +0200 (Fr, 15 Okt 2010) | 1 line #7303: add documentation for useful pkgutil functions and classes. ........ r85539 | georg.brandl | 2010-10-15 18:42:14 +0200 (Fr, 15 Okt 2010) | 1 line Fix issue references. ........ r85540 | georg.brandl | 2010-10-15 18:42:37 +0200 (Fr, 15 Okt 2010) | 1 line #6798: fix wrong docs for the arguments to several trace events. ........ r85541 | georg.brandl | 2010-10-15 18:53:24 +0200 (Fr, 15 Okt 2010) | 1 line #4968: updates to inspect.is* function docs. ........ r85542 | georg.brandl | 2010-10-15 19:01:15 +0200 (Fr, 15 Okt 2010) | 1 line #7790: move table of struct_time members to the actual description of struct_time. ........ r85543 | georg.brandl | 2010-10-15 19:03:02 +0200 (Fr, 15 Okt 2010) | 1 line #4785: document strict argument of JSONDecoder, plus add object_pairs_hook in the docstrings. ........ r85546 | georg.brandl | 2010-10-15 19:58:45 +0200 (Fr, 15 Okt 2010) | 1 line #5762: fix handling of empty namespace in minidom, which would result in AttributeError on toxml(). ........ r85547 | georg.brandl | 2010-10-15 20:00:35 +0200 (Fr, 15 Okt 2010) | 1 line #6098: Refrain from claiming DOM level 3 conformance in minidom. ........ r85548 | georg.brandl | 2010-10-15 21:46:19 +0200 (Fr, 15 Okt 2010) | 1 line #10072: assume a bit less knowledge of the FTP protocol in the ftplib docs. ........
15 years ago
  1. r"""JSON (JavaScript Object Notation) <http://json.org> is a subset of
  2. JavaScript syntax (ECMA-262 3rd edition) used as a lightweight data
  3. interchange format.
  4. :mod:`json` exposes an API familiar to users of the standard library
  5. :mod:`marshal` and :mod:`pickle` modules. It is the externally maintained
  6. version of the :mod:`json` library contained in Python 2.6, but maintains
  7. compatibility with Python 2.4 and Python 2.5 and (currently) has
  8. significant performance advantages, even without using the optional C
  9. extension for speedups.
  10. Encoding basic Python object hierarchies::
  11. >>> import json
  12. >>> json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}])
  13. '["foo", {"bar": ["baz", null, 1.0, 2]}]'
  14. >>> print(json.dumps("\"foo\bar"))
  15. "\"foo\bar"
  16. >>> print(json.dumps('\u1234'))
  17. "\u1234"
  18. >>> print(json.dumps('\\'))
  19. "\\"
  20. >>> print(json.dumps({"c": 0, "b": 0, "a": 0}, sort_keys=True))
  21. {"a": 0, "b": 0, "c": 0}
  22. >>> from io import StringIO
  23. >>> io = StringIO()
  24. >>> json.dump(['streaming API'], io)
  25. >>> io.getvalue()
  26. '["streaming API"]'
  27. Compact encoding::
  28. >>> import json
  29. >>> json.dumps([1,2,3,{'4': 5, '6': 7}], separators=(',', ':'))
  30. '[1,2,3,{"4":5,"6":7}]'
  31. Pretty printing::
  32. >>> import json
  33. >>> s = json.dumps({'4': 5, '6': 7}, sort_keys=True, indent=4)
  34. >>> print('\n'.join([l.rstrip() for l in s.splitlines()]))
  35. {
  36. "4": 5,
  37. "6": 7
  38. }
  39. Decoding JSON::
  40. >>> import json
  41. >>> obj = ['foo', {'bar': ['baz', None, 1.0, 2]}]
  42. >>> json.loads('["foo", {"bar":["baz", null, 1.0, 2]}]') == obj
  43. True
  44. >>> json.loads('"\\"foo\\bar"') == '"foo\x08ar'
  45. True
  46. >>> from io import StringIO
  47. >>> io = StringIO('["streaming API"]')
  48. >>> json.load(io)[0] == 'streaming API'
  49. True
  50. Specializing JSON object decoding::
  51. >>> import json
  52. >>> def as_complex(dct):
  53. ... if '__complex__' in dct:
  54. ... return complex(dct['real'], dct['imag'])
  55. ... return dct
  56. ...
  57. >>> json.loads('{"__complex__": true, "real": 1, "imag": 2}',
  58. ... object_hook=as_complex)
  59. (1+2j)
  60. >>> from decimal import Decimal
  61. >>> json.loads('1.1', parse_float=Decimal) == Decimal('1.1')
  62. True
  63. Specializing JSON object encoding::
  64. >>> import json
  65. >>> def encode_complex(obj):
  66. ... if isinstance(obj, complex):
  67. ... return [obj.real, obj.imag]
  68. ... raise TypeError(repr(o) + " is not JSON serializable")
  69. ...
  70. >>> json.dumps(2 + 1j, default=encode_complex)
  71. '[2.0, 1.0]'
  72. >>> json.JSONEncoder(default=encode_complex).encode(2 + 1j)
  73. '[2.0, 1.0]'
  74. >>> ''.join(json.JSONEncoder(default=encode_complex).iterencode(2 + 1j))
  75. '[2.0, 1.0]'
  76. Using json.tool from the shell to validate and pretty-print::
  77. $ echo '{"json":"obj"}' | python -m json.tool
  78. {
  79. "json": "obj"
  80. }
  81. $ echo '{ 1.2:3.4}' | python -m json.tool
  82. Expecting property name: line 1 column 2 (char 2)
  83. """
  84. __version__ = '2.0.9'
  85. __all__ = [
  86. 'dump', 'dumps', 'load', 'loads',
  87. 'JSONDecoder', 'JSONEncoder',
  88. ]
  89. __author__ = 'Bob Ippolito <bob@redivi.com>'
  90. from .decoder import JSONDecoder
  91. from .encoder import JSONEncoder
  92. _default_encoder = JSONEncoder(
  93. skipkeys=False,
  94. ensure_ascii=True,
  95. check_circular=True,
  96. allow_nan=True,
  97. indent=None,
  98. separators=None,
  99. default=None,
  100. )
  101. def dump(obj, fp, skipkeys=False, ensure_ascii=True, check_circular=True,
  102. allow_nan=True, cls=None, indent=None, separators=None,
  103. default=None, **kw):
  104. """Serialize ``obj`` as a JSON formatted stream to ``fp`` (a
  105. ``.write()``-supporting file-like object).
  106. If ``skipkeys`` is true then ``dict`` keys that are not basic types
  107. (``str``, ``int``, ``float``, ``bool``, ``None``) will be skipped
  108. instead of raising a ``TypeError``.
  109. If ``ensure_ascii`` is false, then the strings written to ``fp`` can
  110. contain non-ASCII characters if they appear in strings contained in
  111. ``obj``. Otherwise, all such characters are escaped in JSON strings.
  112. If ``check_circular`` is false, then the circular reference check
  113. for container types will be skipped and a circular reference will
  114. result in an ``OverflowError`` (or worse).
  115. If ``allow_nan`` is false, then it will be a ``ValueError`` to
  116. serialize out of range ``float`` values (``nan``, ``inf``, ``-inf``)
  117. in strict compliance of the JSON specification, instead of using the
  118. JavaScript equivalents (``NaN``, ``Infinity``, ``-Infinity``).
  119. If ``indent`` is a non-negative integer, then JSON array elements and
  120. object members will be pretty-printed with that indent level. An indent
  121. level of 0 will only insert newlines. ``None`` is the most compact
  122. representation.
  123. If ``separators`` is an ``(item_separator, dict_separator)`` tuple
  124. then it will be used instead of the default ``(', ', ': ')`` separators.
  125. ``(',', ':')`` is the most compact JSON representation.
  126. ``default(obj)`` is a function that should return a serializable version
  127. of obj or raise TypeError. The default simply raises TypeError.
  128. To use a custom ``JSONEncoder`` subclass (e.g. one that overrides the
  129. ``.default()`` method to serialize additional types), specify it with
  130. the ``cls`` kwarg; otherwise ``JSONEncoder`` is used.
  131. """
  132. # cached encoder
  133. if (not skipkeys and ensure_ascii and
  134. check_circular and allow_nan and
  135. cls is None and indent is None and separators is None and
  136. default is None and not kw):
  137. iterable = _default_encoder.iterencode(obj)
  138. else:
  139. if cls is None:
  140. cls = JSONEncoder
  141. iterable = cls(skipkeys=skipkeys, ensure_ascii=ensure_ascii,
  142. check_circular=check_circular, allow_nan=allow_nan, indent=indent,
  143. separators=separators,
  144. default=default, **kw).iterencode(obj)
  145. # could accelerate with writelines in some versions of Python, at
  146. # a debuggability cost
  147. for chunk in iterable:
  148. fp.write(chunk)
  149. def dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True,
  150. allow_nan=True, cls=None, indent=None, separators=None,
  151. default=None, **kw):
  152. """Serialize ``obj`` to a JSON formatted ``str``.
  153. If ``skipkeys`` is false then ``dict`` keys that are not basic types
  154. (``str``, ``int``, ``float``, ``bool``, ``None``) will be skipped
  155. instead of raising a ``TypeError``.
  156. If ``ensure_ascii`` is false, then the return value can contain non-ASCII
  157. characters if they appear in strings contained in ``obj``. Otherwise, all
  158. such characters are escaped in JSON strings.
  159. If ``check_circular`` is false, then the circular reference check
  160. for container types will be skipped and a circular reference will
  161. result in an ``OverflowError`` (or worse).
  162. If ``allow_nan`` is false, then it will be a ``ValueError`` to
  163. serialize out of range ``float`` values (``nan``, ``inf``, ``-inf``) in
  164. strict compliance of the JSON specification, instead of using the
  165. JavaScript equivalents (``NaN``, ``Infinity``, ``-Infinity``).
  166. If ``indent`` is a non-negative integer, then JSON array elements and
  167. object members will be pretty-printed with that indent level. An indent
  168. level of 0 will only insert newlines. ``None`` is the most compact
  169. representation.
  170. If ``separators`` is an ``(item_separator, dict_separator)`` tuple
  171. then it will be used instead of the default ``(', ', ': ')`` separators.
  172. ``(',', ':')`` is the most compact JSON representation.
  173. ``default(obj)`` is a function that should return a serializable version
  174. of obj or raise TypeError. The default simply raises TypeError.
  175. To use a custom ``JSONEncoder`` subclass (e.g. one that overrides the
  176. ``.default()`` method to serialize additional types), specify it with
  177. the ``cls`` kwarg; otherwise ``JSONEncoder`` is used.
  178. """
  179. # cached encoder
  180. if (not skipkeys and ensure_ascii and
  181. check_circular and allow_nan and
  182. cls is None and indent is None and separators is None and
  183. default is None and not kw):
  184. return _default_encoder.encode(obj)
  185. if cls is None:
  186. cls = JSONEncoder
  187. return cls(
  188. skipkeys=skipkeys, ensure_ascii=ensure_ascii,
  189. check_circular=check_circular, allow_nan=allow_nan, indent=indent,
  190. separators=separators, default=default,
  191. **kw).encode(obj)
  192. _default_decoder = JSONDecoder(object_hook=None, object_pairs_hook=None)
  193. def load(fp, cls=None, object_hook=None, parse_float=None,
  194. parse_int=None, parse_constant=None, object_pairs_hook=None, **kw):
  195. """Deserialize ``fp`` (a ``.read()``-supporting file-like object containing
  196. a JSON document) to a Python object.
  197. ``object_hook`` is an optional function that will be called with the
  198. result of any object literal decode (a ``dict``). The return value of
  199. ``object_hook`` will be used instead of the ``dict``. This feature
  200. can be used to implement custom decoders (e.g. JSON-RPC class hinting).
  201. ``object_pairs_hook`` is an optional function that will be called with the
  202. result of any object literal decoded with an ordered list of pairs. The
  203. return value of ``object_pairs_hook`` will be used instead of the ``dict``.
  204. This feature can be used to implement custom decoders that rely on the
  205. order that the key and value pairs are decoded (for example,
  206. collections.OrderedDict will remember the order of insertion). If
  207. ``object_hook`` is also defined, the ``object_pairs_hook`` takes priority.
  208. To use a custom ``JSONDecoder`` subclass, specify it with the ``cls``
  209. kwarg; otherwise ``JSONDecoder`` is used.
  210. """
  211. return loads(fp.read(),
  212. cls=cls, object_hook=object_hook,
  213. parse_float=parse_float, parse_int=parse_int,
  214. parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw)
  215. def loads(s, encoding=None, cls=None, object_hook=None, parse_float=None,
  216. parse_int=None, parse_constant=None, object_pairs_hook=None, **kw):
  217. """Deserialize ``s`` (a ``str`` instance containing a JSON
  218. document) to a Python object.
  219. ``object_hook`` is an optional function that will be called with the
  220. result of any object literal decode (a ``dict``). The return value of
  221. ``object_hook`` will be used instead of the ``dict``. This feature
  222. can be used to implement custom decoders (e.g. JSON-RPC class hinting).
  223. ``object_pairs_hook`` is an optional function that will be called with the
  224. result of any object literal decoded with an ordered list of pairs. The
  225. return value of ``object_pairs_hook`` will be used instead of the ``dict``.
  226. This feature can be used to implement custom decoders that rely on the
  227. order that the key and value pairs are decoded (for example,
  228. collections.OrderedDict will remember the order of insertion). If
  229. ``object_hook`` is also defined, the ``object_pairs_hook`` takes priority.
  230. ``parse_float``, if specified, will be called with the string
  231. of every JSON float to be decoded. By default this is equivalent to
  232. float(num_str). This can be used to use another datatype or parser
  233. for JSON floats (e.g. decimal.Decimal).
  234. ``parse_int``, if specified, will be called with the string
  235. of every JSON int to be decoded. By default this is equivalent to
  236. int(num_str). This can be used to use another datatype or parser
  237. for JSON integers (e.g. float).
  238. ``parse_constant``, if specified, will be called with one of the
  239. following strings: -Infinity, Infinity, NaN, null, true, false.
  240. This can be used to raise an exception if invalid JSON numbers
  241. are encountered.
  242. To use a custom ``JSONDecoder`` subclass, specify it with the ``cls``
  243. kwarg; otherwise ``JSONDecoder`` is used.
  244. The ``encoding`` argument is ignored and deprecated.
  245. """
  246. if (cls is None and object_hook is None and
  247. parse_int is None and parse_float is None and
  248. parse_constant is None and object_pairs_hook is None and not kw):
  249. return _default_decoder.decode(s)
  250. if cls is None:
  251. cls = JSONDecoder
  252. if object_hook is not None:
  253. kw['object_hook'] = object_hook
  254. if object_pairs_hook is not None:
  255. kw['object_pairs_hook'] = object_pairs_hook
  256. if parse_float is not None:
  257. kw['parse_float'] = parse_float
  258. if parse_int is not None:
  259. kw['parse_int'] = parse_int
  260. if parse_constant is not None:
  261. kw['parse_constant'] = parse_constant
  262. return cls(**kw).decode(s)