[CalendarServer-changes] [14315] CalendarServer/trunk/setup.py

source_changes at macosforge.org source_changes at macosforge.org
Thu Jan 15 13:21:02 PST 2015


Revision: 14315
          http://trac.calendarserver.org//changeset/14315
Author:   wsanchez at apple.com
Date:     2015-01-15 13:21:02 -0800 (Thu, 15 Jan 2015)
Log Message:
-----------
Modify version() so that if it can't detect the svn revision, look for an svnversion.txt file.

Modified Paths:
--------------
    CalendarServer/trunk/setup.py

Modified: CalendarServer/trunk/setup.py
===================================================================
--- CalendarServer/trunk/setup.py	2015-01-15 20:10:35 UTC (rev 14314)
+++ CalendarServer/trunk/setup.py	2015-01-15 21:21:02 UTC (rev 14315)
@@ -33,10 +33,13 @@
         "twisted.plugins",
     ]
 
-    for pkg in filter(
-        lambda p: os.path.isdir(p) and os.path.isfile(os.path.join(p, "__init__.py")),
-        os.listdir(".")
-    ):
+    def is_package(path):
+        return (
+            os.path.isdir(path) and
+            os.path.isfile(os.path.join(path, "__init__.py"))
+        )
+
+    for pkg in filter(is_package, os.listdir(".")):
         modules.extend([pkg, ] + [
             "{}.{}".format(pkg, subpkg)
             for subpkg in setuptools_find_packages(pkg)
@@ -66,6 +69,8 @@
 
     source_root = dirname(abspath(__file__))
 
+    full_version = base_version
+
     for branch in branches:
         cmd = ["svnversion", "-n", source_root, branch]
 
@@ -74,29 +79,36 @@
 
         except OSError as e:
             if e.errno == errno.ENOENT:
-                full_version = base_version + "-unknown"
+                svn_revision = None
                 break
             raise
 
         if "S" in svn_revision:
             continue
 
-        full_version = base_version
-
         if branch == "trunk":
             full_version += "b.trunk"
         elif branch.endswith("-dev"):
             full_version += "c.dev"
 
         if svn_revision in ("exported", "Unversioned directory"):
-            full_version += "-unknown"
-        else:
-            full_version += "-r{revision}".format(revision=svn_revision)
+            svn_revision_filename = joinpath(
+                dirname(__file__), "svnversion.txt"
+            )
+            try:
+                svn_revision_file = file(svn_revision_filename)
+                svn_revision = svn_revision_file.read().strip()
+            except (IOError, OSError):
+                svn_revision = None
 
         break
     else:
         full_version = base_version
         full_version += "a.unknown"
+
+    if svn_revision is None:
+        full_version += "-unknown"
+    else:
         full_version += "-r{revision}".format(revision=svn_revision)
 
     return full_version
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20150115/7610e6d0/attachment.html>


More information about the calendarserver-changes mailing list