Staging
v0.5.1
https://github.com/python/cpython
Revision 27b38b99b3a154fa5c25cd67fe01fb4fc04604b0 authored by Paul Ganssle on 15 August 2019, 19:08:57 UTC, committed by GitHub on 15 August 2019, 19:08:57 UTC
This fixes an inconsistency between the Python and C implementations of
the datetime module. The pure python version of the code was not
accepting offsets greater than 23:59 but less than 24:00. This is an
accidental legacy of the original implementation, which was put in place
before tzinfo allowed sub-minute time zone offsets.

GH-14878

(cherry picked from commit 92c7e30adf5c81a54d6e5e555a6bdfaa60157a0d)
1 parent 64db5aa
Raw File
Tip revision: 27b38b99b3a154fa5c25cd67fe01fb4fc04604b0 authored by Paul Ganssle on 15 August 2019, 19:08:57 UTC
bpo-37642: Update acceptable offsets in timezone (GH-14878) (#15227)
Tip revision: 27b38b9
_testinternalcapi.c
/*
 * C Extension module to test Python internal C APIs (Include/internal).
 */

#if !defined(Py_BUILD_CORE_BUILTIN) && !defined(Py_BUILD_CORE_MODULE)
#  error "Py_BUILD_CORE_BUILTIN or Py_BUILD_CORE_MODULE must be defined"
#endif

#define PY_SSIZE_T_CLEAN

#include "Python.h"
#include "pycore_initconfig.h"


static PyObject *
get_configs(PyObject *self, PyObject *Py_UNUSED(args))
{
    return _Py_GetConfigsAsDict();
}


static PyMethodDef TestMethods[] = {
    {"get_configs", get_configs, METH_NOARGS},
    {NULL, NULL} /* sentinel */
};


static struct PyModuleDef _testcapimodule = {
    PyModuleDef_HEAD_INIT,
    "_testinternalcapi",
    NULL,
    -1,
    TestMethods,
    NULL,
    NULL,
    NULL,
    NULL
};


PyMODINIT_FUNC
PyInit__testinternalcapi(void)
{
    return PyModule_Create(&_testcapimodule);
}
back to top