Serhiy Storchaka
ab479c49d3
Issue #26494 : Fixed crash on iterating exhausting iterators.
...
Affected classes are generic sequence iterators, iterators of str, bytes,
bytearray, list, tuple, set, frozenset, dict, OrderedDict, corresponding
views and os.scandir() iterator.
2016-03-30 20:41:15 +03:00
Serhiy Storchaka
fbb1c5ee06
Issue #26494 : Fixed crash on iterating exhausting iterators.
...
Affected classes are generic sequence iterators, iterators of str, bytes,
bytearray, list, tuple, set, frozenset, dict, OrderedDict, corresponding
views and os.scandir() iterator.
2016-03-30 20:40:02 +03:00
Victor Stinner
7bfa409ff8
Implement finalizer for os.scandir() iterator
...
Issue #26603 :
* Implement finalizer for os.scandir() iterator
* Set the source parameter when emitting the ResourceWarning warning
* Close the iterator before emitting the warning
2016-03-23 00:43:54 +01:00
Victor Stinner
f664dc5834
ResourceWarning: Revert change on socket and scandir
...
io.FileIO has a safe implementation of destructor, but not socket nor scandir.
2016-03-19 02:01:48 +01:00
Victor Stinner
914cde89d4
On ResourceWarning, log traceback where the object was allocated
...
Issue #26567 :
* Add a new function PyErr_ResourceWarning() function to pass the destroyed
object
* Add a source attribute to warnings.WarningMessage
* Add warnings._showwarnmsg() which uses tracemalloc to get the traceback where
source object was allocated.
2016-03-19 01:03:51 +01:00
Victor Stinner
c36674a2c5
Fix usage of PyMem_Malloc() in os.stat()
...
Issue #26563 : Replace PyMem_Malloc() with PyMem_RawMalloc() in the Windows
implementation of os.stat(), since the code is called without holding the GIL.
2016-03-16 14:30:16 +01:00
Victor Stinner
c44f70770b
posix_getcwd(): limit to INT_MAX on Windows
...
It's more to fix a conversion warning during compilation, I don't think that
Windows support current working directory larger than 2 GB ...
2016-03-14 18:07:53 +01:00
Serhiy Storchaka
ffe96ae10b
Issue #25994 : Added the close() method and the support of the context manager
...
protocol for the os.scandir() iterator.
2016-02-11 13:21:30 +02:00
Serhiy Storchaka
fd625c39d0
Issue #26117 : The os.scandir() iterator now closes file descriptor not only
...
when the iteration is finished, but when it was failed with error.
2016-02-08 17:57:22 +02:00
Serhiy Storchaka
988b9bcd88
Issue #26117 : The os.scandir() iterator now closes file descriptor not only
...
when the iteration is finished, but when it was failed with error.
2016-02-08 17:56:36 +02:00
Serhiy Storchaka
ef1585eb9a
Issue #25923 : Added more const qualifiers to signatures of static and private functions.
2015-12-25 20:01:53 +02:00
Serhiy Storchaka
2d06e84455
Issue #25923 : Added the const qualifier to static constant arrays.
2015-12-25 19:53:18 +02:00
Serhiy Storchaka
8bc2b4d522
Issue #25890 : Removed yet one unused variable.
2015-12-18 10:06:58 +02:00
Serhiy Storchaka
9b3a2eec1c
Issues #25890 , #25891 , #25892 : Removed unused variables in Windows code.
...
Reported by Alexander Riccio.
2015-12-18 10:03:13 +02:00
Victor Stinner
9fdaff30db
Merge 3.5
2015-12-14 00:22:10 +01:00
Victor Stinner
e847d7170d
Issue #25846 : Fix usage of Py_ARRAY_LENGTH() in win32_wchdir() (new try)
2015-12-14 00:21:50 +01:00
Victor Stinner
6b8f0c892a
(Merge 3.5) Issue #25846 : Fix usage of Py_ARRAY_LENGTH() in win32_wchdir()
2015-12-13 21:41:12 +01:00
Victor Stinner
ed53782ed5
Issue #25846 : Fix usage of Py_ARRAY_LENGTH() in win32_wchdir()
2015-12-13 21:40:26 +01:00
Victor Stinner
5ebae87628
Issue #25207 , #14626 : Fix my commit.
...
It doesn't work to use #define XXX defined(YYY)" and then "#ifdef XXX"
to check YYY.
2015-09-22 01:29:33 +02:00
Victor Stinner
4552ced916
Issue #25207 , #14626 : Fix ICC compiler warnings in posixmodule.c
...
Replace "#if XXX" with #ifdef XXX".
2015-09-21 22:37:15 +02:00
Victor Stinner
024364a89a
Merge 3.5 (os.waitpid)
2015-09-15 10:24:27 +02:00
Victor Stinner
d3ffd32767
Issue #25118 : Fix a regression of Python 3.5.0 in os.waitpid() on Windows.
...
Add an unit test on os.waitpid()
2015-09-15 10:11:03 +02:00
Martin Panter
3f560c16e5
Merge 3.5 into 3.6
2015-09-09 06:28:08 +00:00
Martin Panter
6088b7bd49
Merge 3.4 into 3.5
2015-09-09 06:27:43 +00:00
Martin Panter
9499413508
os.sendfile(headers=None, trailers=None) arguments are not actually accepted
...
Needs to be tested on a BSD.
2015-09-09 05:29:24 +00:00
Martin Panter
a122b5a1fd
Issue #23738 : Merge 3.5 into 3.6
2015-09-09 03:01:17 +00:00
Martin Panter
0ff89099c7
Issue #23738 : Merge 3.4 into 3.5
2015-09-09 01:56:53 +00:00
Martin Panter
bf19d16950
Issue #23738 : Document and test actual keyword parameter names
...
Also fix signature because os.utime(..., ns=None) is not allowed.
2015-09-09 01:01:13 +00:00
Serhiy Storchaka
56f6e76c68
Issue #15989 : Fixed some scarcely probable integer overflows.
...
It is very unlikely that they can occur in real code for now.
2015-09-06 21:25:30 +03:00
Victor Stinner
fed0931de4
Merge 3.5 (ICC)
2015-09-03 21:34:03 +02:00
Victor Stinner
5b6917e60d
Merge 3.4 (ICC)
2015-09-03 21:32:44 +02:00
Victor Stinner
528a9ab1f0
Don't use defined() in C preprocessor macros
...
The ICC compiler doesn't seem to support defined() in macro expansion. Example
of warning:
warning #3199 : "defined" is always false in a macro expansion in Microsoft mode
2015-09-03 21:30:26 +02:00
Charles-François Natali
80d62e628b
Issue #23530 : fix clinic comment.
2015-08-13 20:37:08 +01:00
Charles-François Natali
dc87e4b885
Issue #23530 : Improve os.cpu_count() description.
...
Patch by Julian Taylor.
2015-07-13 21:01:39 +01:00
Serhiy Storchaka
f0b5015edb
Converted os._getfullpathname() and os._isdir() to Argument Clinic.
2015-05-13 00:52:39 +03:00
Victor Stinner
cc0bbbc781
(Merge 3.4) Issue #9246 : On POSIX, os.getcwd() now supports paths longer than
...
1025 bytes. Patch written by William Orr.
2015-04-25 00:21:52 +02:00
Victor Stinner
4403d7def0
Issue #9246 : On POSIX, os.getcwd() now supports paths longer than 1025 bytes
...
Patch written by William Orr.
2015-04-25 00:16:10 +02:00
Christian Heimes
8714cfdc4a
Get rid of unused-but-set-variable warning. len and len2 should be equal and len2 is technically more correct, too.
2015-04-21 10:57:41 +02:00
Serhiy Storchaka
7e9d1d1a1b
Issue #23908 : os functions now reject paths with embedded null character
...
on Windows instead of silently truncate them.
Removed no longer used _PyUnicode_HasNULChars().
2015-04-20 10:12:28 +03:00
Serhiy Storchaka
2b0d2007a1
Issue #23908 : os functions now reject paths with embedded null character
...
on Windows instead of silently truncate them.
2015-04-20 09:53:58 +03:00
Larry Hastings
89964c48d1
Issue #23944 : Argument Clinic now wraps long impl prototypes at column 78.
2015-04-14 18:07:59 -04:00
Benjamin Peterson
5646de47e1
make DirEntryType and ScandirIteratorType static ( closes #23918 )
2015-04-12 17:56:34 -04:00
Steve Dower
a1c7e727c8
Issue #23668 : Suppresses invalid parameter handler around chsize calls.
2015-04-12 00:26:43 -04:00
Steve Dower
8fc8980c96
Issue #23524 : Replace _PyVerify_fd function with calls to _set_thread_local_invalid_parameter_handler.
2015-04-12 00:26:27 -04:00
Steve Dower
fe0a41aae4
Issue #23668 : Adds support for os.truncate and os.ftruncate on Windows
2015-03-20 19:50:46 -07:00
Serhiy Storchaka
a4c6badfdd
Issue #23501 : #include "clinic/posixmodule.c.h" was in the section skipped on Windows.
2015-04-04 23:35:52 +03:00
Serhiy Storchaka
1009bf18b3
Issue #23501 : Argumen Clinic now generates code into separate files by default.
2015-04-03 23:53:51 +03:00
Larry Hastings
0759f84d62
Issue #23500 : Argument Clinic is now smarter about generating the "#ifndef"
...
(empty) definition of the methoddef macro: it's only generated once, even
if Argument Clinic processes the same symbol multiple times, and it's emitted
at the end of all processing rather than immediately after the first use.
2015-04-03 13:09:02 -07:00
Victor Stinner
e134a7fe36
Issue #23752 : _Py_fstat() is now responsible to raise the Python exception
...
Add _Py_fstat_noraise() function when a Python exception is not welcome.
2015-03-30 10:09:31 +02:00
Victor Stinner
dca028b86a
Issue #22117 : Fix os.utime(), it now rounds the timestamp towards minus
...
infinity (-inf) instead of rounding towards zero.
Replace _PyTime_ROUND_DOWN with _PyTime_ROUND_FLOOR.
2015-03-30 01:02:57 +02:00
Steve Dower
2ea51c98db
Closes #9445 : Removes detection of GetFinalPathNameByHandle
2015-03-20 21:49:12 -07:00
Victor Stinner
66aab0c4b5
Issue #23708 : Add _Py_read() and _Py_write() functions to factorize code handle
...
EINTR error and special cases for Windows.
These functions now truncate the length to PY_SSIZE_T_MAX to have a portable
and reliable behaviour. For example, read() result is undefined if counter is
greater than PY_SSIZE_T_MAX on Linux.
2015-03-19 22:53:20 +01:00
Victor Stinner
a555cfcb73
Issue #23694 : Enhance _Py_open(), it now raises exceptions
...
* _Py_open() now raises exceptions on error. If open() fails, it raises an
OSError with the filename.
* _Py_open() now releases the GIL while calling open()
* Add _Py_open_noraise() when _Py_open() cannot be used because the GIL is not
held
2015-03-18 00:22:14 +01:00
Victor Stinner
35a97c0bed
Issue #22524 : Fix os.scandir() for platforms which don't have a d_type field in
...
the dirent structure (ex: OpenIndiana).
2015-03-08 02:59:09 +01:00
Victor Stinner
6036e4431d
Issue #22524 : New os.scandir() function, part of the PEP 471: "os.scandir()
...
function -- a better and faster directory iterator". Patch written by Ben
Hoyt.
2015-03-08 01:58:04 +01:00
Steve Dower
d81431f587
Issue #23524 : Replace _PyVerify_fd function with calling _set_thread_local_invalid_parameter_handler on every thread.
2015-03-06 14:47:02 -08:00
Serhiy Storchaka
06a13f81ea
Issue #23152 : Move declarations back to posixmodule.c.
...
Declarations of Windows-specific auxilary functions need Windows types
from windows.h. Instead of including windows.h in Python.h and making
it available to all Windows users, it is simpler and safer just move
declarations to the single file that needs them.
2015-02-22 21:34:54 +02:00
Serhiy Storchaka
12ebbc74f1
Issue #23152 : Move declaration into a header and exclude from stable API.
2015-02-22 19:39:36 +02:00
Steve Dower
bf1f376b3e
Issue #23152 : Renames time_t_to_FILE_TIME to _Py_time_t_to_FILE_TIME, removes unused struct win32_stat and return value
2015-02-21 15:26:02 -08:00
Steve Dower
a2af1a5a5a
Issue #23152 : Renames attribute_data_to_stat to _Py_attribute_data_to_stat
2015-02-21 10:04:10 -08:00
Steve Dower
f2f373f593
Issue #23152 : Implement _Py_fstat() to support files larger than 2 GB on Windows.
...
fstat() may fail with EOVERFLOW on files larger than 2 GB because the file size type is an signed 32-bit integer.
2015-02-21 08:44:05 -08:00
Serhiy Storchaka
4d0d982985
Issue #23446 : Use PyMem_New instead of PyMem_Malloc to avoid possible integer
...
overflows. Added few missed PyErr_NoMemory().
2015-02-16 13:33:32 +02:00
Serhiy Storchaka
1a1ff29659
Issue #23446 : Use PyMem_New instead of PyMem_Malloc to avoid possible integer
...
overflows. Added few missed PyErr_NoMemory().
2015-02-16 13:28:22 +02:00
Charles-François Natali
6e6c59b508
Issue #23285 : PEP 475 -- Retry system calls failing with EINTR.
2015-02-07 13:27:50 +00:00
Gregory P. Smith
bd4976bbd3
Always #define _PyLong_FromDev as we always need it to compile rather than
...
only defining it when HAVE_MKNOD && HAVE_MAKEDEV are true.
This "oops" issue reported by John E. Malmberg on core-mentorship.
(what kinds of systems don't HAVE_MKNOD && HAVE_MAKEDEV?)
2015-01-28 16:08:07 -08:00
Gregory P. Smith
702dada2c5
Always #define _PyLong_FromDev as we always need it to compile rather than
...
only defining it when HAVE_MKNOD && HAVE_MAKEDEV are true.
This "oops" issue reported by John E. Malmberg on core-mentorship.
(what kinds of systems don't HAVE_MKNOD && HAVE_MAKEDEV?)
2015-01-28 16:07:52 -08:00
Steve Dower
7d0e0c9f7b
Closes #23253 : Delay-load ShellExecute
2015-01-24 08:18:24 -08:00
Serhiy Storchaka
acdb7c158a
Issue #23098 : 64-bit dev_t is now supported in the os module.
2015-01-18 11:17:39 +02:00
Serhiy Storchaka
b2653b344e
Issue #23098 : 64-bit dev_t is now supported in the os module.
2015-01-18 11:12:11 +02:00
Serhiy Storchaka
56a6d855e2
Removed duplicated words in in comments and docs.
2014-12-01 18:28:43 +02:00
Steve Dower
65e4cb10d9
Issue #22919 : Windows build updated to support VC 14.0 (Visual Studio 2015), which will be used for the official 3.5 release.
2014-11-22 12:54:57 -08:00
Victor Stinner
cbc18f328c
Issue #9647 : os.confstr() ensures that the second call to confstr() returns the
...
same length.
2014-12-05 22:51:51 +01:00
Serhiy Storchaka
83000a490a
Removed duplicated words in in comments and docs.
2014-12-01 18:30:14 +02:00
Victor Stinner
f427a14156
Issue #22592 : Drop support of the Borland C compiler to build Python
...
The distutils module still supports it to build extensions.
2014-10-22 12:33:23 +02:00
Georg Brandl
bfd7881aa6
#22568 : merge with 3.4
2014-10-12 08:45:26 +02:00
Georg Brandl
e1a7d9dbf5
Closes #22568 : fix UTIME_TO_* macros in posixmodule for rare cases.
2014-10-12 08:45:15 +02:00
Victor Stinner
d42c4282b9
Closes #22579 : Fix posixmodule.c to support any C compiler on Windows
2014-10-10 00:09:47 +02:00
Victor Stinner
67e2e6d600
(Merge 3.4) Issue #22568 : Fix compilation of posixmodule.c with Open Watcom:
...
rename "utime" variable to "ut" to avoid conflict with the C utime() function.
Patch written by Jeffrey Armstrong.
2014-10-09 13:53:45 +02:00
Victor Stinner
484df0075a
Issue #22568 : Fix compilation of posixmodule.c with Open Watcom: rename "utime"
...
variable to "ut" to avoid conflict with the C utime() function. Patch written
by Jeffrey Armstrong.
2014-10-09 13:52:31 +02:00
Victor Stinner
ec39e26881
(Merge 3.4) Issue #22396 : On 32-bit AIX platform, don't expose
...
os.posix_fadvise() nor os.posix_fallocate() because their prototypes in system
headers are wrong.
2014-09-30 12:35:58 +02:00
Victor Stinner
d6b176905d
Issue #22396 : On 32-bit AIX platform, don't expose os.posix_fadvise() nor
...
os.posix_fallocate() because their prototypes in system headers are wrong.
2014-09-30 12:20:05 +02:00
Serhiy Storchaka
d8a1447c99
Issue #22215 : Now ValueError is raised instead of TypeError when str or bytes
...
argument contains not permitted null character or byte.
2014-09-06 20:07:17 +03:00
Victor Stinner
706768c687
Issue #22156 : Fix some "comparison between signed and unsigned integers"
...
compiler warnings in the Modules/ subdirectory.
2014-08-16 01:03:39 +02:00
Larry Hastings
a73cb8a6b8
Issue #22120 : For functions using an unsigned integer return converter,
...
Argument Clinic now generates a cast to that type for the comparison
to -1 in the generated code. (This supresses a compilation warning.)
2014-08-05 19:55:21 +10:00
Larry Hastings
b1dc112dca
More fixes for the unhappy AMD FreeBSD 9 buildbot. Fingers crossed.
2014-08-05 16:06:16 +10:00
Larry Hastings
548095cd4f
Fix for AMD FreeBSD 9 buildbot (hopefully), broken by my last checkin.
2014-08-05 16:00:03 +10:00
Larry Hastings
2f93635d34
Issue #20170 : Convert posixmodule to use Argument Clinic.
2014-08-05 14:04:04 +10:00
Victor Stinner
1db9e7bb19
Issue #22054 : Add os.get_blocking() and os.set_blocking() functions to get and
...
set the blocking mode of a file descriptor (False if the O_NONBLOCK flag is
set, True otherwise). These functions are not available on Windows.
2014-07-29 22:32:47 +02:00
Victor Stinner
b28ed92dd0
Issue #21932 : os.read() now uses a :c:func:`Py_ssize_t` type instead of
...
:c:type:`int` for the size to support reading more than 2 GB at once. On
Windows, the size is truncted to INT_MAX. As any call to os.read(), the OS
may read less bytes than the number of requested bytes.
2014-07-11 17:04:41 +02:00
Zachary Ware
63f277b694
Issue #21741 : Add st_file_attributes to os.stat_result on Windows.
...
Patch by Ben Hoyt.
2014-06-19 09:46:37 -05:00
Tim Golden
0321cf2550
Issue18314 Allow unlink to remove junctions. Includes support for creating junctions. Patch by Kim Gräsman
2014-05-05 19:46:17 +01:00
Tim Golden
fbf963c064
Backed out changeset: 17df50df62c7
2014-04-27 18:35:36 +01:00
Tim Golden
4675d798bf
Issue #18314 os.unlink will now remove junction points on Windows. Patch by Kim Gräsman.
2014-04-27 18:00:10 +01:00
doko@ubuntu.com
4a173bc4ed
Fixes for KFreeBSD and the Hurd:
...
- Issue #21274 : Define PATH_MAX for GNU/Hurd in Python/pythonrun.c.
- Issue #21276 : posixmodule: Don't define USE_XATTRS on KFreeBSD and the Hurd.
- Issue #21275 : Fix a socket test on KFreeBSD.
2014-04-17 19:47:16 +02:00
Victor Stinner
3c1b379ebd
Issue #20320 : select.select() and select.kqueue.control() now round the timeout
...
aways from zero, instead of rounding towards zero.
It should make test_asyncio more reliable, especially test_timeout_rounding() test.
2014-02-17 00:02:43 +01:00
Benjamin Peterson
e18e787e70
merge 3.3 ( #20594 )
2014-02-11 10:19:12 -05:00
Benjamin Peterson
932bba33f2
avoid name clash with posix_close ( closes #20594 )
2014-02-11 10:16:16 -05:00
Larry Hastings
b082731fbb
Issue #20517 : Functions in the os module that accept two filenames
...
now register both filenames in the exception on failure.
This required adding new C API functions allowing OSError exceptions
to reference two filenames instead of one.
2014-02-09 22:05:19 -08:00
Serhiy Storchaka
dfe98a102e
Issue #20437 : Fixed 22 potential bugs when deleting objects references.
2014-02-09 13:46:20 +02:00
Serhiy Storchaka
505ff755d7
Issue #20437 : Fixed 21 potential bugs when deleting objects references.
2014-02-09 13:33:53 +02:00