Commit Graph

5462 Commits

Author SHA1 Message Date
Gregory P. Smith 8edd99d085 Issue #6559: fix the subprocess.Popen pass_fds implementation. Add a unittest.
Issue #7213: Change the close_fds default on Windows to better match the new
default on POSIX.  True when possible (False if stdin/stdout/stderr are
supplied).

Update the documentation to reflect all of the above.
2010-12-14 13:43:30 +00:00
R. David Murray 4d55bf9fcc #10699: fix docstring for tzset: it does not take a parameter
Thanks to Garrett Cooper for the fix.
2010-12-14 00:55:46 +00:00
Gregory P. Smith 51ee270876 issue7213: Open the pipes used by subprocesses with the FD_CLOEXEC flag from
the C code, using pipe2() when available.  Adds unittests for close_fds and
cloexec behaviors.
2010-12-13 07:59:39 +00:00
Alexander Belopolsky 532d091d05 Reverted accidental commit (from r87159) 2010-12-10 18:14:16 +00:00
Alexander Belopolsky fc55789cae Updated UCD version and unicode.org links to Unicode 6.0.0 2010-12-10 18:11:24 +00:00
Hirokazu Yamamoto 524f10359b Should call Py_INCREF for Py_None (Modules/_ssl.c: PySSL_cipher) 2010-12-09 10:49:00 +00:00
Alexander Belopolsky e239d23e8c Issue #6697: Fixed instances of _PyUnicode_AsString() result not checked for NULL 2010-12-08 23:31:48 +00:00
Hirokazu Yamamoto 7ed117addf Issue #10637: Called CloseHandle twice in os.stat/os.lstat (Windows) 2010-12-07 10:24:37 +00:00
Hirokazu Yamamoto 26253bb09e Should use posix_error here. 2010-12-05 04:16:47 +00:00
Hirokazu Yamamoto 74673513e7 Sorry, I had introduced tab in source code. 2010-12-05 02:48:08 +00:00
Gregory P. Smith d4cc7bf993 issue6559: Adds a pass_fds parameter to subprocess.Popen that allows the caller
to list exactly which file descriptors should be kept open.
2010-12-04 11:22:11 +00:00
Georg Brandl c29cc6a8f2 #1569291: speed up array.repeat() by making only O(log n) memcpy() calls; the code follows unicode_repeat. 2010-12-04 11:02:04 +00:00
Georg Brandl 9d8711964f #1772833: add -q command line option. 2010-12-04 10:47:18 +00:00
Hirokazu Yamamoto 427d3149eb Fixed several corner case issues on os.stat/os.lstat related to reparse
points. (Windows)

- Set S_IEXEC via final path name not link name.
- Set S_IFLNK also via FindFirstFile (when CreateFile fails)
2010-12-04 10:16:05 +00:00
Georg Brandl d9e833c70a #6045: provide at least get() and setdefault() for all dbm modules. 2010-12-04 09:14:36 +00:00
Martin v. Löwis 4d0d471a80 Merge branches/pep-0384. 2010-12-03 20:14:31 +00:00
Antoine Pitrou c4df784514 Issue #10272: The ssl module now raises socket.timeout instead of a generic
SSLError on socket timeouts.
2010-12-03 19:59:41 +00:00
Antoine Pitrou f3b68b3f98 Issue #10478: Reentrant calls inside buffered IO objects (for example by
way of a signal handler) now raise a RuntimeError instead of freezing the
current process.
2010-12-03 18:41:39 +00:00
Raymond Hettinger d8ff4658fb Simplify the signature for itertools.accumulate() to match numpy. Handle one item iterable the same way as min()/max(). 2010-12-03 02:09:34 +00:00
Brian Curtin 52173d4959 Fix #9333. Expose os.symlink on Windows only when usable.
In order to create symlinks on Windows, SeCreateSymbolicLinkPrivilege
is an account privilege that is required to be held by the user. Not only
must the privilege be enabled for the account, the activated privileges for
the currently running application must be adjusted to enable the requested
privilege.

Rather than exposing an additional function to be called prior to the user's
first os.symlink call, we handle the AdjustTokenPrivileges Windows API call
internally and only expose os.symlink when the privilege escalation was
successful.

Due to the change of only exposing os.symlink when it's available, we can
go back to the original test skipping methods of checking via `hasattr`.
2010-12-02 18:29:18 +00:00
Raymond Hettinger 482ba77245 Add itertools.accumulate(). 2010-12-01 22:48:00 +00:00
Alexander Belopolsky 41e422a4ff Issue #4113: Added custom __repr__ method to functools.partial. 2010-12-01 20:05:49 +00:00
Georg Brandl e5b99f0fb3 Remove redundant includes of headers that are already included by Python.h. 2010-11-30 09:41:01 +00:00
Georg Brandl 71c23d4473 Include structseq.h in Python.h, and remove now-redundant includes in individual sources. 2010-11-30 09:30:54 +00:00
Raymond Hettinger 69b34bfe9c Issue #10323: Predictable final state for slice(). 2010-11-30 02:49:29 +00:00
Brian Curtin fc889c48ed Fix for #8879.
Amaury noticed that this was originally written in a way that would fail on
names that can't be encoded with the mbcs codec. Restructured the function
to work with wide names first then narrow names second, to fall in line
with the way other functions are written in posixmodule.c.
2010-11-28 23:59:46 +00:00
Stefan Krah 2a7feee76d Windows: fix leak in posix_listdir. 2010-11-27 22:06:49 +00:00
Stefan Krah 30b341f1a5 Fix additional leaks. 2010-11-27 11:44:18 +00:00
Stefan Krah 0e803b3322 Further indentation cleanup. 2010-11-26 16:16:47 +00:00
Stefan Krah 99439266a3 Issue #10383: Fix two leaks. 2010-11-26 12:58:05 +00:00
Amaury Forgeot d'Arc 24aa26b05e Fix compilation warnings seen on Windows.
'typecode' is always an ascii letter, there was no data lost.
2010-11-25 08:13:35 +00:00
Brian Curtin 1b9df39620 Fix #8879. Add os.link support to Windows.
Additionally, the st_ino attribute of stat structures was not being filled
in. This was left out of the fix to #10027 and was noticed due to
test_tarfile failing when applying the patch for this issue. An earlier
version of the fix to #10027 included st_ino, but that attribute got lost
in the shuffle of a few review/fix cycles. All tests pass.
2010-11-24 20:24:31 +00:00
Brian Curtin fc1be6d807 ifdef a Windows specific section. 2010-11-24 13:23:18 +00:00
Brian Curtin f5e76d01ea Fix #10027. st_nlink not set on Windows calls to os.stat/lstat.
Note: This patch has no tests because as of now there is no way to create
links. #8879 adds that and the tests will go in there. I've manually observed
that existing links on my system function properly with this.
2010-11-24 13:14:05 +00:00
Martin v. Löwis 5cbc71e50a Issue #10459: Update CJK character names to Unicode 6.0. 2010-11-22 09:00:02 +00:00
Antoine Pitrou a78f74ce02 Issue #8078: Add constants for higher baud rates in the termios module.
Patch by Rodolpho Eckhardt.
2010-11-20 20:03:08 +00:00
Benjamin Peterson fa73555cfc correct logic when pos is after the string #10467 2010-11-20 17:24:04 +00:00
Antoine Pitrou 664c2d1fc0 Issue #10443: Add the SSLContext.set_default_verify_paths() method. 2010-11-17 20:29:42 +00:00
Antoine Pitrou b6d4ee5361 Issue #10440: Support RUSAGE_THREAD as a constant in the resource module.
Patch by Robert Collins.
2010-11-17 16:19:35 +00:00
Matthias Klose bee3316083 Modules/_io/bufferedio.c (buffered_dealloc_warn): Make it static. 2010-11-16 20:07:51 +00:00
Victor Stinner 47f637ce17 getpath.c: fix test to detech PyUnicode_AsWideChar() failure
PyUnicode_AsWideChar() result is signed, whereas it was stored in a unsigned
variable, and then the test was "n >= 0" which is always true to an unsigned
number. Patch written by Hallvard B Furuseth.
2010-11-10 14:12:20 +00:00
Antoine Pitrou fb0469112f Issue #10022: The dictionary returned by the `getpeercert()` method
of SSL sockets now has additional items such as `issuer` and `notBefore`.
2010-11-09 20:21:19 +00:00
Senthil Kumaran 922e904cca Fix issue10324 - Modules/binascii.c: simplify expressions 2010-11-09 09:59:13 +00:00
Victor Stinner 4fe519bf8d Issue #10359: Remove useless (duplicate) initialization in _csv 2010-11-09 09:40:16 +00:00
Victor Stinner 132ef6cca3 Issue #10359: Remove useless comma, invalid in ISO C 2010-11-09 09:39:41 +00:00
Victor Stinner 9f0b51e4e3 Issue #10359: Use Py_UNICODE for the typecode in array
And don't create non constant array, invalid in ISO C.
2010-11-09 09:38:30 +00:00
Victor Stinner 3e2b7171bf Issue #10359: Remove ";" after function definition, invalid in ISO C 2010-11-09 09:32:19 +00:00
Victor Stinner ae4836df6d Issue #6011: decode PREFIX, EXEC_PREFIX and PYTHONPATH variables using
_Py_char2wchar(), instead of L"" VAR hack, to escape undecodable bytes using
the surrogateescape error handler.
2010-11-08 23:49:47 +00:00
Victor Stinner 2f02a51135 PyUnicode_EncodeFS() raises an exception if _Py_wchar2char() fails
* Add error_pos optional argument to _Py_wchar2char()
 * PyUnicode_EncodeFS() raises a UnicodeEncodeError or MemoryError if
   _Py_wchar2char() fails
2010-11-08 22:43:46 +00:00
Antoine Pitrou 243757eb79 Issue #10180: Pickling file objects is now explicitly forbidden, since
unpickling them produced nonsensical results.
2010-11-05 21:15:39 +00:00
Antoine Pitrou 39a6591507 Issue #10311: The signal module now restores errno before returning from
its low-level signal handler.  Patch by Hallvard B Furuseth.
2010-11-05 19:47:27 +00:00
Hirokazu Yamamoto 09fff7a8d1 Fixed socket_gethostname() on windows. 2010-11-05 17:24:13 +00:00
Antoine Pitrou b5d8204f0f Issue #10279: fix test_gc under Win64. 2010-11-05 00:05:25 +00:00
Antoine Pitrou 2397dd58b7 Issue #10314: improve performance of JSON encoding with sort_keys=True 2010-11-04 16:51:32 +00:00
Hirokazu Yamamoto 3cdd5cb959 Issue #5391: mmap.read_byte() should return unsigned value [0, 255]
instead of signed value [-127, 128].
2010-11-04 12:09:08 +00:00
Senthil Kumaran 95c0700eff Fix Issue 10307 - compile error in readline.c 2010-11-04 03:51:05 +00:00
Antoine Pitrou 87298c4a23 No declarations in the middle of a block (fixes compile under Windows) 2010-10-31 21:03:01 +00:00
Antoine Pitrou e974571d36 Issue #10160: Speed up operator.attrgetter. Patch by Christos Georgiou. 2010-10-31 15:26:04 +00:00
Benjamin Peterson bbb0412ad1 if FileIO.__init__ fails, close fd 2010-10-30 23:16:28 +00:00
Benjamin Peterson 430d469758 fix style 2010-10-30 23:13:57 +00:00
Antoine Pitrou 8d2b51b46a Issue #10253: FileIO leaks a file descriptor when trying to open a file
for append that isn't seekable.  Patch by Brian Brazil.
2010-10-30 16:19:14 +00:00
Benjamin Peterson e857b29fdd plug refleak 2010-10-29 21:37:26 +00:00
Martin v. Löwis 72f48422e2 Issue #9377: Use Unicode API for gethostname on Windows. 2010-10-29 18:20:08 +00:00
Antoine Pitrou e033e06db0 Issue #10093: ResourceWarnings are now issued when files and sockets are
deallocated without explicit closing.  These warnings are silenced by
default, except in pydebug mode.
2010-10-29 10:38:18 +00:00
Antoine Pitrou b156a46b26 Issue #8852: Allow the socket module to build on OpenSolaris. 2010-10-27 20:13:57 +00:00
Antoine Pitrou ea5d17d9af In open(), only set the buffer size from st.st_blksize when it is greater
than 1.  This matches the pure Python implementation in _pyio and should
fix a couple of failures on the NetBSD buildbot.
2010-10-27 19:45:43 +00:00
Jesus Cea 7e9065cf8c Issue #10143: Update "os.pathconf" values 2010-10-25 13:02:04 +00:00
Georg Brandl 770a2be364 These are true PyCFunctions, after adding the second argument to oss_self, no need to cast. 2010-10-24 20:47:32 +00:00
Georg Brandl 08be72d0aa Add a new warning gategory, ResourceWarning, as discussed on python-dev. It is silent by default,
except when configured --with-pydebug.

Emit this warning from the GC shutdown procedure, rather than just printing to stderr.
2010-10-24 15:11:22 +00:00
Georg Brandl 687a1fa546 Add casts (one needed, one for consistency). 2010-10-24 14:21:42 +00:00
Antoine Pitrou 29aad0005d Issue #10185: use Py_hash_t instead of long 2010-10-23 19:42:38 +00:00
Georg Brandl 1e908af335 #6518: enable context manager protocol for ossaudiodev types. 2010-10-23 17:31:52 +00:00
Victor Stinner 2158231433 Issue #6011: getpath: decode VPATH env var from the locale encoding
Instead of casting it to wchar_t* without conversion. It fixes a bug if Python
is compiled a non-ascii directory, different than the source code directory,
with C locale.
2010-10-23 00:13:28 +00:00
Antoine Pitrou ff150f2921 Revert r85797 (and r85798): it broke the Windows buildbots because of
test_multiprocessing's misbehaviour.
2010-10-22 21:41:05 +00:00
Antoine Pitrou 7eecffd05d Issue #9935: Speed up pickling of instances of user-defined classes. 2010-10-22 19:43:59 +00:00
Antoine Pitrou 61ec8de809 For now, remove accept4() code (issue #10115) 2010-10-22 18:44:15 +00:00
Antoine Pitrou d532321f7b Issue #5639: Add a *server_hostname* argument to `SSLContext.wrap_socket`
in order to support the TLS SNI extension.  `HTTPSConnection` and
`urlopen()` also use this argument, so that HTTPS virtual hosts are now
supported.
2010-10-22 18:19:07 +00:00
Georg Brandl 28928aef2e #4829: better error message for invalid file mode 2010-10-21 13:45:52 +00:00
Antoine Pitrou 9583cac633 Issue #10089: Add support for arbitrary -X options on the command-line.
They can be retrieved through a new attribute `sys._xoptions`.
2010-10-21 13:42:28 +00:00
Victor Stinner f933e1ab6f Issue #4388: On Mac OS X, decode command line arguments from UTF-8, instead of
the locale encoding. If the LANG (and LC_ALL and LC_CTYPE) environment variable
is not set, the locale encoding is ISO-8859-1, whereas most programs (including
Python) expect UTF-8. Python already uses UTF-8 for the filesystem encoding and
to encode command line arguments on this OS.
2010-10-20 22:58:25 +00:00
Victor Stinner 07298a1f04 zipimport: remove arbitrary length limit from message formats
PyErr_Format() and PyUnicode_FromFormat() are able to allocate the right buffer
size and to catch memory allocation failures.
2010-10-18 22:45:54 +00:00
Victor Stinner 9e40fad193 zipimport: document archive encoding; fix indentation 2010-10-18 22:34:46 +00:00
Victor Stinner 965a8a1c5b Revert r85699 and r85701 (zipimport): fullname is a module name, not a path
UTF-8 is just fine for module names.
2010-10-18 21:44:33 +00:00
Victor Stinner 8c8ed0a799 zipimport: fix "can't find module ..." error message
I cannot use %U: fullname is a bytes object, not an unicode object. %A format
cannot be used, it adds 'b' (bytes) prefix. So create cant_find_module()
function to decode the filename and raise the error message.
2010-10-18 21:21:02 +00:00
Victor Stinner 0410656b30 zipimport: find_module(), is_package() and get_source() supports surrogates
Use PyUnicode_FSConverter to support surrogates in the full name.
2010-10-18 20:44:08 +00:00
Victor Stinner 269aeb7c0d zipimport: pass path size to make_filename()
Don't hardcode path size in make_filename().
2010-10-18 20:40:59 +00:00
Georg Brandl 016cec75bd Fix hash function type. 2010-10-18 12:24:53 +00:00
Victor Stinner 2a94f4c0ef get_code_from_data() uses the filesystem encoding to encode the module path,
instead of utf-8.
2010-10-18 12:15:34 +00:00
Victor Stinner d36c8217e1 zipimport: read_directory() uses cp437 or utf-8 (in strict mode), depending on
the unicode flag, to decode the filename, instead of the filesystem encoding.
Use the same choice than the zipfile module.
2010-10-18 12:13:46 +00:00
Victor Stinner 08654e18ee zipimport: get_module_code() returns modpath as a Unicode object
... instead of a char*. Encode the module path to the fileystem encoding
(for PyImport_ExecCodeModuleEx) instead of utf-8.
2010-10-18 12:09:02 +00:00
Victor Stinner 26fabe1369 zipimporter_load_module() doesn't destroy mod on error
PyImport_AddModule() returns a borrowed reference. Don't display "import ... #
loaded from Zip ..." on error.
2010-10-18 12:03:25 +00:00
Victor Stinner 72f767e601 zipimport: encode the prefix to the fileystem encoding 2010-10-18 11:44:21 +00:00
Victor Stinner 353349caeb zipimport, get_module_code(): avoid useless _PyUnicode_AsString() 2010-10-18 11:40:40 +00:00
Victor Stinner c342fca222 zipimport: fix indentation 2010-10-18 11:39:05 +00:00
Georg Brandl f038b32d0b Remove more unneeded casts to hashfunc. 2010-10-18 07:35:09 +00:00
Georg Brandl d49bf5e8a5 Fix type of hash function. 2010-10-18 07:30:06 +00:00
Georg Brandl 646fdd6c61 Fix compiler warning about unused static function. 2010-10-18 07:27:55 +00:00
Georg Brandl c7f4af4cbe Fix compiler warnings about formatting pid_t as an int, by always casting to long. 2010-10-18 05:06:18 +00:00
R. David Murray e194dd60f0 #678250: Make mmap flush a noop on ACCESS_READ and ACCESS_COPY.
Patch by Sébastien Sablé.  This solves a test_mmap failure on AIX.
2010-10-18 01:14:06 +00:00
Benjamin Peterson 223f091737 fix strict aliasing warnings 2010-10-17 21:12:18 +00:00