Stéphane Wirtel
3d86e484de
bpo-32681: Fix an uninitialized variable in the C implementation of os.dup2 (GH-5346)
...
See https://bugs.python.org/issue32441 for where this was introduced.
2018-01-29 22:04:36 -08:00
Pablo Galindo
0cd6bca655
bpo-20104: Fix leaks and errors in new os.posix_spawn (GH-5418)
...
* Fix memory leaks and error handling in posix spawn
* Improve error handling when destroying the file_actions object
* Py_DECREF the result of PySequence_Fast on error
* Handle uninitialized pid
* Use OSError if file actions fails to initialize
* Move _file_actions to outer scope to avoid undefined behaviour
* Remove HAVE_POSIX_SPAWN define in Modules/posixmodule.c
* Unshadow exception and clean error message
2018-01-29 12:34:42 -08:00
Chih-Hsuan Yen
8997f9cd1a
bpo-32705: Current Android does not have posix_spawn ( #5413 )
2018-01-29 10:50:35 +01:00
Pablo Galindo
6c6ddf97c4
bpo-20104: Expose `posix_spawn` in the os module (GH-5109)
...
Add os.posix_spawn to wrap the low level POSIX API of the same name.
Contributed by Pablo Galindo.
2018-01-28 17:56:10 -08:00
jcea
6c51d51880
bpo-32659: Solaris "stat" should support "st_fstype" ( #5307 )
...
* bpo-32659: Solaris "stat" should support "st_fstype"
* Add 'versionadded'
2018-01-28 14:00:08 +01:00
Pablo Galindo
4defba3b95
bpo-31368: Expose preadv and pwritev in the os module ( #5239 )
2018-01-27 17:16:37 +01:00
Michael Felt
502d551c6d
bpo-32390: Fix compilation failure on AIX after f_fsid was added to os.statvfs() ( #4972 )
2018-01-05 13:01:58 +01:00
Benjamin Peterson
bbdb17d19b
return the new file descriptor from os.dup2 (closes bpo-32441) ( #5041 )
2017-12-29 13:13:06 -08:00
Michael Felt
c5ae169e1b
bpo-26439 Fix ctypes.util.find_library failure on AIX ( #4507 )
...
Implement find_library() support in ctypes/util for AIX.
Add some AIX specific tests.
2017-12-19 13:58:49 +01:00
Giuseppe Scrivano
96a5e50a5d
bpo-32143: add f_fsid to os.statvfs() ( #4571 )
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2017-12-14 17:46:46 -05:00
Anthony Sottile
233ef249cc
bpo-32277: Fix exception raised from chmod(..., follow_symlinks=False) ( #4797 )
2017-12-14 18:57:55 +02:00
Erik Bray
03eb11f0b3
bpo-16135: Cleanup: Code rot left over from OS/2 support (GH-4147)
...
Remove dangling references to PYCC_VACPP that are not relelvant
since removal of OS/2 support.
2017-10-27 05:27:06 -07:00
Victor Stinner
850a18e03e
bpo-30768: Recompute timeout on interrupted lock (GH-4103)
...
Fix the pthread+semaphore implementation of
PyThread_acquire_lock_timed() when called with timeout > 0 and
intr_flag=0: recompute the timeout if sem_timedwait() is interrupted
by a signal (EINTR).
See also the PEP 475.
The pthread implementation of PyThread_acquire_lock() now fails with
a fatal error if the timeout is larger than PY_TIMEOUT_MAX, as done
in the Windows implementation.
The check prevents any risk of overflow in PyThread_acquire_lock().
Add also PY_DWORD_MAX constant.
2017-10-24 16:53:32 -07:00
Victor Stinner
01b5aab7bf
bpo-31827: Remove os.stat_float_times() (GH-4061)
2017-10-24 02:02:00 -07:00
Victor Stinner
a99121526a
os.startfile(): add a C comment on security ( #3877 )
...
LoadLibrary("SHELL32") is not vulnerable to DLL hijacking.
2017-10-13 13:46:57 -07:00
Masayuki Yamamoto
731e189014
bpo-25658: Implement PEP 539 for Thread Specific Storage (TSS) API (GH-1362)
...
See PEP 539 for details.
Highlights of changes:
- Add Thread Specific Storage (TSS) API
- Document the Thread Local Storage (TLS) API as deprecated
- Update code that used TLS API to use TSS API
2017-10-06 20:41:34 +10:00
Benjamin Peterson
288d1daada
remove support for BSD/OS (closes bpo-31624) ( #3812 )
2017-09-28 22:44:27 -07:00
Antoine Pitrou
a6a4dc816d
bpo-31370: Remove support for threads-less builds ( #3385 )
...
* Remove Setup.config
* Always define WITH_THREAD for compatibility.
2017-09-07 18:56:24 +02:00
Christian Heimes
75b961869a
bpo-31343: Include sys/sysmacros.h ( #3318 )
...
Include sys/sysmacros.h for major(), minor(), and makedev(). GNU C libray
plans to remove the functions from sys/types.h.
Signed-off-by: Christian Heimes <christian@python.org>
2017-09-05 15:53:09 +02:00
Christopher Wilcox
c67bae0478
bpo-30581: Windows: os.cpu_count() returns wrong number of processors ( #2934 )
...
* Fixes #30581 by adding a path to use newer GetMaximumProcessorCount API on Windows calls to os.cpu_count()
* Add NEWS.d entry for bpo-30581, os.cpu_count on Windows.
* Tweak NEWS entry
2017-08-30 11:01:08 +02:00
Коренберг Марк
d4b93e21c2
bpo-31106: Fix handling of erros in posix_fallocate() and posix_fadvise() ( #3000 ) ( #3000 )
2017-08-14 06:55:16 -07:00
Ville Skyttä
49b2734bf1
Spelling fixes ( #2902 )
2017-08-03 09:00:59 +03:00
Serhiy Storchaka
1180e5a518
bpo-30879: os.listdir() and os.scandir() now emit bytes names when ( #2634 )
...
called with bytes-like argument.
2017-07-11 06:36:46 +03:00
Serhiy Storchaka
f7eae0adfc
[security] bpo-13617: Reject embedded null characters in wchar* strings. ( #2302 )
...
Based on patch by Victor Stinner.
Add private C API function _PyUnicode_AsUnicode() which is similar to
PyUnicode_AsUnicode(), but checks for null characters.
2017-06-28 08:30:06 +03:00
Eric N. Vander Weele
a7874c73c0
bpo-30769: Fix reference leak introduced in 77703942c5
( #2416 )
...
New error condition paths were introduced, which did not decrement
`key2` and `val2` objects. Therefore, decrement references before
jumping to the error label.
Signed-off-by: Eric N. Vander Weele <ericvw@gmail.com>
2017-06-27 03:35:20 +02:00
Serhiy Storchaka
77703942c5
bpo-30746: Prohibited the '=' character in environment variable names ( #2382 )
...
in `os.putenv()` and `os.spawn*()`.
2017-06-25 07:33:01 +03:00
Victor Stinner
c8d6ab2e25
bpo-30602: Fix lastarg in os.spawnve() ( #2287 )
...
Fix a regression introduced by myself in the commit
526b22657c
.
2017-06-23 15:04:46 +02:00
Victor Stinner
8acb4cf2b3
bpo-30602: Fix refleak in os.spawnv() ( #2212 )
...
When os.spawnv() fails while handling arguments, free correctly
argvlist: pass lastarg+1 rather than lastarg to free_string_array()
to also free the first item.
2017-06-15 15:30:40 +02:00
Victor Stinner
526b22657c
bpo-30602: Fix refleak in os.spawnve() ( #2184 )
...
When os.spawnve() fails while handling arguments, free correctly
argvlist: pass lastarg+1 rather than lastarg to free_string_array()
to also free the first item.
2017-06-14 14:26:21 +02:00
messi Liao
0d322181d9
bpo-30650: Fixed a syntax error: missed right parentheses ( #2154 )
2017-06-13 17:30:43 +03:00
Gregory P. Smith
163468a766
bpo-16500: Don't use string constants for os.register_at_fork() behavior ( #1834 )
...
Instead use keyword only arguments to os.register_at_fork for each of the scenarios.
Updates the documentation for clarity.
2017-05-29 10:03:41 -07:00
Antoine Pitrou
346cbd351e
bpo-16500: Allow registering at-fork handlers ( #1715 )
...
* bpo-16500: Allow registering at-fork handlers
* Address Serhiy's comments
* Add doc for new C API
* Add doc for new Python-facing function
* Add NEWS entry + doc nit
2017-05-27 17:50:54 +02:00
xdegaye
50e86033de
bpo-29619: Do not use HAVE_LARGEFILE_SUPPORT for type conversions (GH-1666).
...
bpo-29619: Do not use HAVE_LARGEFILE_SUPPORT for type conversions (GH-1666).
* Use only the LongLong form for the conversions.
2017-05-22 11:15:08 +02:00
Serhiy Storchaka
bf623ae884
bpo-30061: Check if PyObject_Size()/PySequence_Size()/PyMapping_Size() ( #1096 )
...
raised an error.
Replace them with using concrete types API that never fails if appropriate.
2017-04-19 20:03:52 +03:00
Serhiy Storchaka
ea720fe7e9
bpo-25996: Added support of file descriptors in os.scandir() on Unix. ( #502 )
...
os.fwalk() is sped up by 2 times by using os.scandir().
2017-03-30 09:12:31 +03:00
Victor Stinner
0f6d73343d
bpo-29619: Convert st_ino using unsigned integer ( #557 )
...
bpo-29619: os.stat() and os.DirEntry.inodeo() now convert inode
(st_ino) using unsigned integers.
2017-03-09 17:34:28 +01:00
Yen Chi Hsuan
72e81d00ee
bpo-29556: Remove unused #include <langinfo.h> ( #98 )
...
bltinmodule.c: Added in b744ba1
and no longer necessary since d64e8a7
posixmodule.c: Added in d1cd4d4
and no longer necessary since efb00c0
pythonrun.c: Added in 73d538b
and no longer necessary since d600951
sysmodule.c: Added in 5467d4c
and no longer necessary since a2c17c5
2017-02-16 00:34:30 +01:00
Serhiy Storchaka
095ef73492
Issue #29513 : Fix outdated comment and remove redundand code is os.scandir().
2017-02-09 20:05:51 +02:00
Serhiy Storchaka
228b12edcc
Issue #28999 : Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever
...
possible. Patch is writen with Coccinelle.
2017-01-23 09:47:21 +02:00
Xiang Zhang
1dfaa6c38a
Issue #29092 : Merge 3.6.
2017-01-22 13:10:12 +08:00
Xiang Zhang
4459e009ed
Issue #29092 : Sync os.stat's doc and docstring on path type.
2017-01-22 13:04:17 +08:00
Xiang Zhang
ce16c6827c
Issue #29034 : Merge 3.6.
2017-01-08 23:30:05 +08:00
Xiang Zhang
04316c4cc8
Issue #29034 : Fix memory leak and use-after-free in path_converter.
2017-01-08 23:26:57 +08:00
Victor Stinner
f17c3de263
Use _PyObject_CallNoArg()
...
Replace:
PyObject_CallFunctionObjArgs(callable, NULL)
with:
_PyObject_CallNoArg(callable)
2016-12-06 18:46:19 +01:00
Victor Stinner
9a2329f9e1
Issue #28152 : Fix -Wunreachable-code warnings on Clang
...
Don't declare dead code when the code is declared with Clang.
2016-12-05 17:56:36 +01:00
Victor Stinner
de4ae3d486
Backed out changeset b9c9691c72c5
...
Issue #28858 : The change b9c9691c72c5 introduced a regression. It seems like
_PyObject_CallArg1() uses more stack memory than
PyObject_CallFunctionObjArgs().
2016-12-04 22:59:09 +01:00
Victor Stinner
27580c1fb5
Replace PyObject_CallFunctionObjArgs() with fastcall
...
* PyObject_CallFunctionObjArgs(func, NULL) => _PyObject_CallNoArg(func)
* PyObject_CallFunctionObjArgs(func, arg, NULL) => _PyObject_CallArg1(func, arg)
PyObject_CallFunctionObjArgs() allocates 40 bytes on the C stack and requires
extra work to "parse" C arguments to build a C array of PyObject*.
_PyObject_CallNoArg() and _PyObject_CallArg1() are simpler and don't allocate
memory on the C stack.
This change is part of the fastcall project. The change on listsort() is
related to the issue #23507 .
2016-12-01 14:43:22 +01:00
Serhiy Storchaka
a98c4a984b
Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize
...
with PyUnicode_AsUTF8 and PyUnicode_AsUTF8AndSize.
2016-11-20 09:13:40 +02:00
Serhiy Storchaka
06515833fe
Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize
...
with PyUnicode_AsUTF8 and PyUnicode_AsUTF8AndSize.
2016-11-20 09:13:07 +02:00
Steve Dower
83aeb3cc80
Issue #28732 : Raise ValueError when argv[0] is empty
2016-11-19 19:17:46 -08:00
Steve Dower
bce26262d1
Issue #28732 : Raise ValueError when argv[0] is empty
2016-11-19 19:17:26 -08:00
Steve Dower
93ff8725b3
Issue #28732 : Raise ValueError when argv[0] is empty.
2016-11-19 19:03:54 -08:00
Steve Dower
6f33e294e5
Issue #28732 : Raise ValueError when os.spawn*() is passed an empty tuple of arguments
2016-11-19 18:53:36 -08:00
Steve Dower
859fd7bd7a
Issue #28732 : Raise ValueError when os.spawn*() is passed an empty tuple of arguments
2016-11-19 18:53:19 -08:00
Steve Dower
1325ee0938
Merge from 3.6
2016-11-19 18:41:31 -08:00
Steve Dower
c3630612ab
Merge from 3.5 and fix a few other functions missing IPH handling.
2016-11-19 18:41:16 -08:00
Steve Dower
11f4326ca1
Issue #28732 : Fix crash in os.spawnv() with no elements in args
...
Prevents crashes in some other posixmodule.c functions
2016-11-19 18:33:39 -08:00
Serhiy Storchaka
b74fecc396
Issue #28585 : Restored docstring of os._isdir().
2016-11-08 20:28:43 +02:00
Serhiy Storchaka
852cc3335e
Issue #28585 : Restored docstring of os._isdir().
2016-11-08 20:26:18 +02:00
Serhiy Storchaka
579f038018
Issue #28585 : Restored docstring of os._isdir().
2016-11-08 20:21:22 +02:00
Serhiy Storchaka
49d02d1659
Issue #28586 : Converted os.scandir() to Argument Clinic.
2016-11-06 13:45:33 +02:00
Martin Panter
b1321fba53
Issue #28394 : More typo fixes for 3.6+
2016-10-10 00:38:21 +00:00
Serhiy Storchaka
2674bc7229
Issue #27998 : Fixed bytes path support in os.scandir() on Windows.
...
Patch by Eryk Sun.
2016-10-08 20:16:57 +03:00
Christian Heimes
6f3f3e5ca4
Increase buffer for readlink() in case OS will support longer names one day.
2016-09-23 20:24:39 +02:00
Christian Heimes
3cb091e576
Increase buffer for readlink() in case OS will support longer names one day.
2016-09-23 20:24:28 +02:00
Victor Stinner
ec2319c46d
Fix memleak in os.getrandom()
...
Issue #27778 : Fix a memory leak in os.getrandom() when the getrandom() is
interrupted by a signal and a signal handler raises a Python exception.
Modify also os_getrandom_impl() to avoid the temporary buffer, use directly a
Python bytes object.
2016-09-20 23:00:59 +02:00
Victor Stinner
26c03bd7d5
Fix memory leak in path_converter()
...
Issue #28200 : Replace PyUnicode_AsWideCharString() with
PyUnicode_AsUnicodeAndSize().
2016-09-19 11:55:44 +02:00
Berker Peksag
bf3c1c3235
Issue #28075 : Fix test_access_denied in Python 3.5
...
I forgot there two variations of os.stat() in Python 3.5.
2016-09-18 13:56:29 +03:00
Berker Peksag
052e4f18c4
Issue #28075 : Merge from 3.5
2016-09-17 15:51:14 +03:00
Berker Peksag
0b4dc4846b
Issue #28075 : Check for ERROR_ACCESS_DENIED in Windows implementation of os.stat()
...
Patch by Eryk Sun.
2016-09-17 15:49:59 +03:00
Berker Peksag
3940499ca8
Issue #28156 : Export os.getpid() conditionally
...
Patch by Ed Schouten.
2016-09-15 20:45:16 +03:00
Berker Peksag
8181646931
Issue #28114 : Fix a crash in parse_envlist() when env contains byte strings
...
Patch by Eryk Sun.
2016-09-15 20:19:47 +03:00
Steve Dower
654a7bdf57
Adds missing assert suppression.
2016-09-11 20:19:32 -07:00
Steve Dower
6230aaf561
Issue #27781 : Fixes uninitialized fd when !MS_WINDOWS and !HAVE_OPENAT
2016-09-09 09:03:15 -07:00
Benjamin Peterson
768f3b4492
do not pretend to support passing a fd to access()
2016-09-05 15:29:33 -07:00
Benjamin Peterson
207116b84c
use Py_MAX
2016-09-08 11:28:06 -07:00
Steve Dower
940f33a50f
Issue #23524 : Finish removing _PyVerify_fd from sources
2016-09-08 11:21:54 -07:00
Steve Dower
513d7478a1
Fix mismatched if blocks in posixmodule.c.
2016-09-08 10:41:50 -07:00
Steve Dower
cc16be85c0
Issue #27781 : Change file system encoding on Windows to UTF-8 (PEP 529)
2016-09-08 10:35:16 -07:00
Benjamin Peterson
840ef8f84b
more linux -> __linux__
2016-09-07 14:45:10 -07:00
Victor Stinner
e66987e626
os.urandom() now blocks on Linux
...
Issue #27776 : The os.urandom() function does now block on Linux 3.17 and newer
until the system urandom entropy pool is initialized to increase the security.
This change is part of the PEP 524.
2016-09-06 16:33:52 -07:00
Victor Stinner
9b1f474df6
Add os.getrandom()
...
Issue #27778 : Expose the Linux getrandom() syscall as a new os.getrandom()
function.
This change is part of the PEP 524.
2016-09-06 16:18:52 -07:00
Victor Stinner
581139cb34
Run Argument Clinic on posixmodule.c
...
Issue #17884 .
2016-09-06 15:54:20 -07:00
Benjamin Peterson
ca47063998
replace Py_(u)intptr_t with the c99 standard types
2016-09-06 13:47:26 -07:00
Benjamin Peterson
af580dff4a
replace PY_LONG_LONG with long long
2016-09-06 10:46:49 -07:00
Benjamin Peterson
ed4aa83ff7
require a long long data type ( closes #27961 )
2016-09-05 17:44:18 -07:00
Benjamin Peterson
b1cb8b2872
merge 3.5
2016-09-05 15:35:45 -07:00
Brett Cannon
3f9183b5ac
Issue #26027 , #27524 : Add PEP 519/__fspath__() support to os and
...
os.path.
Thanks to Jelle Zijlstra for the initial patch against posixmodule.c.
2016-08-26 14:44:48 -07:00
Ned Deily
eb3be66b3a
Issue #27736 : Prevent segfault after interpreter re-initialization due
...
to ref count problem introduced in code for Issue #27038 in 3.6.0a3.
Patch by Xiang Zhang.
2016-08-15 14:40:38 -04:00
Serhiy Storchaka
d73c31899e
Issue #26800 : Undocumented support of general bytes-like objects
...
as paths in os functions is now deprecated.
2016-08-06 23:22:08 +03:00
Martin Panter
70214ad55d
Issue #17599 : Use unique _Py_REPARSE_DATA_BUFFER etc names to avoid conflict
...
The conflict occurs with Min GW, which already defines REPARSE_DATA_BUFFER.
Also, Min GW uses a lowercase <windows.h> filename.
2016-08-04 02:38:59 +00:00
Benjamin Peterson
bf5868d2c5
merge 3.5 ( #27656 )
2016-07-30 23:22:24 -07:00
Benjamin Peterson
dbaa559b7f
all SCHED_ constants are optional ( closes #27656 )
2016-07-30 23:21:50 -07:00
Steve Dower
262dc1e71d
Issue #27533 : Release GIL in nt._isdir
2016-07-17 20:50:28 -07:00
Steve Dower
b22a67737e
Issue #27533 : Release GIL in nt._isdir
2016-07-17 20:49:38 -07:00
Brett Cannon
044283a426
Issue #27512 : Don't segfault when os.fspath() calls an object whose
...
__fspath__() raises an exception.
Thanks to Xiang Zhang for the patch.
2016-07-15 10:41:49 -07:00
Serhiy Storchaka
2954f83999
- Issue #27332 : Fixed the type of the first argument of module-level functions
...
generated by Argument Clinic. Patch by Petr Viktorin.
2016-07-07 18:20:03 +03:00
Serhiy Storchaka
1a2b24f02d
Issue #27332 : Fixed the type of the first argument of module-level functions
...
generated by Argument Clinic. Patch by Petr Viktorin.
2016-07-07 17:35:15 +03:00
Brett Cannon
a32c4d0531
Issue #27038 : Expose DirEntry as os.DirEntry.
...
Thanks to Jelle Zijlstra for the code portion of the patch.
2016-06-24 14:14:44 -07:00
Brett Cannon
c78ca1e044
Issue #27186 : Update os.fspath()/PyOS_FSPath() to check the return
...
type of __fspath__().
As part of this change, also make sure that the pure Python
implementation of os.fspath() is tested.
2016-06-24 12:03:43 -07:00
doko@ubuntu.com
fcff437de3
- Comment out socket (SO_REUSEPORT) and posix (O_SHLOCK, O_EXLOCK) constants
...
exposed on the API which are not implemented on GNU/Hurd. They would not
work at runtime anyway.
2016-06-13 16:33:04 +02:00
Brett Cannon
96881cd621
Issue #27186 : Add os.PathLike support to DirEntry
...
Initial patch thanks to Jelle Zijlstra.
2016-06-10 14:37:21 -07:00
Brett Cannon
b4f43e90d9
Clarify documentation for os.fspath().
2016-06-09 14:32:08 -07:00
Ethan Furman
410ef8e230
issue27186: add C version of os.fspath(); patch by Jelle Zijlstra
2016-06-04 12:06:26 -07:00
Gregory P. Smith ext:(%20%5BGoogle%20Inc.%5D)
46833e73af
Fix issue27146 - add stdio.h include to posixmodule.c for ctermid().
2016-05-28 21:06:41 +00:00
Gregory P. Smith ext:(%20%5BGoogle%20Inc.%5D)
fa76eeec70
Fix issue27146 - add stdio.h include to posixmodule.c for ctermid().
2016-05-28 21:03:48 +00:00
Serhiy Storchaka
deab18dfd0
Issue #26708 : Use the "const" qualifier for immutable strings.
...
This can help to avoid unintentional modification.
2016-05-07 16:45:18 +03:00
Serhiy Storchaka
c2f7d87897
Issue #26932 : Fixed support of RTLD_* constants defined as enum values,
...
not via macros (in particular on Android). Patch by Chi Hsuan Yen.
2016-05-04 09:44:44 +03:00
Stefan Krah
fb7c8ae4e7
Issue #26863 : HAVE_FACCESSAT should (currently) not be defined on Android.
2016-04-26 17:04:18 +02:00
Serhiy Storchaka
3291d85a2f
Issue #26671 : Fixed #ifdef indentation.
2016-04-06 23:02:46 +03:00
Serhiy Storchaka
aaf553bac4
Backed out changeset 8dc144e47252
2016-04-06 23:02:25 +03:00
Serhiy Storchaka
026110f0a2
Issue #26671 : Fixed #ifdef indentation.
2016-04-06 22:55:31 +03:00
Serhiy Storchaka
819399b2ab
Issue #26671 : Enhanced path_converter.
...
Exceptions raised during converting argument of correct type are no longer
overridded with TypeError. Some error messages are now more detailed.
2016-04-06 22:17:52 +03:00
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