Commit graph

2543 commits

Author SHA1 Message Date
Guido van Rossum
ce3a72aec6 Patch 1267 by Christian Heimes.
Move the initialization of sys.std{in,out,err} and __builtin__.open
to C code.
This solves the problem that "python -S" wouldn't work.
2007-10-19 23:16:50 +00:00
Guido van Rossum
21431e85d5 This is the uncontroversial half of patch 1263 by Thomas Lee:
changes to codecs.c and structmember.c to use PyUnicode instead of
PyString.
2007-10-19 21:48:41 +00:00
Guido van Rossum
3172c5d263 Patch# 1258 by Christian Heimes: kill basestring.
I like this because it makes the code shorter! :-)
2007-10-16 18:12:55 +00:00
Neal Norwitz
e20ad358fd Move decl so it compiles with C89. 2007-10-15 16:08:26 +00:00
Guido van Rossum
00bc0e0a2d Patch #1272, by Christian Heimes and Alexandre Vassalotti.
Changes to make __file__ a proper Unicode object, using the default
filesystem encoding.
This is a bit tricky because the default filesystem encoding isn't
set by the time we import the first modules; at that point we fudge
things a bit.  This is okay since __file__ isn't really used much
except for error reporting.
Tested on OSX and Linux only so far.
2007-10-15 02:52:41 +00:00
Alexandre Vassalotti
70a237179f Remove the buffer API from PyUnicode as specified by PEP 3137. Also,
fix the error message of the 't' format unit, in getargs.c, so that it
asks for bytes, instead of string.
2007-10-14 02:05:51 +00:00
Travis E. Oliphant
ddacf96868 Eliminate use of PyBUF_CHARACTER flag which is no longer part of the buffer interface. Fix up array module to export the correct format for wide-builds. 2007-10-13 21:03:27 +00:00
Guido van Rossum
c5724deb1a get rid of some more PyString uses.
Only the filename is still a PyString now.
(We'll need to deal with the default filesystem encoding to do it right.)
2007-10-10 21:38:59 +00:00
Guido van Rossum
ebe8f8a8ff Minor cleanup of the comment for PyErr_ProgramText() and a tweak to the code
to guarantee the claim that it doesn't set an exception.
2007-10-10 18:53:36 +00:00
Guido van Rossum
bae07c9baf Breaking ground for PEP 3137 implementation:
Get rid of buffer().  Use memoryview() in its place where possible.
In a few places, do things a bit different, because memoryview()
can't slice (yet).
2007-10-08 02:46:15 +00:00
Travis E. Oliphant
8ae62b6094 Change PyBuffer to Py_buffer to be consistent with other non-object structures like Py_complex. Add some more functionality to the memoryview object. 2007-09-23 02:00:13 +00:00
Thomas Wouters
8ce81f767a Merged revisions 58211-58220 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r58211 | facundo.batista | 2007-09-19 19:53:25 +0200 (Wed, 19 Sep 2007) | 4 lines


  Issue #1772851.  Optimization of __hash__ to behave better for big big
  numbers.
........
  r58216 | raymond.hettinger | 2007-09-20 05:03:43 +0200 (Thu, 20 Sep 2007) | 1 line

  Fit nits
........
  r58217 | georg.brandl | 2007-09-20 10:44:59 +0200 (Thu, 20 Sep 2007) | 2 lines

  alternate -> alternative.
........
  r58218 | georg.brandl | 2007-09-20 18:06:07 +0200 (Thu, 20 Sep 2007) | 2 lines

  Patch #1541463: optimize performance of cgi.FieldStorage operations.
........
  r58219 | georg.brandl | 2007-09-20 18:45:27 +0200 (Thu, 20 Sep 2007) | 2 lines

  #1176: document that string methods don't take keyword args.
........
  r58220 | thomas.wouters | 2007-09-20 19:35:10 +0200 (Thu, 20 Sep 2007) | 4 lines


  Try harder to stay within the 79-column limit. There's still two places that go (way) over, but those are harder to fix without suffering in readability.
........
2007-09-20 18:22:40 +00:00
Thomas Wouters
7ce29ca41c Whitespace cleanup. 2007-09-19 21:56:32 +00:00
Thomas Wouters
ce272b6f8a Merged revisions 58203-58210 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r58204 | georg.brandl | 2007-09-19 08:37:19 +0200 (Wed, 19 Sep 2007) | 2 lines

  Fix #1169: remove docstrings in functions for -OO.
........
  r58206 | sean.reifschneider | 2007-09-19 09:52:56 +0200 (Wed, 19 Sep 2007) | 2 lines

  issue1177: Ported Facundo's from urllib2 to urllib, accepting 2xx responses.
........
  r58207 | facundo.batista | 2007-09-19 16:02:03 +0200 (Wed, 19 Sep 2007) | 3 lines


  Annotated the correction to urllib.py, issue #1177
........
  r58208 | facundo.batista | 2007-09-19 17:10:06 +0200 (Wed, 19 Sep 2007) | 7 lines


  Issue #1772851.  Alters long.__hash__ from being *almost* completely
  predictable to being completely predictable.  The value of hash(n)
  is unchanged for any n that's small enough to be representable as an
  int, and also unchanged for the vast majority of long integers n of
  reasonable size.
........
  r58209 | thomas.wouters | 2007-09-19 19:27:29 +0200 (Wed, 19 Sep 2007) | 4 lines


  Fix obvious typo in threaded test.
........
  r58210 | thomas.wouters | 2007-09-19 19:27:43 +0200 (Wed, 19 Sep 2007) | 4 lines


  Whitespace cleanup.
........
2007-09-19 21:19:28 +00:00
Thomas Wouters
89d996e5c2 Merged revisions 57778-58052 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r57820 | georg.brandl | 2007-08-31 08:59:27 +0200 (Fri, 31 Aug 2007) | 2 lines

  Document new shorthand notation for index entries.
........
  r57827 | georg.brandl | 2007-08-31 10:47:51 +0200 (Fri, 31 Aug 2007) | 2 lines

  Fix subitem markup.
........
  r57833 | martin.v.loewis | 2007-08-31 12:01:07 +0200 (Fri, 31 Aug 2007) | 1 line

  Mark registry components as 64-bit on Win64.
........
  r57854 | bill.janssen | 2007-08-31 21:02:23 +0200 (Fri, 31 Aug 2007) | 1 line

  deprecate use of FakeSocket
........
  r57855 | bill.janssen | 2007-08-31 21:02:46 +0200 (Fri, 31 Aug 2007) | 1 line

  remove mentions of socket.ssl in comments
........
  r57856 | bill.janssen | 2007-08-31 21:03:31 +0200 (Fri, 31 Aug 2007) | 1 line

  remove use of non-existent SSLFakeSocket in apparently untested code
........
  r57859 | martin.v.loewis | 2007-09-01 08:36:03 +0200 (Sat, 01 Sep 2007) | 3 lines

  Bug #1737210: Change Manufacturer of Windows installer to PSF.
  Will backport to 2.5.
........
  r57865 | georg.brandl | 2007-09-01 09:51:24 +0200 (Sat, 01 Sep 2007) | 2 lines

  Fix RST link (backport from Py3k).
........
  r57876 | georg.brandl | 2007-09-01 17:49:49 +0200 (Sat, 01 Sep 2007) | 2 lines

  Document sets' ">" and "<" operations (backport from py3k).
........
  r57878 | skip.montanaro | 2007-09-01 19:40:03 +0200 (Sat, 01 Sep 2007) | 4 lines

  Added a note and examples to explain that re.split does not split on an
  empty pattern match. (issue 852532).
........
  r57879 | walter.doerwald | 2007-09-01 20:18:09 +0200 (Sat, 01 Sep 2007) | 2 lines

  Fix wrong function names.
........
  r57880 | walter.doerwald | 2007-09-01 20:34:05 +0200 (Sat, 01 Sep 2007) | 2 lines

  Fix typo.
........
  r57889 | andrew.kuchling | 2007-09-01 22:31:59 +0200 (Sat, 01 Sep 2007) | 1 line

  Markup fix
........
  r57892 | andrew.kuchling | 2007-09-01 22:43:36 +0200 (Sat, 01 Sep 2007) | 1 line

  Add various items
........
  r57895 | andrew.kuchling | 2007-09-01 23:17:58 +0200 (Sat, 01 Sep 2007) | 1 line

  Wording change
........
  r57896 | andrew.kuchling | 2007-09-01 23:18:31 +0200 (Sat, 01 Sep 2007) | 1 line

  Add more items
........
  r57904 | ronald.oussoren | 2007-09-02 11:46:07 +0200 (Sun, 02 Sep 2007) | 3 lines

  Macosx: this patch ensures that the value of MACOSX_DEPLOYMENT_TARGET used
  by the Makefile is also used at configure-time.
........
  r57925 | georg.brandl | 2007-09-03 09:16:46 +0200 (Mon, 03 Sep 2007) | 2 lines

  Fix #883466: don't allow Unicode as arguments to quopri and uu codecs.
........
  r57936 | matthias.klose | 2007-09-04 01:33:04 +0200 (Tue, 04 Sep 2007) | 2 lines

  - Added support for linking the bsddb module against BerkeleyDB 4.6.x.
........
  r57954 | mark.summerfield | 2007-09-04 10:16:15 +0200 (Tue, 04 Sep 2007) | 3 lines

  Added cross-references plus a note about dict & list shallow copying.
........
  r57958 | martin.v.loewis | 2007-09-04 11:51:57 +0200 (Tue, 04 Sep 2007) | 3 lines

  Document that we rely on the OS to release the crypto
  context. Fixes #1626801.
........
  r57960 | martin.v.loewis | 2007-09-04 15:13:14 +0200 (Tue, 04 Sep 2007) | 3 lines

  Patch #1388440: Add set_completion_display_matches_hook and
  get_completion_type to readline.
........
  r57961 | martin.v.loewis | 2007-09-04 16:19:28 +0200 (Tue, 04 Sep 2007) | 3 lines

  Patch #1031213: Decode source line in SyntaxErrors back to its original
  source encoding. Will backport to 2.5.
........
  r57972 | matthias.klose | 2007-09-04 20:17:36 +0200 (Tue, 04 Sep 2007) | 3 lines

  - Makefile.pre.in(buildbottest): Run an optional script pybuildbot.identify
    to include some information about the build environment.
........
  r57973 | matthias.klose | 2007-09-04 21:05:38 +0200 (Tue, 04 Sep 2007) | 2 lines

  - Makefile.pre.in(buildbottest): Remove whitespace at eol.
........
  r57975 | matthias.klose | 2007-09-04 22:46:02 +0200 (Tue, 04 Sep 2007) | 2 lines

  - Fix libffi configure for hppa*-*-linux* | parisc*-*-linux*.
........
  r57980 | bill.janssen | 2007-09-05 02:46:27 +0200 (Wed, 05 Sep 2007) | 1 line

  SSL certificate distinguished names should be represented by tuples
........
  r57985 | martin.v.loewis | 2007-09-05 08:39:17 +0200 (Wed, 05 Sep 2007) | 3 lines

  Patch #1105: Explain that one needs to build the solution
  to get dependencies right.
........
  r57987 | armin.rigo | 2007-09-05 09:51:21 +0200 (Wed, 05 Sep 2007) | 4 lines

  PyDict_GetItem() returns a borrowed reference.
  There are probably a number of places that are open to attacks
  such as the following one, in bltinmodule.c:min_max().
........
  r57991 | martin.v.loewis | 2007-09-05 13:47:34 +0200 (Wed, 05 Sep 2007) | 3 lines

  Patch #786737: Allow building in a tree of symlinks pointing to
  a readonly source.
........
  r57993 | georg.brandl | 2007-09-05 15:36:44 +0200 (Wed, 05 Sep 2007) | 2 lines

  Backport from Py3k: Bug #1684991: explain lookup semantics for __special__ methods (new-style classes only).
........
  r58004 | armin.rigo | 2007-09-06 10:30:51 +0200 (Thu, 06 Sep 2007) | 4 lines

  Patch #1733973 by peaker:
  ptrace_enter_call() assumes no exception is currently set.
  This assumption is broken when throwing into a generator.
........
  r58006 | armin.rigo | 2007-09-06 11:30:38 +0200 (Thu, 06 Sep 2007) | 4 lines

  PyDict_GetItem() returns a borrowed reference.
  This attack is against ceval.c:IMPORT_NAME, which calls an
  object (__builtin__.__import__) without holding a reference to it.
........
  r58013 | georg.brandl | 2007-09-06 16:49:56 +0200 (Thu, 06 Sep 2007) | 2 lines

  Backport from 3k: #1116: fix reference to old filename.
........
  r58021 | thomas.heller | 2007-09-06 22:26:20 +0200 (Thu, 06 Sep 2007) | 1 line

  Fix typo:  c_float represents to C float type.
........
  r58022 | skip.montanaro | 2007-09-07 00:29:06 +0200 (Fri, 07 Sep 2007) | 3 lines

  If this is correct for py3k branch and it's already in the release25-maint
  branch, seems like it ought to be on the trunk as well.
........
  r58023 | gregory.p.smith | 2007-09-07 00:59:59 +0200 (Fri, 07 Sep 2007) | 4 lines

  Apply the fix from Issue1112 to make this test more robust and keep
  windows happy.
........
  r58031 | brett.cannon | 2007-09-07 05:17:50 +0200 (Fri, 07 Sep 2007) | 4 lines

  Make uuid1 and uuid4 tests conditional on whether ctypes can be imported;
  implementation of either function depends on ctypes but uuid as a whole does
  not.
........
  r58032 | brett.cannon | 2007-09-07 06:18:30 +0200 (Fri, 07 Sep 2007) | 6 lines

  Fix a crasher where Python code managed to infinitely recurse in C code without
  ever going back out to Python code in PyObject_Call().  Required introducing a
  static RuntimeError instance so that normalizing an exception there is no
  reliance on a recursive call that would put the exception system over the
  recursion check itself.
........
  r58034 | thomas.heller | 2007-09-07 08:32:17 +0200 (Fri, 07 Sep 2007) | 1 line

  Add a 'c_longdouble' type to the ctypes module.
........
  r58035 | thomas.heller | 2007-09-07 11:30:40 +0200 (Fri, 07 Sep 2007) | 1 line

  Remove unneeded #include.
........
  r58036 | thomas.heller | 2007-09-07 11:33:24 +0200 (Fri, 07 Sep 2007) | 6 lines

  Backport from py3k branch:

  Add a workaround for a strange bug on win64, when _ctypes is compiled
  with the SDK compiler.  This should fix the failing
  Lib\ctypes\test\test_as_parameter.py test.
........
  r58037 | georg.brandl | 2007-09-07 16:14:40 +0200 (Fri, 07 Sep 2007) | 2 lines

  Fix a wrong indentation for sublists.
........
  r58043 | georg.brandl | 2007-09-07 22:10:49 +0200 (Fri, 07 Sep 2007) | 2 lines

  #1095: ln -f doesn't work portably, fix in Makefile.
........
  r58049 | skip.montanaro | 2007-09-08 02:34:17 +0200 (Sat, 08 Sep 2007) | 1 line

  be explicit about the actual location of the missing file
........
2007-09-08 17:39:28 +00:00
Martin v. Löwis
85bcc66bb4 Convert code from sys.stdin.encoding to UTF-8 in
interactive mode. Fixes #1100.
2007-09-04 09:18:06 +00:00
Martin v. Löwis
4a7b5d5b4f Decode input() with stdin.encoding. Fixes #1097. 2007-09-04 05:24:49 +00:00
Martin v. Löwis
5d12abe0b1 Patch #1075: Use wide API to format error messages. 2007-09-03 07:40:24 +00:00
Collin Winter
1966f1c98f Fix refleaks exposed by test_raise. 2007-09-01 20:26:44 +00:00
Eric Smith
37f10386f1 Changed to use 'U' argument to PyArg_ParseTuple, instead of manually checking for unicode objects. 2007-09-01 10:56:01 +00:00
Martin v. Löwis
5deb2101df Explicitly convert err->text to Unicode. Fixes #1069. 2007-08-31 11:17:42 +00:00
Neal Norwitz
64fd6fb254 Ugh, hopefully I can get this right. The code is only compiled on Win64 2007-08-31 05:32:33 +00:00
Neal Norwitz
b879f57b32 Try to fix the problem of passing a non-int on Win64 right this time. 2007-08-31 05:20:36 +00:00
Neal Norwitz
538d17aa23 Try to fix a problem with large values on Win64. Diagnosed by Thomas Heller 2007-08-31 04:31:47 +00:00
Neal Norwitz
c2550c7b1c Remove chr8, we're not likely to need it at this point 2007-08-31 04:17:51 +00:00
Guido van Rossum
71d4a34c39 Customary 2nd submit of this file after it's been changed. 2007-08-31 04:03:25 +00:00
Eric Smith
81936699c8 Added test cases for string.Formatter subclassing.
Made format_spec parameter to builtin format optional, defaults to
empty string.  Added test cases.
2007-08-31 01:14:01 +00:00
Collin Winter
32347fb29b Update import.c's MAGIC value for the new raise syntax (as opposed to merely updating the comment). 2007-08-31 00:42:15 +00:00
Collin Winter
828f04ac3f Issue #1066: implement PEP 3109, 2/3 of PEP 3134. 2007-08-31 00:04:24 +00:00
Thomas Wouters
d2cf20eea2 Remove the simple slicing API. All slicing is now done with slice objects. 2007-08-30 22:57:53 +00:00
Guido van Rossum
63175a1330 [Oops, I forgot half of the patch.]
Patch # 1050 by Amaury Forgeot d'Arc.
On Windows, debug builds insert stack probes, and recursive functions
tend to exhaust the stack faster.
This patch reduces the marshal maximum depth from 2000 to 1500 for debug
builds only. Optimized builds are not affected.
This allows test_marshal to pass with debug builds.
2007-08-29 20:39:13 +00:00
Guido van Rossum
fb67be2f6b Three patches from issue #1047, by Amaury Forgeot d'Arc:
1/ getargs.diff adds the 'Z' and 'Z#' format specifiers for
PyArg_ParseTuple. They mimic z and z# for unicode strings, by accepting
a Unicode or None (in which case the Py_UNICODE* pointer is set to
NULL). With doc and tests.

2/ subprocess.diff converts file PC/_subprocess.c to unicode. We use the
Unicode version of the win32 api (and Z conversion from previous patch)

3/ stdout.diff: sys.stdout must not convert the line endings, Windows
already does it.
Without this patch, when redirecting the output of python, the file
contains \r\r\n for each line. (test_subprocess did catch this)

However, I (GvR) removed the change to _fileio.c (included in the
patches) that prevents closing file descripors < 3 from being closed;
I think that needs to be solved in a different way.
2007-08-29 18:38:11 +00:00
Eric Smith
56e4a840bc Added test to ensure __format__ methods return unicode objects. 2007-08-27 15:31:40 +00:00
Guido van Rossum
a4b8d1de7c Some changes in preparation of stricter rules about mixing str and bytes. 2007-08-27 15:02:28 +00:00
Eric Smith
e226b55963 PEP 3101: Removed _formatter_xxx routines from sysmodule, and made them unicode methods instead (per GvR suggestion). 2007-08-27 11:28:18 +00:00
Neal Norwitz
8a4eb298e2 Fix refleaks in test_unicode and test_string related to the new format code.
Stop polluting namespace.
2007-08-27 07:24:17 +00:00
Neal Norwitz
2bad970293 Make some internal functions static 2007-08-27 06:19:22 +00:00
Eric Smith
7ade6485ab PEP 3101: Completed string.Formatter class. Reimplemented field_name to object transformation. 2007-08-26 22:27:13 +00:00
Neal Norwitz
80e7f27e62 Use unicode and remove support for some uses of str8. 2007-08-26 06:45:23 +00:00
Neal Norwitz
da059e3585 Use unicode 2007-08-26 05:33:45 +00:00
Neal Norwitz
5616c6d690 Fix a couple of warnings 2007-08-26 05:32:41 +00:00
Neal Norwitz
6ea45d3341 Use unicode and remove support for some uses of str8. 2007-08-26 04:19:43 +00:00
Neal Norwitz
a9ea3d9778 Regenerate 2007-08-26 02:06:15 +00:00
Neal Norwitz
a369c5aba6 Use unicode 2007-08-25 07:41:59 +00:00
Eric Smith
8c66326368 Implementation of PEP 3101, Advanced String Formatting.
Known issues:

The string.Formatter class, as discussed in the PEP, is incomplete.

Error handling needs to conform to the PEP.

Need to fix this warning that I introduced in Python/formatter_unicode.c:
Objects/stringlib/unicodedefs.h:26: warning: `STRINGLIB_CMP' defined but not used

Need to make sure sign formatting is correct, more tests needed.

Need to remove '()' sign formatting, left over from an earlier version of the PEP.
2007-08-25 02:26:07 +00:00
Neal Norwitz
e4dc324884 Use unicode for AST attributes 2007-08-25 01:33:49 +00:00
Neal Norwitz
aefab1e2ac Use unicode 2007-08-25 01:04:34 +00:00
Neal Norwitz
f308132cc2 Add const to input string parameters 2007-08-25 00:32:45 +00:00
Neal Norwitz
41103bf6f2 Ensure that code object names (co_name) are unicode.
Verify that they print properly too.
2007-08-24 23:12:06 +00:00
Neal Norwitz
a5d16a3f85 Use unicode for error messages of duplicate args 2007-08-24 22:53:58 +00:00