Commit Graph

2902 Commits

Author SHA1 Message Date
Benjamin Peterson 8bc5b68159 these builtins have to be initialized 2009-05-09 18:10:51 +00:00
Benjamin Peterson b173f7853e add a replacement API for PyCObject, PyCapsule #5630
All stdlib modules with C-APIs now use this.

Patch by Larry Hastings
2009-05-05 22:31:58 +00:00
Eric Smith 63376228a3 Issue #5920: Changed format.__float__ and complex.__float__ to use a precision of 12 when using the empty presentation type. This more closely matches str()'s behavior and reduces surprises when adding alignment flags to an empty format string. Patch by Mark Dickinson. 2009-05-05 14:04:18 +00:00
Martin v. Löwis 011e842033 Issue #5915: Implement PEP 383, Non-decodable Bytes in
System Character Interfaces.
2009-05-05 04:43:17 +00:00
Mark Dickinson 129ab1d809 Merged revisions 72257 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r72257 | mark.dickinson | 2009-05-03 23:33:34 +0100 (Sun, 03 May 2009) | 2 lines

  Don't use PyOS_strnicmp for NaN and Inf detection: it's locale-aware.
........
2009-05-03 22:36:01 +00:00
Mark Dickinson 725bfd8489 Issue #5914: Add new C-API function PyOS_string_to_double, to complement
PyOS_double_to_string, and deprecate PyOS_ascii_strtod and PyOS_ascii_atof.
2009-05-03 20:33:40 +00:00
Martin v. Löwis aef3fb082c Make PyCodec_SurrogateErrors static. 2009-05-02 19:27:30 +00:00
Martin v. Löwis db12d454e6 Issue #3672: Reject surrogates in utf-8 codec; add surrogates error
handler.
2009-05-02 18:52:14 +00:00
Mark Dickinson f489caf5da Issue #5859: Remove use of fixed-length buffers for float formatting
in unicodeobject.c and the fallback version of PyOS_double_to_string.
As a result, operations like '%.120e' % 12.34 no longer raise an
exception.
2009-05-01 11:42:00 +00:00
Eric Smith 58a42244cf Issue #1588: Add complex.__format__. 2009-04-30 01:00:33 +00:00
Mark Dickinson d3ca557150 Issue #5864: Fix problem with empty code formatting for floats,
where a bogus trailing zero could be added.
2009-04-29 18:47:07 +00:00
Eric Smith 8374981fb4 Include files missed in r72044. 2009-04-27 20:54:42 +00:00
Eric Smith 6dc46f5eaa Merged revisions 72040 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r72040 | eric.smith | 2009-04-27 15:04:37 -0400 (Mon, 27 Apr 2009) | 1 line

  Issue #5793: rationalize isdigit / isalpha / tolower, etc. Will port to py3k. Should fix Windows buildbot errors.
........
2009-04-27 20:39:49 +00:00
Eric Smith cc32a11976 Issue #5835: Deprecate PyOS_ascii_formatd. 2009-04-26 21:35:14 +00:00
Mark Dickinson ce95e5646b Merged revisions 71976 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71976 | mark.dickinson | 2009-04-26 20:54:55 +0100 (Sun, 26 Apr 2009) | 2 lines

  Fix typo in function name
........
2009-04-26 20:02:24 +00:00
Mark Dickinson 6d65df1e8a Internal plumbing changes for float parsing:
- check for nans and infs within PyOS_ascii_strtod
 - simplify parsing in PyFloat_FromString, and handle out-of-memory
   errors properly
2009-04-26 15:30:47 +00:00
Mark Dickinson ad476dab09 Issue #5816: Simplify code for parsing and printing of complex numbers.
nans and infs are no longer given special treatment; as a result,
repr(complex(z)) recovers z for any complex number z.
2009-04-23 19:14:16 +00:00
Eric Smith b1a03cf716 Added handling of PyOS_double_to_string out-of-memory errors. Closes issue 5775. 2009-04-21 11:57:38 +00:00
Mark Dickinson 7abf8d4066 The SSE2 detection and enabling could potentially cause
problems for binary distributions of Python in situations
where the build machine has SSE2 but the target machine
does not.

Therefore, don't enable SSE2 instructions automatically on x86.
2009-04-18 20:17:52 +00:00
Mark Dickinson 23b6286e8f Merged revisions 71705 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71705 | mark.dickinson | 2009-04-18 15:13:43 +0100 (Sat, 18 Apr 2009) | 2 lines

  copysign shouldn't be declared as static in pymath.c
........
2009-04-18 14:14:48 +00:00
Mark Dickinson f253786a80 Add check for C99 round function to configure, and define
a fallback function if round doesn't exist.
2009-04-18 13:58:18 +00:00
Eric Smith 241cb4cff5 Removed unused files. 2009-04-18 00:10:04 +00:00
Mark Dickinson 3370cce4dd Issue 5780: Fix test_float failures for legacy style float repr. 2009-04-17 22:40:53 +00:00
Mark Dickinson fd2ad8b4f2 Silence compiler warnings on VS8.0 2009-04-17 19:29:46 +00:00
Mark Dickinson 7f0ea323ee Add reminder to dtoa.c to check for updates regularly.
Fix a bug in the memory management in dtoa.c.
2009-04-17 16:06:28 +00:00
Mark Dickinson 3e09f43e06 Make sure that marshal and pickle continue to output 17
digits of precision for floats.
2009-04-17 08:41:23 +00:00
Eric Smith 193125ad19 Simplify PyOS_double_to_string. 2009-04-16 22:08:31 +00:00
Eric Smith 0923d1d8d7 The other half of Issue #1580: use short float repr where possible.
Addresses the float -> string conversion, using David Gay's code which
was added in Mark Dickinson's checkin r71663.

Also addresses these, which are intertwined with the short repr
changes:

- Issue #5772: format(1e100, '<') produces '1e+100', not '1.0e+100'
- Issue #5515: 'n' formatting with commas no longer works poorly
    with leading zeros.
- PEP 378 Format Specifier for Thousands Separator: implemented
    for floats.
2009-04-16 20:16:10 +00:00
Mark Dickinson b08a53a99d Issue #1580: use short float repr where possible.
- incorporate and adapt David Gay's dtoa and strtod
   into the Python core
 - on platforms where we can use Gay's code (almost
   all!), repr(float) is based on the shortest
   sequence of decimal digits that rounds correctly.
 - add sys.float_repr_style attribute to indicate
   whether we're using Gay's code or not
 - add autoconf magic to detect and enable SSE2
   instructions on x86/gcc
 - slight change to repr and str:  repr switches
   to exponential notation at 1e16 instead of
   1e17, str switches at 1e11 instead of 1e12
2009-04-16 19:52:09 +00:00
Georg Brandl 406b3d89e2 Merged revisions 71024,71058 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71024 | georg.brandl | 2009-04-02 04:47:44 +0200 (Do, 02 Apr 2009) | 4 lines

  In PyErr_GivenExceptionMatches, temporarily bump the recursion
  limit, so that in the most common case PyObject_IsSubclass will
  not raise a recursion error we have to ignore anyway.
........
  r71058 | georg.brandl | 2009-04-02 20:09:04 +0200 (Do, 02 Apr 2009) | 3 lines

  PyErr_NormalizeException may not set an error, so convert the PyErr_SetObject
  call on hitting the recursion limit into just assigning it to the arguments provided.
........
2009-04-11 21:24:37 +00:00
Benjamin Peterson ef3e4c2b4d Merged revisions 70980,71059,71225,71234,71241,71243,71249,71251,71255,71266,71299,71329,71397-71398,71486 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r70980 | jack.diederich | 2009-04-01 15:26:13 -0500 (Wed, 01 Apr 2009) | 3 lines

  bounds check arguments to mmap.move().  All of them.  Really.
  fixes crasher on OS X 10.5
........
  r71059 | mark.dickinson | 2009-04-02 13:39:37 -0500 (Thu, 02 Apr 2009) | 2 lines

  sys.long_info attributes should be ints, not longs
........
  r71225 | georg.brandl | 2009-04-05 06:54:07 -0500 (Sun, 05 Apr 2009) | 1 line

  #5580: no need to use parentheses when converterr() argument is actually a type description.
........
  r71234 | georg.brandl | 2009-04-05 08:16:35 -0500 (Sun, 05 Apr 2009) | 1 line

  Whitespace normalization.
........
  r71241 | georg.brandl | 2009-04-05 09:48:49 -0500 (Sun, 05 Apr 2009) | 1 line

  #5471: fix expanduser() for $HOME set to "/".
........
  r71243 | georg.brandl | 2009-04-05 10:14:29 -0500 (Sun, 05 Apr 2009) | 1 line

  #5432: make plistlib docstring a raw string, since it contains examples with backslash escapes.
........
  r71249 | georg.brandl | 2009-04-05 11:30:43 -0500 (Sun, 05 Apr 2009) | 1 line

  #5444: adapt make.bat to new htmlhelp output file name.
........
  r71251 | georg.brandl | 2009-04-05 12:17:42 -0500 (Sun, 05 Apr 2009) | 1 line

  #5298: clarify docs about GIL by using more consistent wording.
........
  r71255 | georg.brandl | 2009-04-05 13:34:58 -0500 (Sun, 05 Apr 2009) | 1 line

  #602893: add indicator for current line in cgitb that doesnt rely on styling alone.
........
  r71266 | georg.brandl | 2009-04-05 15:23:13 -0500 (Sun, 05 Apr 2009) | 1 line

  Normalize issue referencing style.
........
  r71299 | gregory.p.smith | 2009-04-05 18:43:58 -0500 (Sun, 05 Apr 2009) | 3 lines

  Fixes issue5705: os.setuid() and friends did not accept the same range of
  values that pwd.getpwnam() returns.
........
  r71329 | benjamin.peterson | 2009-04-06 16:53:33 -0500 (Mon, 06 Apr 2009) | 1 line

  add create_connection to __all__ #5711
........
  r71397 | georg.brandl | 2009-04-08 11:36:39 -0500 (Wed, 08 Apr 2009) | 1 line

  Remove redundant backtick.
........
  r71398 | georg.brandl | 2009-04-08 11:39:04 -0500 (Wed, 08 Apr 2009) | 1 line

  Update ignore file for suspicious builder.
........
  r71486 | andrew.kuchling | 2009-04-11 11:18:14 -0500 (Sat, 11 Apr 2009) | 1 line

  Re-word
........
2009-04-11 19:48:14 +00:00
Eric Smith a51d98ffc0 Removed unused #include. 2009-04-07 22:55:31 +00:00
Mark Dickinson 638805f860 Revert removal of atof.c and strtod.c in r71341. We're not quite
ready for this yet---this removal should happen as part of the
py3k-short-float-repr merge.
2009-04-07 11:53:52 +00:00
Eric Smith a7e33fec94 Removed unused files in preparation for merging py3k-short-float-repr. 2009-04-07 00:07:34 +00:00
Matthias Klose 042f133d82 Merged revisions 71152 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71152 | matthias.klose | 2009-04-04 16:18:13 +0200 (Sa, 04 Apr 2009) | 3 lines

  - Issue #3845: In PyRun_SimpleFileExFlags avoid invalid memory access with
    short file names.
........
2009-04-04 14:32:42 +00:00
Benjamin Peterson a921fb0f66 Py_BuildValue's 'c' code should use byte strings #5666 2009-04-03 22:18:11 +00:00
Eric Smith a3b1ac8dca Added ',' thousands grouping to int.__format__. See PEP 378.
This is incomplete, but I want to get some version into the next alpha. I am still working on:
Documentation.
More tests.
Implement for floats.

In addition, there's an existing bug with 'n' formatting that carries forward to thousands grouping (issue 5515).
2009-04-03 14:45:06 +00:00
Brett Cannon a826f32054 Merged revisions 71031 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71031 | brett.cannon | 2009-04-01 20:17:39 -0700 (Wed, 01 Apr 2009) | 6 lines

  PyImport_AppendInittab() took a char * as a first argument even though that
  string was stored beyond the life of the call. Changed the signature to be
  const char * to help make this point.

  Closes issue #1419652.
........
2009-04-02 03:41:46 +00:00
Benjamin Peterson acc9dcc688 remove unused variable 2009-04-02 02:27:56 +00:00
Benjamin Peterson d1e5493a26 rewrite error handling to make sense 2009-04-02 02:27:20 +00:00
Benjamin Peterson 22081a1364 fix ref leaks 2009-04-02 01:50:37 +00:00
Benjamin Peterson 7fe9853596 make 'c' only accept bytes and 'C' only unicode #5499 2009-04-02 00:33:55 +00:00
Brett Cannon 0759dd66c5 Merged revisions 70965 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r70965 | brett.cannon | 2009-04-01 11:03:59 -0700 (Wed, 01 Apr 2009) | 5 lines

  _warnings was importing itself to get an attribute. That's bad if warnings gets
  called in a thread that was spawned by an import itself.

  Last part to close #1665206.
........
2009-04-01 18:13:07 +00:00
Brett Cannon e3944a5e1e The BDFL has retired! Long live the FLUFL (Friendly Language Uncle For Life)! 2009-04-01 05:08:41 +00:00
Jesse Noller a931404804 Merged revisions 70908 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r70908 | jesse.noller | 2009-03-31 17:20:35 -0500 (Tue, 31 Mar 2009) | 1 line

  Issue 5619: Pass MS CRT debug flags into subprocesses
........
2009-03-31 22:36:44 +00:00
Kristján Valur Jónsson 92af5d9fec Fix a leaking "pathname" in import.c 2009-03-31 17:47:50 +00:00
Kristján Valur Jónsson e1b0445ff9 get_file() no longer leaks a FILE structure. If given a file descriptor, it calls dup() to get a new handle. Then both the FILE object and the fd can be closed.
This is important, because otherwise, the leaked FILE object will be closed on process exit, causing assertions on Windows, e.g. in the test_multiprocessing.py regression test.
2009-03-31 17:43:39 +00:00
Jeremy Hylton f37708e048 Merged revisions 70801,70809 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

The merge ran into a lot of conflicts because dicts were replaced with
sets in the Python 3 version of the symbol table.

........
  r70801 | jeremy.hylton | 2009-03-31 09:17:03 -0400 (Tue, 31 Mar 2009) | 3 lines

  Add is_declared_global() which distinguishes between implicit and
  explicit global variables.
........
  r70809 | jeremy.hylton | 2009-03-31 09:48:15 -0400 (Tue, 31 Mar 2009) | 14 lines

  Global statements from one function leaked into parallel functions.

  Re http://bugs.python.org/issue4315

  The symbol table used the same name dictionaries to recursively
  analyze each of its child blocks, even though the dictionaries are
  modified during analysis.  The fix is to create new temporary
  dictionaries via the analyze_child_block().  The only information that
  needs to propagate back up is the names of the free variables.

  Add more comments and break out a helper function.  This code doesn't
  get any easier to understand when you only look at it once a year.
........
2009-03-31 15:26:37 +00:00
Guido van Rossum 0ad59d467d Issue #5604: non-ASCII characters in module name passed to
imp.find_module() were converted to UTF-8 while the path is
converted to the default filesystem encoding, causing nonsense.
Thanks to Andrew Svetlov.

(This time to the right branch.  Will block duplicate merge to 3.0.2.)
2009-03-30 22:01:35 +00:00
Mark Dickinson bd7926478d Issue #4258: Make it possible to use 30-bit digits for PyLongs:
- new configure option --enable-big-digits
 - new structseq sys.int_info giving information about the internal format
By default, 30-bit digits are enabled on 64-bit machines but
disabled on 32-bit machines.
2009-03-18 20:06:12 +00:00