| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
code duplication is to let us get away without a realloc whenever possible;
boosted the init buf size (the cutoff at which we *can* get away without
a realloc) from 100 to 200 so that more files can enjoy this boost; and
allowed other threads to run in all cases. The last two cost something,
but not significantly: in my fat test case, less than a 1% slowdown total.
Since my test case has a great many short lines, that's probably the worst
slowdown, too. While the logic barely changed, there were lots of edits.
This also gets rid of the reference to fp->_cnt, so the last platform
assumption being made here is that fgets doesn't overwrite bytes
capriciously (== beyond the terminating null byte it must write).
|
|
|
|
|
|
| |
variant that never needs to "search from the right".
Also fixed unlikely memory leak in get_line, if string size overflows INTMAX.
Also new std test test_bufio to make sure .readline() works.
|
|
|
|
|
|
| |
realized that this behavior is already present in PyFile_GetLine(),
which is the only place that needs it. A little refactoring of that
function made get_line_raw() redundant.
|
|
|
|
|
| |
These will detect regression on SF bug #127271 and other import statement
bugs.
|
|
|
|
| |
This closes SF bug #127271.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the mapping dictionaries can now contain 1-n mappings, meaning
that character ordinals may be mapped to strings or Unicode object,
e.g. 0x0078 ('x') -> u"abc", causing the ordinal to be replaced by
the complete string or Unicode object instead of just one character.
Another feature introduced by the patch is that of mapping oridnals to
the emtpy string. This allows removing characters.
The patch is different from patch #103100 in that it does not cause a
performance hit for the normal use case of 1-1 mappings.
Written by Marc-Andre Lemburg, copyright assigned to Guido van Rossum.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The mapping dictionaries can now contain 1-n mappings, meaning
that character ordinals may be mapped to strings or Unicode object,
e.g. 0x0078 ('x') -> u"abc", causing the ordinal to be replaced by
the complete string or Unicode object instead of just one character.
Another feature introduced by the patch is that of mapping oridnals to
the emtpy string. This allows removing characters.
The patch is different from patch #103100 in that it does not cause a
performance hit for the normal use case of 1-1 mappings.
Written by Marc-Andre Lemburg, copyright assigned to Guido van Rossum.
|
|
|
|
| |
watch(1)). Updated and untabified the README file.
|
|
|
|
| |
funlockfile()).
|
|
|
|
|
|
|
| |
other ways of reading input. :-(
In the process, I added an optional bufsize argument to the input()
function and the FileInput class.
|
|
|
|
|
|
|
| |
- The raw_input() functionality is moved to a separate function.
- Drop GNU getline() in favor of getc_unlocked(), which exists on more
platforms (and is even a tad faster on my system).
|
| |
|
|
|
|
|
|
|
| |
BTree databases, the key need not be in the database. Also, tell about
the exception if the key is not in the DB for other DB types.
This closes SF bug #127377.
|
|
|
|
|
|
|
| |
the urljoin() function, which exercises the urlparse() and urlunparse()
functions as side effects.
(Moshe, why did we have perfectly empty tests checked in for this?)
|
|
|
|
|
|
|
|
|
| |
urljoin(): Make this conform to RFC 1808 for all examples given in that
RFC (both "Normal" and "Abnormal"), so long as that RFC does
not conflict the older RFC 1630, which also specified
relative URL resolution.
This closes SF bug #110832 (Jitterbug PR#194).
|
|
|
|
| |
has type int in C.
|
|
|
|
|
|
|
|
|
|
| |
an empty keywords dictionary (via apply() or the extended call syntax),
the keywords dict should be ignored. If the keywords dict is not empty,
TypeError should be raised. (Between the restructuring of the call
machinery and this patch, an empty dict in this situation would trigger
a SystemError via PyErr_BadInternalCall().)
Added regression tests to detect errors for this.
|
|
|
|
| |
Patch #103067 with modifications as discussed in email.
|
|
|
|
| |
"previous" and "next_page" to "next". This way the proper icons are found.
|
|
|
|
|
|
|
|
| |
supported as of Python 2.1. We still need to
have an entry for this since it is reasonable
for users to want to understand existing code.
This closes SF bug #122715.
|
|
|
|
|
|
| |
being "for backward compatibility." Also revert to using bisect() in the
example, since Guido thinks that is the best recommendation for typical
usage.
|
|
|
|
|
|
| |
Other minor markup nits fixed.
Make reference to PyErr_Warn() a hyperlink.
|
| |
|
| |
|
|
|
|
|
|
| |
and seek() in the description of seek().
This closes SF bug #126850.
|
| |
|
|
|
|
|
|
| |
explicitly-named bisect_right() in the example code.
This closes SF bug #127055.
|
|
|
|
|
|
| |
*decimal*.
This closes SF bug #127273.
|
| |
|
|
|
|
| |
longer get special treatment. The Py_NotImplemented type is here as well.
|
|
|
|
| |
now as well.
|
|
|
|
| |
now as well.
|
| |
|
|
|
|
|
| |
types no longer get special treatment from abstract.c so more number number
methods have to be implemented.
|
| |
|
| |
|
|
|
|
| |
as the left operand. I don't know if this is a feature or a bug.
|
| |
|
|
|
|
| |
part of the testsuite that breaks. The old behavior may be restored.
|
|
|
|
|
| |
- Define type flag for new style numbers.
- Add Py_NotImplemented.
|
| |
|
| |
|
|
|
|
|
| |
The _setfpucw() function/macro doesn't seem to exist any more;
instead there's an _FPU_SETCW macro.
|
|
|
|
|
| |
checking if it is callable. This is the only place in the test suite
where an __call__ method is called.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
More revision still needed.
Much of the code that was in the mainloop was moved to a series of
helper functions. PyEval_CallObjectWithKeywords was split into two
parts. The first part now only does argument handling. The second
part is now named call_object and delegates the call to a
call_(function,method,etc.) helper.
XXX The call_XXX helper functions should be replaced with tp_call
functions for the respective types.
The CALL_FUNCTION implementation contains three kinds of optimization:
1. fast_cfunction and fast_function are called when the arguments on
the stack can be passed directly to eval_code2() without copying
them into a tuple.
2. PyCFunction objects are dispatched immediately, because they are
presumed to occur more often than anything else.
3. Bound methods are dispatched inline. The method object contains a
pointer to the function object that will be called. The function
is called from within the mainloop, which may allow optimization #1
to be used, too.
The extened call implementation -- f(*args) and f(**kw) -- are
implemented as a separate case in the mainloop. This allows the
common case of normal function calls to execute without wasting time
on checks for extended calls, although it does introduce a small
amount of code duplication.
Also, the unused final argument of eval_code2() was removed. This is
probably the last trace of the access statement :-).
|
| |
|
| |
|
|
|
|
| |
Added test for second one.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
codec to not apply Latin-1 mappings for keys which are not found
in the mapping dictionaries, but instead treat them as undefined
mappings.
The patch was originally written by Martin v. Loewis with some
additional (cosmetic) changes and an updated test script
by Marc-Andre Lemburg.
The standard codecs were recreated from the most current files
available at the Unicode.org site using the Tools/scripts/gencodec.py
tool.
This patch closes the bugs #116285 and #119960.
|