Commit Graph

2635 Commits

Author SHA1 Message Date
Eric Smith 0cb431c071 Code layout changes for PEP 7 compliance. 2007-08-28 01:07:27 +00:00
Eric Smith f6db40994f Moved fieldnameiterator and formatteriterator to stringlib/string_format.h, so that they can be used when backporting to 2.6. 2007-08-27 23:52:26 +00:00
Eric Smith 7a6dd29067 Cleanup in anticipation of moving formatteriterator and fieldnameiterator into stringlib/string_format.h. 2007-08-27 23:30:47 +00:00
Guido van Rossum 35d9428046 There should be no codecs left that return str8 intead of bytes.
(And if there are, they will now get an error when used.  So fix them!)
2007-08-27 18:20:11 +00:00
Eric Smith ddd25825c8 Fixed accidental indentation change. 2007-08-27 11:33:42 +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
Neal Norwitz 247b5154ac This adds a leak, but fixes a crash. The leaking code is:
"{0:.{precision}s}".format('hello world', precision=5)
I pretty sure it's because of the 'precision' keyword.
Still need to investigate further.
2007-08-27 03:22:50 +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 a62db27546 Restore an assert, but move it to the proper place. 2007-08-26 18:20:46 +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 ed2b7397a0 Use unicode and remove support for some uses of str8. 2007-08-26 04:51:10 +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 571861d3d3 Remove assert that seems out of place. It triggers with test_string,
but without it test_string passes.  I'm not sure why it was there.
2007-08-26 03:58:25 +00:00
Neal Norwitz 7e95befeda Use unicode and stop supporting str8 2007-08-26 03:56:04 +00:00
Neal Norwitz 312e10d63e Get rid of more uses of string and use const in a few places. 2007-08-26 02:21:42 +00:00
Neal Norwitz 3ef6a57908 Get rid of compiler warning on 64-bit 2007-08-25 17:08:59 +00:00
Neal Norwitz f616b22450 Support unicode names 2007-08-25 08:13:40 +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 e0a0a6e937 Since PyUnicode_AsString is a public API, don't just assert, but do
a regular check and return an error if not unicode.
2007-08-25 01:04:21 +00:00
Guido van Rossum 523259ba07 Keir Mierle's set operations for dict views (keys/items only of course). 2007-08-24 23:41:22 +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
Guido van Rossum aac530cdec Patch with Keir Mierle: add rich comparisons between dict views and sets,
at least for .keys() and .items() (not .values() of course).
2007-08-24 22:33:45 +00:00
Guido van Rossum 75d38e992e Whitespace cleanup. 2007-08-24 17:33:11 +00:00
Guido van Rossum 10ab4aeb86 Patch by Keir Mierle so that sets can be compared to other objects that know
how to compare themselves to sets.  (Prep work for making dict views more
set-like.)
2007-08-23 23:57:24 +00:00
Guido van Rossum 928115af72 CFunctions' doc strings should be Unicode. 2007-08-23 23:35:15 +00:00
Guido van Rossum 2fa33db12b Finish the work on __round__ and __trunc__.
With Alex Martelli and Keir Mierle.
2007-08-23 22:07:24 +00:00
Neal Norwitz 53cbdaa84c Convert a bunch of constant strings in C to unicode. 2007-08-23 21:42:55 +00:00
Guido van Rossum 2523621693 Change the error reporting when an invalid string is encountered to avoid
reporting s'x' as the input (which is a lie).
2007-08-22 23:28:23 +00:00
Travis E. Oliphant b803c517bf Fix memory leak in arraymodule.c and respond to a few comments by nnorwitz. 2007-08-20 07:16:33 +00:00
Neal Norwitz 30d1c51ac9 Remove _PyObject_Del 2007-08-19 22:48:23 +00:00
Neal Norwitz 666bb419cb SF #1777057, fix memoryview('test') so it works in debug mode too.
Also return a boolean for the readonly flag.

Other cleanup: make sure to set an exception when returning NULL and
reformat the getsets to be shorter by putting them all on one line.
2007-08-19 18:38:46 +00:00
Neal Norwitz faa54a3929 Code review of the new buffer protocol. Mostly add questions that should
be answered with the comments removed.

There are many places that require checks when doing arithmetic for memory
sizes when allocating memory.  Otherwise, overflow is possible with
a subsequent crash.

Fix SF #1777057 which was a result of not initializing the new BufferError
properly.  Had to update the test for exceptions for BufferError too.
2007-08-19 04:23:20 +00:00
Travis E. Oliphant b99f762f10 Merged in py3k-buffer branch to main line. All objects now use the buffer protocol in PEP 3118. 2007-08-18 11:21:56 +00:00
Guido van Rossum 8d991ed2e1 Move some declarations before code, to compile with GCC 2.95. 2007-08-17 15:41:00 +00:00
Walter Dörwald 41980caf64 Apply SF patch #1775604: This adds three new codecs (utf-32, utf-32-le and
ut-32-be). On narrow builds the codecs combine surrogate pairs in the unicode
object into one codepoint on encoding and create surrogate pairs for
codepoints outside the BMP on decoding. Lone surrogates are passed through
unchanged in all cases.

Backport to the trunk will follow.
2007-08-16 21:55:45 +00:00
Guido van Rossum 066100909a Get rid of some dead code and unneeded XXX comments by Neal. 2007-08-16 21:02:22 +00:00
Martin v. Löwis 47383403a0 Implement PEP 3131. Add isidentifier to str. 2007-08-15 07:32:56 +00:00
Martin v. Löwis 13c3e380d1 Add XID_Start and XID_Continue properties to unicodectype. 2007-08-14 22:37:03 +00:00
Martin v. Löwis ff398c6f95 Format bools properly in %d. 2007-08-14 21:57:32 +00:00
Neal Norwitz ab40b30398 Add comment that should be addressed 2007-08-12 17:21:38 +00:00
Skip Montanaro 46fc337395 PyErr_Warn is deprecated in 2.5 - goes away for 3.0 2007-08-12 11:44:53 +00:00
Neal Norwitz 447e7c3981 Fix memory leak 2007-08-12 07:11:25 +00:00
Neal Norwitz 016880229a Kill execfile(), use exec() instead 2007-08-12 00:43:29 +00:00
Neal Norwitz 8dfc4a9bac Remove support for __members__ and __methods__. There still might be
some cleanup to do on this.  Particularly in Python/traceback.c with
getting rid of the getattr if possible and Demo/*metaclasses/Enum.py.
2007-08-11 06:39:53 +00:00
Walter Dörwald 36f938fbdf Fix refleak: decref inputobj after extracting the relavant info (the object
won't go away, as the exception object holds another reference).
2007-08-10 10:11:43 +00:00
Guido van Rossum 11019804f6 In PyFile_WriteString(), call PyUnicode_FromString() instead of
PyString_FromString().  This is arguably more correct, even if it
shouldn't matter much (all the input is likely to be ASCII).
2007-08-09 22:58:05 +00:00
Guido van Rossum 6ca130d0db Oops. The PyObject_Print() function was totally broken; the original code
was relying on PyString.tp_print but that no longer works.
Fortunately it's rarely called; only the gdb 'pyo' command seems affected.
2007-08-09 20:47:59 +00:00