소스 검색

Add support listing release of each version

Jan Holthuis 5 년 전
부모
커밋
88ff5dd9b2
2개의 변경된 파일19개의 추가작업 그리고 5개의 파일을 삭제
  1. 1 0
      sphinx_multiversion/main.py
  2. 18 5
      sphinx_multiversion/sphinx.py

+ 1 - 0
sphinx_multiversion/main.py

@@ -92,6 +92,7 @@ def main(argv=None):
             metadata[versionref.name] = {
                 "name": versionref.name,
                 "version": versionref.version,
+                "release": versionref.release,
                 "source": versionref.source,
                 "sourcedir": srcdir,
                 "outputdir": outputdir,

+ 18 - 5
sphinx_multiversion/sphinx.py

@@ -14,7 +14,12 @@ DEFAULT_BRANCH_WHITELIST = r'^.*$'
 DEFAULT_REMOTE_WHITELIST = None
 DEFAULT_OUTPUTDIR_FORMAT = r'{version.version}/{language}'
 
-Version = collections.namedtuple('Version', ['name', 'url', 'version'])
+Version = collections.namedtuple('Version', [
+    'name',
+    'url',
+    'version',
+    'release',
+])
 
 
 class VersionInfo:
@@ -26,15 +31,23 @@ class VersionInfo:
     @property
     def tags(self):
         return [
-            Version(v["name"], self.vpathto(v["name"]), v["version"])
-            for v in self.metadata.values() if v["source"] == "tags"
+            Version(
+                name=v["name"],
+                url=self.vpathto(v["name"]),
+                version=v["version"],
+                release=v["release"],
+            ) for v in self.metadata.values() if v["source"] == "tags"
         ]
 
     @property
     def branches(self):
         return [
-            Version(v["name"], self.vpathto(v["name"]), v["version"])
-            for v in self.metadata.values() if v["source"] != "tags"
+            Version(
+                name=v["name"],
+                url=self.vpathto(v["name"]),
+                version=v["version"],
+                release=v["release"],
+            ) for v in self.metadata.values() if v["source"] != "tags"
         ]
 
     def __iter__(self):