Remove sys.subversion and svn build identification leftovers.

This commit is contained in:
Georg Brandl 2011-03-06 10:35:42 +01:00
parent fe09a54280
commit 776e586114
8 changed files with 1 additions and 191 deletions

View file

@ -1255,7 +1255,6 @@ int_info -- a struct sequence with information about the int implementation.\n\
maxsize -- the largest supported length of containers.\n\
maxunicode -- the largest supported character\n\
builtin_module_names -- tuple of module names built into this interpreter\n\
subversion -- subversion information of the build as tuple\n\
version -- the version of this interpreter as a string\n\
version_info -- version information as a named tuple\n\
hexversion -- version information encoded as a single integer\n\
@ -1303,95 +1302,6 @@ settrace() -- set the global debug tracing function\n\
)
/* end of sys_doc */ ;
/* Subversion branch and revision management */
static const char _patchlevel_revision[] = PY_PATCHLEVEL_REVISION;
static const char headurl[] = "$HeadURL$";
static int svn_initialized;
static char patchlevel_revision[50]; /* Just the number */
static char branch[50];
static char shortbranch[50];
static const char *svn_revision;
static void
svnversion_init(void)
{
const char *python, *br_start, *br_end, *br_end2, *svnversion;
Py_ssize_t len;
int istag = 0;
if (svn_initialized)
return;
python = strstr(headurl, "/python/");
if (!python) {
strcpy(branch, "unknown branch");
strcpy(shortbranch, "unknown");
}
else {
br_start = python + 8;
br_end = strchr(br_start, '/');
assert(br_end);
/* Works even for trunk,
as we are in trunk/Python/sysmodule.c */
br_end2 = strchr(br_end+1, '/');
istag = strncmp(br_start, "tags", 4) == 0;
if (strncmp(br_start, "trunk", 5) == 0) {
strcpy(branch, "trunk");
strcpy(shortbranch, "trunk");
}
else if (istag || strncmp(br_start, "branches", 8) == 0) {
len = br_end2 - br_start;
strncpy(branch, br_start, len);
branch[len] = '\0';
len = br_end2 - (br_end + 1);
strncpy(shortbranch, br_end + 1, len);
shortbranch[len] = '\0';
}
else {
Py_FatalError("bad HeadURL");
return;
}
}
svnversion = _Py_svnversion();
if (strcmp(svnversion, "Unversioned directory") != 0 && strcmp(svnversion, "exported") != 0)
svn_revision = svnversion;
else if (istag) {
len = strlen(_patchlevel_revision);
assert(len >= 13);
assert(len < (sizeof(patchlevel_revision) + 13));
strncpy(patchlevel_revision, _patchlevel_revision + 11,
len - 13);
patchlevel_revision[len - 13] = '\0';
svn_revision = patchlevel_revision;
}
else
svn_revision = "";
svn_initialized = 1;
}
/* Return svnversion output if available.
Else return Revision of patchlevel.h if on branch.
Else return empty string */
const char*
Py_SubversionRevision()
{
svnversion_init();
return svn_revision;
}
const char*
Py_SubversionShortBranch()
{
svnversion_init();
return shortbranch;
}
PyDoc_STRVAR(flags__doc__,
"sys.flags\n\
@ -1595,10 +1505,6 @@ _PySys_Init(void)
PyUnicode_FromString(Py_GetVersion()));
SET_SYS_FROM_STRING("hexversion",
PyLong_FromLong(PY_VERSION_HEX));
svnversion_init();
SET_SYS_FROM_STRING("subversion",
Py_BuildValue("(sss)", "CPython", branch,
svn_revision));
SET_SYS_FROM_STRING("_mercurial",
Py_BuildValue("(szz)", "CPython", _Py_hgidentifier(),
_Py_hgversion()));