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
Larry Hastings
2623c8c23c
Issue #20530 : Argument Clinic's signature format has been revised again.
...
The new syntax is highly human readable while still preventing false
positives. The syntax also extends Python syntax to denote "self" and
positional-only parameters, allowing inspect.Signature objects to be
totally accurate for all supported builtins in Python 3.4.
2014-02-08 22:15:29 -08:00
Larry Hastings
7726ac9163
#Issue 20456: Several improvements and bugfixes for Argument Clinic,
...
including correctly generating code for Clinic blocks inside C
preprocessor conditional blocks.
2014-01-31 22:03:12 -08:00
Larry Hastings
581ee3618c
Issue #20326 : Argument Clinic now uses a simple, unique signature to
...
annotate text signatures in docstrings, resulting in fewer false
positives. "self" parameters are also explicitly marked, allowing
inspect.Signature() to authoritatively detect (and skip) said parameters.
Issue #20326 : Argument Clinic now generates separate checksums for the
input and output sections of the block, allowing external tools to verify
that the input has not changed (and thus the output is not out-of-date).
2014-01-28 05:00:08 -08:00
Larry Hastings
5c66189e88
Issue #20189 : Four additional builtin types (PyTypeObject,
...
PyMethodDescr_Type, _PyMethodWrapper_Type, and PyWrapperDescr_Type)
have been modified to provide introspection information for builtins.
Also: many additional Lib, test suite, and Argument Clinic fixes.
2014-01-24 06:17:25 -08:00
Benjamin Peterson
dc3cce077d
merge 3.3 ( #17811 )
2014-01-18 22:57:05 -05:00
Benjamin Peterson
e83ed43281
improve description of buffers argument for readv/writev ( closes #17811 )
...
Patch by Nikolaus Rath.
2014-01-18 22:54:59 -05:00
Larry Hastings
2a727916c5
Issue #20226 : Major improvements to Argument Clinic.
...
* You may now specify an expression as the default value for a
parameter! Example: "sys.maxsize - 1". This support is
intentionally quite limited; you may only use values that
can be represented as static C values.
* Removed "doc_default", simplified support for "c_default"
and "py_default". (I'm not sure we still even need
"py_default", but I'm leaving it in for now in case a
use presents itself.)
* Parameter lines support a trailing '\\' as a line
continuation character, allowing you to break up long lines.
* The argument parsing code generated when supporting optional
groups now uses PyTuple_GET_SIZE instead of PyTuple_GetSize,
leading to a 850% speedup in parsing. (Just kidding, this
is an unmeasurable difference.)
* A bugfix for the recent regression where the generated
prototype from pydoc for builtins would be littered with
unreadable "=<object ...>"" default values for parameters
that had no default value.
* Converted some asserts into proper failure messages.
* Many doc improvements and fixes.
2014-01-16 11:32:01 -08:00
Benjamin Peterson
463753831c
fix build when SCHED_SPORADIC is defined ( closes #20217 )
2014-01-10 09:22:40 -06:00
Victor Stinner
149e540adf
(Merge 3.3) Issue #20113 : os.readv() and os.writev() now raise an OSError
...
exception on error instead of returning -1.
2014-01-08 15:26:12 +01:00
Victor Stinner
57ddf78b6b
Issue #20113 : os.readv() and os.writev() now raise an OSError exception on
...
error instead of returning -1.
2014-01-08 15:21:28 +01:00
Larry Hastings
61272b77b0
Issue #19273 : The marker comments Argument Clinic uses have been changed
...
to improve readability.
2014-01-07 12:41:53 -08:00
Christian Heimes
af01f66817
Issue #16136 : Remove VMS support and VMS-related code
2013-12-21 16:19:10 +01:00
Victor Stinner
f326665fe7
Fix os.listdir(): _Py_dup() already raises an exception on error, no need to
...
raise a new exception
2013-12-19 13:24:49 +01:00
R David Murray
3c2a178af2
Merge: #19970 : Fix some comment typos.
2013-12-13 20:53:26 -05:00
R David Murray
fc06999e0b
#19970 : Fix some comment typos.
...
Report and patch by Vajrasky Kok.
2013-12-13 20:52:19 -05:00
doko@ubuntu.com
ca616a2709
- Issue #19736 : Add module-level statvfs constants defined for GNU/glibc
...
based systems.
2013-12-08 15:23:07 +01:00
Victor Stinner
000de53624
Issue #19752 : Fix "HAVE_DEV_PTMX" implementation of os.openpty()
...
Regression introduced by the implementation of the PEP 446 (non-inheritable
file descriptors by default).
master_fd must be set non-inheritable after the creation of the slave_fd,
otherwise grantpt(master_fd) fails with EPERM (errno 13).
2013-11-25 23:19:58 +01:00
Victor Stinner
7587507a97
Issue #19636 : Fix usage of MAX_PATH in posixmodule.c
2013-11-24 19:23:25 +01:00
Victor Stinner
6edddfaf5b
Issue #19636 : Fix posix__getvolumepathname(), raise an OverflowError if
...
the length doesn't fit in an DWORD
2013-11-24 19:22:57 +01:00
Larry Hastings
44e2eaab54
Issue #19674 : inspect.signature() now produces a correct signature
...
for some builtins.
2013-11-23 15:37:55 -08:00
Larry Hastings
ebdcb50b8a
Issue #19730 : Argument Clinic now supports all the existing PyArg
...
"format units" as legacy converters, as well as two new features:
"self converters" and the "version" directive.
2013-11-23 14:54:00 -08:00
Antoine Pitrou
91a7af3e48
Issue #19727 : os.utime(..., None) is now potentially more precise under Windows.
2013-11-23 15:23:26 +01:00
Larry Hastings
ed4a1c5703
Argument Clinic: rename "self" to "module" for module-level functions.
2013-11-18 09:32:13 -08:00
Christian Heimes
85ba92a0b8
GetVolumePathNameW: downcast bufsize to DWORD
2013-11-18 10:30:42 +01:00
Victor Stinner
b03142782c
Issue #19437 : Fix parse_envlist() of the posix/nt module, don't call
...
PyMapping_Values() with an exception set, exit immediatly on error.
2013-11-14 21:37:05 +01:00
Victor Stinner
59799a8399
Don't use deprecated function PyUnicode_GET_SIZE()
...
Replace it with PyUnicode_GET_LENGTH() or PyUnicode_AsUnicodeAndSize()
2013-11-13 14:17:30 +01:00
Victor Stinner
50abf2294e
Issue #19437 : Fix fsconvert_strdup(), raise a MemoryError on PyMem_Malloc()
...
failure
2013-11-07 23:56:10 +01:00
Victor Stinner
f0a7bac201
Issue #19437 : Fix os.statvfs(), handle errors
2013-10-30 18:55:24 +01:00
Tim Golden
781bbebacb
Issue13234 Allow listdir to handle extended paths on Windows (Patch by Santoso Wijaya)
2013-10-25 20:24:06 +01:00
Tim Golden
23005084ad
Issue4905: use INVALID_FILE_ATTRIBUTES where appropriate. (Patch by Ulrich Eckhardt)
2013-10-25 11:22:37 +01:00
Christian Heimes
ebe83f9875
fix compile issue on windows. path is now a struct ptr
2013-10-19 22:36:17 +02:00
Larry Hastings
3182680210
Issue #16612 : Add "Argument Clinic", a compile-time preprocessor
...
for C files to generate argument parsing code. (See PEP 436.)
2013-10-19 00:09:25 -07:00
Christian Heimes
2582762b1b
Issue #19209 : Remove import of copyreg from the os module to speed up
...
interpreter startup. stat_result and statvfs_result are now hard-coded to
reside in the os module.
The patch is based on Victor Stinner's patch.
2013-10-12 01:27:08 +02:00
Victor Stinner
b9981ba680
fix a compilation warning in posix_openpty() on "PPC64 AIX 3.x" buildbot
2013-08-28 01:51:06 +02:00
Victor Stinner
daf455554b
Issue #18571 : Implementation of the PEP 446: file descriptors and file handles
...
are now created non-inheritable; add functions os.get/set_inheritable(),
os.get/set_handle_inheritable() and socket.socket.get/set_inheritable().
2013-08-28 00:53:59 +02:00
Benjamin Peterson
3a7dffa4ce
remove support for compiling on systems without getcwd()
...
Do we need a fallback implementation of getcwd() from 1991 that claims to
support "really old Unix systems"? I don't think so.
2013-08-23 21:01:48 -05:00
Christian Heimes
177b3f9982
Issue #18673 : Add O_TMPFILE to os module. O_TMPFILE requires Linux kernel
...
3.11 or newer. It's only defined on system with 3.11 uapi headers, too.
2013-08-16 14:35:09 +02:00
Larry Hastings
e70f2d588a
Issue #18667 : Add missing "HAVE_FCHOWNAT" symbol to posix._have_functions.
2013-08-12 13:53:20 -04:00
Larry Hastings
00964ed216
Issue #18667 : Add missing "HAVE_FCHOWNAT" symbol to posix._have_functions.
2013-08-12 13:49:30 -04:00
Larry Hastings
a27b83ad2d
Issue #15301 : Parsing fd, uid, and gid parameters for builtins
...
in Modules/posixmodule.c is now far more robust.
2013-08-08 00:19:50 -07:00
Ned Deily
ffb32893a3
Issue #17557 : merge from 3.3
2013-08-01 21:37:17 -07:00
Ned Deily
b5dd6d2287
Issue #17557 : Fix os.getgroups() to work with the modified behavior of
...
getgroups(2) on OS X 10.8. Original patch by Mateusz Lenik.
2013-08-01 21:21:15 -07:00
Larry Hastings
2e3e593e34
Issue #17899 : Fix rare file descriptor leak in os.listdir().
...
(Done as separate patch from trunk as the code has diverged quite a bit.)
2013-08-01 19:34:46 -07:00
Larry Hastings
4dbc95e258
Issue #17899 : Fix rare file descriptor leak in os.listdir().
2013-08-01 18:18:56 -07:00
Tim Golden
6b528067c5
Issue #9035 : os.path.ismount now recognises volumes mounted below
...
a drive root on Windows. Original patch by Atsuo Ishimoto.
2013-08-01 12:44:00 +01:00
Christian Heimes
abe639f115
Initialize utime with 0. It fixes a couple of compiler warnung:
...
warning: 'utime.mtime_ns' may be used uninitialized in this function [-Wmaybe-uninitialized]
2013-08-01 00:12:06 +02:00
Christian Heimes
b3c872403d
Initialize utime with 0. It fixes a couple of compiler warnung:
...
warning: 'utime.mtime_ns' may be used uninitialized in this function [-Wmaybe-uninitialized]
2013-08-01 00:08:16 +02:00
Victor Stinner
1c8f059019
Issue #18520 : Add a new PyStructSequence_InitType2() function, same than
...
PyStructSequence_InitType() except that it has a return value (0 on success,
-1 on error).
* PyStructSequence_InitType2() now raises MemoryError on memory allocation failure
* Fix also some calls to PyDict_SetItemString(): handle error
2013-07-22 22:24:54 +02:00
Victor Stinner
d85032e25d
(Merge 3.3) Fix posix_chflags(): return_value was uninitialized when
...
follow_symlinks=False whereas the fchmodat() function is not avaialble.
2013-07-18 23:58:08 +02:00
Victor Stinner
45e90394e7
Fix posix_chflags(): return_value was uninitialized when follow_symlinks=False
...
whereas the fchmodat() function is not avaialble.
2013-07-18 23:57:35 +02:00
Victor Stinner
6ce0dbf460
Fix a compiler warning in posix_sendfile() on FreeBSD:
...
Modules/posixmodule.c: In function 'posix_sendfile':
Modules/posixmodule.c:7700: warning: ISO C90 forbids mixed declarations and code
2013-07-07 16:32:36 +02:00
Victor Stinner
b64049183c
Issue #18203 : Replace malloc() with PyMem_Malloc() in Python modules
...
Replace malloc() with PyMem_Malloc() when the GIL is held, or with
PyMem_RawMalloc() otherwise.
2013-07-07 16:21:41 +02:00
Victor Stinner
dd3a6a5533
Fix os.confstr(): the result type of the C function is size_t, not int
2013-06-25 23:13:47 +02:00
Victor Stinner
14b9b11098
If MS_WIN64 is defined, MS_WINDOWS is also defined: #ifdef can be simplified.
2013-06-25 00:37:25 +02:00
Christian Heimes
99d6135a15
Define S_IFMT and S_IFLNK in pyport.h so posixmodule.c can use named constants instead
...
of arbitrary looking numbers.
2013-06-23 23:56:05 +02:00
Richard Oudkerk
ac0ad884d1
Issue #17931 : Resolve confusion on Windows between pids and process handles.
2013-06-05 23:29:30 +01:00
Victor Stinner
072318b178
Issue #13772 : Use syntax for literal wchar_t character
2013-06-05 02:07:46 +02:00
Victor Stinner
31b3b92f7a
Issue #13772 : Mark helper functions as private (static)
...
Cleanup also the code to follow the Python coding style (PEP 7).
2013-06-05 01:49:17 +02:00
Victor Stinner
e87267dc6e
Issue #13772 : Fix a compiler warning on Windows
2013-06-05 01:30:25 +02:00
Victor Stinner
5a4367600f
Issue #13772 : fix _check_dirA(): call *A() functions, not *W() functions
2013-06-05 00:37:12 +02:00
Victor Stinner
e7e7eba108
Issue #13772 : Fix compiler warnings on Windows
2013-06-05 00:35:54 +02:00
Victor Stinner
0b81111b18
(Merge 3.3) Close #18109 : os.uname() now decodes fields from the locale
...
encoding, and socket.gethostname() now decodes the hostname from the locale
encoding, instead of using the UTF-8 encoding in strict mode.
2013-06-03 22:09:14 +02:00
Victor Stinner
a534fc4b3b
Close #18109 : os.uname() now decodes fields from the locale encoding, and
...
socket.gethostname() now decodes the hostname from the locale encoding, instead
of using the UTF-8 encoding in strict mode.
2013-06-03 22:07:27 +02:00
Jason R. Coombs
3a09286790
Issue #13772 : Restored directory detection of targets in `os.symlink` on Windows, which was temporarily removed in Python 3.2.3 due to an incomplete implementation. The implementation now works even if the symlink is created in a location other than the current directory.
2013-05-27 23:21:28 -04:00
Benjamin Peterson
3b08a2978e
indicate that read/write work with bytes ( closes #18009 )
2013-05-24 14:35:57 -07:00
Jason R. Coombs
8f1a8e32b1
Merge with 3.3
2013-05-27 23:26:36 -04:00
Benjamin Peterson
e08b583d88
merge 3.3
2013-05-24 14:36:04 -07:00
Charles-Francois Natali
74ca886788
Issue #17917 : Use PyModule_AddIntMacro() instead of PyModule_AddIntConstant()
...
when applicable.
2013-05-20 19:13:19 +02:00
Charles-Francois Natali
7c4f8dacf4
Issue #17914 : We can now inline _bsd_cpu_count().
2013-05-20 17:40:32 +02:00
Charles-Francois Natali
d59087de5b
Issue #17914 : Remove OS-X special-case, and use the correct int type.
2013-05-20 17:31:06 +02:00
Charles-Francois Natali
44feda3cd0
Issue #17914 : Add os.cpu_count(). Patch by Yogesh Chaudhari, based on an
...
initial patch by Trent Nelson.
2013-05-20 14:40:46 +02:00
Victor Stinner
6fdd7b81fa
Issue #17964 : Fix os.sysconf(): the return type of the C sysconf() function
...
is long, not int.
2013-05-16 22:26:29 +02:00
Benjamin Peterson
cde88dcf10
merge 3.3 ( #17968 )
2013-05-13 19:56:35 -05:00
Benjamin Peterson
dedac52731
prevent double free in cleanup code ( #17968 )
2013-05-13 19:55:40 -05:00
Antoine Pitrou
5f18791902
Issue #17968 : Fix memory leak in os.listxattr().
2013-05-13 19:48:46 +02:00
Antoine Pitrou
7f987398b7
Issue #17968 : Fix memory leak in os.listxattr().
2013-05-13 19:46:29 +02:00
Richard Oudkerk
245bbee0d5
Merge.
2013-04-17 21:24:58 +01:00
Antoine Pitrou
cf8a1e51ec
- Issue #17782 : Fix undefined behaviour on platforms where ``struct timespec``'s "tv_nsec" member is not a C long.
2013-04-17 22:06:44 +02:00
Gregory P. Smith
40a2160a09
Refactor the common code out of the posix and windows listdir
...
implementations from my previous commit into the higher level
function.
2013-03-20 20:52:50 -07:00
Gregory P. Smith
16ea14a690
Refactor the Windows specific and POSIX specific implementations of
...
listdir into two separate coherent functions rather than interleaved
#ifdef's.
2013-03-20 18:51:33 -07:00
Benjamin Peterson
3b965a237c
expose O_PATH if possible
2013-03-13 10:27:41 -05:00
Serhiy Storchaka
a7b5e82ff0
Reject float as uid or gid.
...
A regression was introduced in the commit for issue #4591 .
2013-02-10 23:28:33 +02:00
Serhiy Storchaka
b462189921
Reject float as uid or gid.
...
A regression was introduced in the commit for issue issue #4591 .
2013-02-10 23:28:02 +02:00
Serhiy Storchaka
c2d020090b
Issue #4591 : Uid and gid values larger than 2**31 are supported now.
2013-02-10 22:03:08 +02:00
Serhiy Storchaka
7cf5599346
Issue #4591 : Uid and gid values larger than 2**31 are supported now.
2013-02-10 21:56:49 +02:00
Antoine Pitrou
c73c561181
Issue #17173 : Remove uses of locale-dependent C functions (isalpha() etc.) in the interpreter.
...
I've left a couple of them in: zlib (third-party lib), getaddrinfo.c
(doesn't include Python.h, and probably obsolete), _sre.c (legitimate
use for the re.LOCALE flag), mpdecimal (needs to build without Python.h).
2013-02-09 23:14:42 +01:00
Antoine Pitrou
4de7457009
Issue #17173 : Remove uses of locale-dependent C functions (isalpha() etc.) in the interpreter.
...
I've left a couple of them in: zlib (third-party lib), getaddrinfo.c
(doesn't include Python.h, and probably obsolete), _sre.c (legitimate
use for the re.LOCALE flag).
2013-02-09 23:11:27 +01:00
Ronald Oussoren
20190e2d54
Issue #1602133 : 'environ' is not really available with shared libraries on OSX (merge from 3.3)
...
There already was a workaround for this for framework builds on OSX,
this changeset enables the same workaround for shared libraries.
Closes #1602133
2013-01-25 18:02:35 +01:00
Ronald Oussoren
1c90eed8a9
Issue #1602133 : 'environ' is not really available with shared libraries on OSX (merge from 3.2)
...
There already was a workaround for this for framework builds on OSX,
this changeset enables the same workaround for shared libraries.
Closes #1602133
2013-01-25 18:01:05 +01:00
Ronald Oussoren
697e56d0f5
Issue #1602133 : 'environ' is not really available with shared libraries on OSX
...
There already was a workaround for this for framework builds on OSX,
this changeset enables the same workaround for shared libraries.
Closes #1602133
2013-01-25 17:57:13 +01:00
Serhiy Storchaka
9101e23ff6
Issue #15989 : Fix several occurrences of integer overflow
...
when result of PyLong_AsLong() narrowed to int without checks.
This is a backport of changesets 13e2e44db99d and 525407d89277.
2013-01-19 12:41:45 +02:00
Serhiy Storchaka
7898043868
Issue #15989 : Fix several occurrences of integer overflow
...
when result of PyLong_AsLong() narrowed to int without checks.
2013-01-15 01:12:17 +02:00
Serhiy Storchaka
c99b5120a7
Issue #15972 : Fix error messages when os functions expecting a file name or
...
file descriptor receive the incorrect type.
2013-01-07 23:16:49 +02:00
Serhiy Storchaka
a2ad5c3ad1
Issue #15972 : Fix error messages when os functions expecting a file name or
...
file descriptor receive the incorrect type.
2013-01-07 23:13:46 +02:00
Serhiy Storchaka
404fa924c3
Issue #16841 : Set st_dev on Windows as unsigned long to match its DWORD type.
2013-01-02 18:22:23 +02:00
Victor Stinner
e4110dc11f
Issue #9644 : Fix the encoding used by os.statvfs(): use the filesystem encoding
...
with the surrogateescape error handler, instead of UTF-8 in strict mode.
2013-01-01 23:05:55 +01:00
Brian Curtin
9cc4321bf5
Backed out changeset 61bada808b34
2013-01-01 12:31:06 -06:00
Brian Curtin
e3d0b65118
Set st_dev on Windows as unsigned long to match its DWORD type, related to the change to fix #11939 .
2013-01-01 12:21:35 -06:00
Brian Curtin
87e63a273c
st_dev/st_rdev should be unsigned long as dwVolumeSerialNumber, which it is set to, is a DWORD. This was fixed in #11939 and the overflow was mentioned in #10657 and seen by me on some machines.
2012-12-31 11:59:48 -06:00
Brian Curtin
490b32a397
Fix #11939 . Set st_dev attribute on Windows to simplify os.path.samefile.
...
By setting the st_dev attribute, we can then remove some Windows-specific
code and move os.path.samefile/sameopenfile/samestat to Lib/genericpath.py
so all platforms share the same implementation.
2012-12-26 07:03:03 -06:00
Andrew Svetlov
2606a6f197
Issue #16719 : Get rid of WindowsError. Use OSError instead
...
Patch by Serhiy Storchaka.
2012-12-19 14:33:35 +02:00
Andrew Svetlov
a191959849
Issue #16714 : use 'raise' exceptions, don't 'throw'.
...
Patch by Serhiy Storchaka.
2012-12-18 21:27:16 +02:00
Andrew Svetlov
5b89840d9c
Issue #16714 : use 'raise' exceptions, don't 'throw'.
...
Patch by Serhiy Storchaka.
2012-12-18 21:26:36 +02:00
Andrew Svetlov
737fb89dd1
Issue #16714 : use 'raise' exceptions, don't 'throw'.
...
Patch by Serhiy Storchaka.
2012-12-18 21:14:22 +02:00
Victor Stinner
4e7d2d481a
Issue #15478 : Oops, fix regression in os.open() on Windows
...
os.open() uses _wopen() which sets errno, not the Windows error code.
2012-11-05 01:20:58 +01:00
Victor Stinner
afe1706457
Issue #15478 : Use source filename in OSError, not destination filename
...
And other fixes for Windows:
* rename, replace and link require arguments of the same type on Windows
* readlink only supports unicode filenames on Windows
* os.open() specifies the filename on OSError
2012-10-31 22:47:43 +01:00
Victor Stinner
b024e84597
Issue #15478 : Use path_error() in more posix functions, especially in Windows
...
implementation
2012-10-31 22:24:06 +01:00
Victor Stinner
266f882dca
Issue #15478 : Fix compilation on Windows
2012-10-30 02:27:11 +01:00
Victor Stinner
292c835548
Issue #15478 : Raising an OSError doesn't decode or encode the filename anymore
...
Pass the original filename argument to OSError constructor, instead of trying
to encode it to or decode it from the filesystem encoding. This change avoids
an additionnal UnicodeDecodeError on Windows if the filename cannot be decoded
from the filesystem encoding (ANSI code page).
2012-10-30 02:17:38 +01:00
Petri Lehtinen
d25b3982c7
Replace tabs with spaces in posixmodule.c
2012-10-23 16:31:06 +03:00
Petri Lehtinen
5445a8cb41
Replace tabs with spaces in posixmodule.c
2012-10-23 16:29:59 +03:00
Antoine Pitrou
06eecead03
Issue #12034 : Fix bogus caching of result in check_GetFinalPathNameByHandle.
...
Patch by Atsuo Ishimoto.
2012-10-21 16:33:33 +02:00
Jesus Cea
ab70e2ab32
#16135 : Removal of OS/2 support (posixmodule y platform dependent files)
2012-10-05 01:48:08 +02:00
Christian Heimes
3b9493b53c
Use C-style comments for C89 / ANSI C compatibility
2012-09-23 16:11:15 +02:00
Trent Nelson
9a46105a89
#15965 : Explicitly cast AT_FDCWD as (int).
...
Required on Solaris 10 (which defines AT_FDCWD as 0xffd19553),
harmless on other platforms.
2012-09-18 21:50:06 -04:00
Antoine Pitrou
9d20e0edd9
Issue #15926 : Fix crash after multiple reinitializations of the interpreter.
2012-09-12 18:01:36 +02:00
Antoine Pitrou
848698727f
Issue #12655 : Instead of requiring a custom type, os.sched_getaffinity and
...
os.sched_setaffinity now use regular sets of integers to represent the
CPUs a process is restricted to.
2012-08-04 16:16:35 +02:00
Jesus Cea
5323173dee
Closes #15514 : Correct __sizeof__ support for cpu_set
2012-08-03 14:18:11 +02:00
Antoine Pitrou
f3923e9dd7
Issue #15413 : os.times() had disappeared under Windows.
2012-07-24 21:23:53 +02:00
Richard Oudkerk
2240ac1eae
Issue #15261 : Stop os.stat(fd) crashing on Windows when fd not open.
2012-07-06 12:05:32 +01:00
Victor Stinner
591c1cca32
Remove dead code
...
os.urandom() has now one unique implementation, posix_urandom() which
calls _PyOS_URandom(). _PyOS_URandom() uses RAND_pseudo_bytes() on VMS.
2012-06-28 01:45:48 +02:00
Georg Brandl
969288e488
Use ValueError, not RuntimeError for a utime flag combination illegal on some systems.
2012-06-26 09:25:44 +02:00
Larry Hastings
fdaea06d3c
Issue #15176 : Clarified behavior, documentation, and implementation
...
of os.listdir().
2012-06-25 04:42:23 -07:00
Georg Brandl
f78755968a
Whitespace cleanup.
2012-06-24 13:58:31 +02:00
Larry Hastings
605a62ddb1
Issue #15118 : Change return value of os.uname() and os.times() from
...
plain tuples to immutable iterable objects with named attributes
(structseq objects).
2012-06-24 04:33:36 -07:00
Georg Brandl
306336bcda
Closes #15161 : add support for giving path as a fd for truncate() and pathconf().
2012-06-24 12:55:33 +02:00
Larry Hastings
b698d8e7e9
Issue #15154 : Add "dir_fd" parameter to os.rmdir, remove "rmdir"
...
parameter from os.remove / os.unlink.
Patch written by Georg Brandl. (I'm really looking forward to George
getting commit privileges so I don't have to keep doing checkins on his
behalf.)
2012-06-23 16:55:07 -07:00
Georg Brandl
5bb7aa986e
Try to fix shutil.which() tests on Windows by fixing a typo introduced in 27f9c26fdd8b in posix_access().
2012-06-23 12:48:40 +02:00
Larry Hastings
dbbc0c8bb3
Issue #14626 : Fix buildbot issue on OpenIndiana 3.x machines. (Hopefully.)
2012-06-22 19:50:21 -07:00
Larry Hastings
67cbf7bff9
Issue #14626 : Fix buildbot issue on x86 Tiger 3.x.
2012-06-22 17:06:48 -07:00
Larry Hastings
9cf065cfdc
Issue #14626 : Large refactoring of functions / parameters in the os module.
...
Many functions now support "dir_fd" and "follow_symlinks" parameters;
some also support accepting an open file descriptor in place of of a path
string. Added os.support_* collections as LBYL helpers. Removed many
functions only previously seen in 3.3 alpha releases (often starting with
"f" or "l", or ending with "at"). Originally suggested by Serhiy Storchaka;
implemented by Larry Hastings.
2012-06-22 16:30:09 -07:00
Jesus Cea
9436361e4c
Closes #10142 : Support for SEEK_HOLE/SEEK_DATA
2012-06-22 18:32:07 +02:00
Victor Stinner
034d0aa217
Issue #14711 : os.stat_float_times() has been deprecated.
2012-06-05 01:22:15 +02:00
Benjamin Peterson
9242c1378f
capitialize utime statuses
2012-05-25 10:26:47 -07:00
Benjamin Peterson
eaa5eeef57
Backed out changeset 709850f1ec67
2012-05-05 21:22:14 -04:00
Larry Hastings
cfe6f2af3c
Update Misc/NEWS for issues #14127 and #14705 . (And, technically, #10148.)
2012-05-05 17:39:09 -07:00
Stefan Krah
6b03f2ce45
Fix typo in exception message.
2012-05-05 22:37:05 +02:00
Benjamin Peterson
fbd85a0fbf
initialization not needed
2012-05-04 11:06:09 -04:00
Richard Oudkerk
f072b45e34
Fix for fatal errors in os.*utime*()
...
The address of an object was being decreffed instead of the object.
2012-05-04 12:01:31 +01:00
Larry Hastings
b333640aba
Issue #14127 : Fix two bugs with the Windows implementation.
2012-05-04 02:31:57 -07:00
Benjamin Peterson
9bd9d74996
what is a invalid tuple?
2012-05-04 01:42:41 -04:00
Benjamin Peterson
b399ab2c5c
clean up converted path on error
2012-05-04 01:31:13 -04:00
Benjamin Peterson
3e2e368f3b
avoid unitialized memory
2012-05-04 01:14:03 -04:00
Benjamin Peterson
35a8f0dee5
check correct variable for error
2012-05-04 01:10:59 -04:00
Larry Hastings
76ad59b7e8
Issue #14127 : Add ns= parameter to utime, futimes, and lutimes.
...
Removed futimens as it is now redundant.
Changed shutil.copystat to use st_atime_ns and st_mtime_ns from os.stat
and ns= parameter to utime--it once again preserves exact metadata on Linux!
2012-05-03 00:30:07 -07:00
Jesus Cea
990eff0776
Backing out 86dc014cdd74. Not ready yet
2012-04-26 17:05:31 +02:00
Jesus Cea
2b47f0a23f
Close #10142 : Support for SEEK_HOLE/SEEK_DATA
2012-04-26 16:39:35 +02:00
Jesus Cea
1d642d2af1
Closes Issue #14661 : posix module: add O_EXEC, O_SEARCH, O_TTY_INIT (I add some Solaris constants too)
2012-04-24 20:59:17 +02:00
Jesus Cea
cf381206fc
Issue #14661 : posix module: add O_EXEC, O_SEARCH, O_TTY_INIT
2012-04-24 20:44:40 +02:00
Larry Hastings
6fe20b3aee
Issue #14127 : Add st_{cma}time_ns fields to os.stat() result object.
2012-04-19 15:07:49 -07:00
Benjamin Peterson
2dbda07a17
fix condition ( #14296 )
2012-03-16 10:12:55 -05:00
Benjamin Peterson
7b51b8de38
try to fix compilation on glibc's with cpu sets ( #14296 )
2012-03-14 22:28:25 -05:00
Victor Stinner
5d272cc6a2
Close #14180 : Factorize code to convert a number of seconds to time_t, timeval or timespec
...
time.ctime(), gmtime(), time.localtime(), datetime.date.fromtimestamp(),
datetime.datetime.fromtimestamp() and datetime.datetime.utcfromtimestamp() now
raises an OverflowError, instead of a ValueError, if the timestamp does not fit
in time_t.
datetime.datetime.fromtimestamp() and datetime.datetime.utcfromtimestamp() now
round microseconds towards zero instead of rounding to nearest with ties going
away from zero.
2012-03-13 13:35:55 +01:00
Brett Cannon
efb00c0cc1
Issue #14153 Create _Py_device_encoding() to prevent _io from having to import
...
the os module.
2012-02-29 18:31:31 -05:00
Georg Brandl
2fb477c0f0
Merge 3.2: Issue #13703 plus some related test suite fixes.
2012-02-21 00:33:36 +01:00
Georg Brandl
09a7c72cad
Merge from 3.1: Issue #13703 : add a way to randomize the hash values of basic types (str, bytes, datetime)
...
in order to make algorithmic complexity attacks on (e.g.) web apps much more complicated.
The environment variable PYTHONHASHSEED and the new command line flag -R control this
behavior.
2012-02-20 21:31:46 +01:00
Georg Brandl
2daf6ae249
Issue #13703 : add a way to randomize the hash values of basic types (str, bytes, datetime)
...
in order to make algorithmic complexity attacks on (e.g.) web apps much more complicated.
The environment variable PYTHONHASHSEED and the new command line flag -R control this
behavior.
2012-02-20 19:54:16 +01:00
Antoine Pitrou
bcf2b59fb5
Issue #13609 : Add two functions to query the terminal size:
...
os.get_terminal_size (low level) and shutil.get_terminal_size (high level).
Patch by Zbigniew Jędrzejewski-Szmek.
2012-02-08 23:28:36 +01:00
Victor Stinner
4195b5caea
Backout f8409b3d6449: the PEP 410 is not accepted yet
2012-02-08 23:03:19 +01:00
Victor Stinner
ccd5715a14
PEP 410
2012-02-08 14:31:50 +01:00
Victor Stinner
1aa54a417d
Issue #13964 : Skip os.*utime*() tests if os.stat() doesn't support timestamp
...
with a subsecond resolution
2012-02-08 04:09:37 +01:00
Victor Stinner
a2f7c00638
Issue #13964 : Split os.*utime*() subsecond tests into multiple tests to help
...
debugging
2012-02-08 03:36:25 +01:00
Charles-François Natali
7794090251
Following Nick's suggestion, rename posix.fdlistdir() to posix.flistdir(), to
...
be consistent with other functions accepting file descriptors (fdlistdir() was
added in 3.3, so hasn't been released yet).
2012-02-06 19:54:48 +01:00
Antoine Pitrou
f3b2d88b67
Issue #8828 : Add new function os.replace(), for cross-platform renaming with overwriting.
2012-01-30 22:08:52 +01:00
Antoine Pitrou
91ecea24f5
Issue #13772 : In os.symlink() under Windows, do not try to guess the link
...
target's type (file or directory). The detection was buggy and made the
call non-atomic (therefore prone to race conditions).
2012-01-24 09:05:18 +01:00
Antoine Pitrou
5311c1d7ab
Issue #13772 : In os.symlink() under Windows, do not try to guess the link
...
target's type (file or directory). The detection was buggy and made the
call non-atomic (therefore prone to race conditions).
2012-01-24 08:59:28 +01:00
Martin v. Löwis
50590f111b
Use GetModuleHandleW to avoid *A functions where possible.
2012-01-14 17:54:09 +01:00
Victor Stinner
e83f899364
Issue #13530 : Document os.lseek() result
...
Patch written by Jérémy Anger.
2011-12-17 23:15:09 +01:00
Charles-François Natali
76961faaa0
Issue #13757 : Change os.fdlistdir() so that it duplicates the passed file
...
descriptor (instead of closing it).
2012-01-10 20:25:09 +01:00
Charles-François Natali
f2840a8890
Backed out changeset 36f2e236c601: For some reason, rewinddir() doesn't work as
...
it should on OpenIndiana.
2012-01-08 20:30:47 +01:00
Charles-François Natali
38f425e475
Issue #13739 : It's simpler and more direct to call rewinddir() at the
...
beginning.
2012-01-08 19:07:18 +01:00
Charles-François Natali
7546ad327d
Issue #13739 : In os.listdir(), rewind the directory stream (so that listdir()
...
can be called again on the same open file).
2012-01-08 18:34:06 +01:00
Victor Stinner
25ec056cc2
Issue #13530 : Document os.lseek() result
...
Patch written by Jérémy Anger.
2011-12-17 23:15:22 +01:00
Victor Stinner
1b57967b96
Issue #13560 : Locale codec functions use the classic "errors" parameter,
...
instead of surrogateescape
So it would be possible to support more error handlers later.
2011-12-17 05:47:23 +01:00
Victor Stinner
1f33f2b0c3
Issue #13560 : os.strerror() now uses the current locale encoding instead of UTF-8
2011-12-17 04:45:09 +01:00
Victor Stinner
984890fcbb
Close #13415 : Test in configure if unsetenv() has a return value or not.
...
Patch written by Charles-François Natali.
2011-11-24 13:53:38 +01:00
Benjamin Peterson
e8eb0e82f3
merge 3.2
2011-11-22 23:14:47 -06:00
Benjamin Peterson
4bb867d3ec
plug refleak
2011-11-22 23:12:49 -06:00
Victor Stinner
65170954e0
(Merge 3.2) Issue #13415 : os.unsetenv() doesn't ignore errors anymore.
2011-11-22 22:16:17 +01:00
Victor Stinner
60b385e813
Issue #13415 : os.unsetenv() doesn't ignore errors anymore.
2011-11-22 22:01:28 +01:00
Victor Stinner
f8facacf30
Fix compiler warnings
2011-11-22 02:30:47 +01:00
Victor Stinner
9d3b93ba30
Use the new Unicode API
...
* Replace PyUnicode_FromUnicode(NULL, 0) by PyUnicode_New(0, 0)
* Replce PyUnicode_FromUnicode(str, len) by PyUnicode_FromWideChar(str, len)
* Replace Py_UNICODE by wchar_t
* posix_putenv() uses PyUnicode_FromFormat() to create the string, instead
of PyUnicode_FromUnicode() + _snwprintf()
2011-11-22 02:27:30 +01:00
Victor Stinner
f7c5ae2257
Issue #13374 : Deprecate os.getcwdb() on Windows
2011-11-16 23:43:07 +01:00
Victor Stinner
1ab6c2d2c2
Issue #13374 : The Windows bytes API has been deprecated in the os module. Use
...
Unicode filenames instead of bytes filenames to not depend on the ANSI code
page anymore and to support any filename.
2011-11-15 22:27:41 +01:00
Victor Stinner
6139c1bfa3
Issue #12442 : nt._getdiskusage() is now using the Windows Unicode API
2011-11-09 22:14:14 +01:00
Jesus Cea
d03a49150f
Commit 59dca1e2363d for issue #13327 introduced a compilation warning
2011-11-08 17:28:04 +01:00
Brian Curtin
569b494320
Fix #13327 . utimensat now has the atime and mtime arguments set as optional,
...
defaulting to None like the other utimes family members. It now accepts
keyword arguments because, unlike other other functions in the family,
it has a `flags` value at the end of the argument list (which
retains its 0 default).
2011-11-07 16:09:20 -06:00
Brian Curtin
7ef53ef916
Forgot to apply the futimesat change.
2011-11-07 14:38:24 -06:00
Brian Curtin
c1b65d1831
Fix 13327. Remove explicit None arguments from futimes, futimens, futimesat,
...
and lutimes.
2011-11-07 14:18:54 -06:00
Brian Curtin
b0d5b5d3b2
Adjust None handling to be a bit more clean. Thanks to Benjamin
...
for pointing it out.
2011-11-07 10:51:18 -06:00
Brian Curtin
52fbea1d87
Fix #13327 . Remove the need for an explicit None as the second argument to
...
os.utime in order to update to the current time. The second argument is now
optional.
2011-11-06 13:41:17 -06:00
Ross Lagerwall
ab1078b987
(Merge 3.2) Issue #13339 .
2011-11-04 07:15:35 +02:00
Ross Lagerwall
dcfde5aac9
Issue #13339 : Fix compile error in posixmodule.c due to missing semicolon.
...
Thanks to Robert Xiao.
2011-11-04 07:09:14 +02:00
Victor Stinner
8b905bd9d4
Issue #13226 : Add RTLD_xxx constants to the os module. These constants can by
...
used with sys.setdlopenflags().
2011-10-25 13:34:04 +02:00
Martin v. Löwis
bd928fef42
Rename _Py_identifier to _Py_IDENTIFIER.
2011-10-14 10:20:37 +02:00
Victor Stinner
beac78bb24
Use PyUnicode_AsUnicodeAndSize() instead of PyUnicode_GET_SIZE()
2011-10-11 21:55:01 +02:00
Martin v. Löwis
1ee1b6fe0d
Use identifier API for PyObject_GetAttrString.
2011-10-10 18:11:30 +02:00
Victor Stinner
034f6cf10c
Add PyUnicode_Copy() function, include it to the public API
2011-09-30 02:26:44 +02:00
Victor Stinner
eb5657a0c5
posix module catches PyUnicode_AsUnicode() failure
...
* Replace PyUnicode_AS_UNICODE by PyUnicode_AsUnicode, PyUnicode_AS_UNICODE is
no more a real macro
* Replace Py_UNICODE by wchar_t in code specific to Windows
2011-09-30 01:44:27 +02:00
Victor Stinner
639418812f
Use the new Py_ARRAY_LENGTH macro
2011-09-29 00:42:28 +02:00
Victor Stinner
6fa6777503
os.statvfs() encodes the filename to the filesystem encoding
2011-09-20 04:04:33 +02:00
Ross Lagerwall
b1e5d595af
Issue #12517 : Silence warning on windows buildbots (from 7fd80c61ddaa).
2011-09-19 08:30:43 +02:00
Benjamin Peterson
9428d53eb4
only compile xattrs on glibc ( closes #12720 )
2011-09-14 11:45:52 -04:00
Benjamin Peterson
b77fe17320
Use xattr functions from sys/xattr.h instead of attr/xattr.h ( closes #12720 )
...
sys/xattr.h is glibc while attr/xattr.h is a separate library.
2011-09-13 17:20:47 -04:00
Jesus Cea
54b01498e3
Typo
2011-09-10 01:53:19 +02:00
Jesus Cea
9c82227277
Yet another fix for #12763 : test_posix failure on OpenIndiana
2011-09-10 01:40:52 +02:00
Jesus Cea
f2cb4e8b35
Close issue 12952: Solaris/Illumos (OpenIndiana) Scheduling policies
2011-09-09 23:55:42 +02:00
Larry Hastings
9e3e70b331
Issue #12904 : os.utime, os.futimes, os.lutimes, and os.futimesat now write
...
atime and mtime with nanosecond precision on modern POSIX platforms.
2011-09-08 19:29:07 -07:00
Charles-François Natali
ea0d5fcb4a
Issue #12871 : sched_get_priority_(min|max) might not be defined even though
...
<sched.h> is available (most notably on OpenBSD when built without pthread):
add an explicit configure check.
2011-09-06 19:03:35 +02:00
Benjamin Peterson
799bd80d8a
expose linux extended file system attributes ( closes #12720 )
2011-08-31 22:15:17 -04:00
Brian Curtin
dfc80e3d97
Replace Py_NotImplemented returns with the macro form Py_RETURN_NOTIMPLEMENTED.
...
The macro was introduced in #12724 .
2011-08-10 20:28:54 -05:00
Benjamin Peterson
a17a5d67b4
typo
2011-08-09 16:49:13 -05:00
Benjamin Peterson
087a2a951c
merge 3.2
2011-08-04 11:09:57 -05:00
Benjamin Peterson
fc9bbd1692
dosmodule is, thankfully, no more
2011-08-04 11:07:42 -05:00
Benjamin Peterson
7ac9214e43
fix arg strings
2011-08-03 08:54:26 -05:00
Benjamin Peterson
4e36d5ae88
need NULL sentinel
2011-08-02 19:56:11 -05:00
Benjamin Peterson
bad9c2f13a
avoid warning when SchedParamType is not used
2011-08-02 18:42:14 -05:00
Benjamin Peterson
e3298dda6d
only add sched_param if it is initialized
2011-08-02 18:40:46 -05:00
Benjamin Peterson
8f7bdd3208
I have been spoiled by chained comparisons in python
2011-08-02 18:34:30 -05:00
Benjamin Peterson
9b374bfa03
comparing on number of cpus makes more sense
2011-08-02 18:22:30 -05:00