[library-web] combine mallard documents regardless of their order
- From: Frederic Peters <fpeters src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [library-web] combine mallard documents regardless of their order
- Date: Wed, 29 Jan 2014 20:51:25 +0000 (UTC)
commit 058d083d9fdda0f1ff4273bd4707aff5c87a1385
Author: Frédéric Péters <fpeters 0d be>
Date: Wed Jan 29 20:49:38 2014 +0000
combine mallard documents regardless of their order
src/lgo.py | 55 ++++++++++++++++++++-----------------------------
src/modtypes/base.py | 2 -
2 files changed, 23 insertions(+), 34 deletions(-)
---
diff --git a/src/lgo.py b/src/lgo.py
index a9a69c8..7604f1c 100755
--- a/src/lgo.py
+++ b/src/lgo.py
@@ -151,7 +151,7 @@ class Lgo(App):
else:
filename = module
doc_modules.extend(self.extract_modules(filename))
- for doc_module in doc_modules:
+ for doc_module in self.fix_modules_order(doc_modules):
doc_module.process()
sys.exit(0)
@@ -174,6 +174,19 @@ class Lgo(App):
self.generate_symbols_files()
self.generate_static_pages()
+ def fix_modules_order(self, modules):
+ for doc in modules[:]:
+ # combine gnome-help from gnome-getting-started-docs with
+ # gnome-help from gnome-user-docs
+ if doc.modulename == 'gnome-help' and doc.tarballname == 'gnome-getting-started-docs':
+ modules.remove(doc)
+ try:
+ gnome_help_doc = [x for x in modules if x.modulename == 'gnome-help'][0]
+ except IndexError:
+ continue
+ gnome_help_doc.extend_mallard(doc)
+ return modules
+
def get_yelp_categories(self):
logging.info('Getting categories from Yelp')
@@ -498,7 +511,7 @@ class Lgo(App):
tree = ET.ElementTree(gduxrefs)
tree.write(os.path.join(tmp_dirname, 'gduxrefs.xml'))
- for doc_module in doc_modules:
+ for doc_module in self.fix_modules_order(doc_modules):
logging.info('processing %s (from %s moduleset)' % (
doc_module, version_number))
doc_module.process()
@@ -714,31 +727,6 @@ class Lgo(App):
else:
continue
- if doc.modulename == 'gnome-help' and tarname_without_minor.startswith(
- 'gnome-getting-started-docs'):
- # special handling
- try:
- gnome_help_doc = [x for x in app.documents if x.module == 'gnome-help'][0]
- except IndexError:
- logging.debug('failed combining documents (%s) (missing gnome-help)' % \
- doc.one_dot_version)
- else:
- try:
- gnome_help_doc.version_subs.get(doc.one_dot_version).extend_mallard(doc)
- except AttributeError:
- logging.debug('failed combining documents (%s) (missing version)' % \
- doc.one_dot_version)
- continue
- logging.debug('extending gnome-help with gnome-getting-started-docs %s' % \
- doc.one_dot_version)
- doc.filename = filename
- doc.mtime_tarball = mtime
- if extraction_happened:
- doc.extract(force=True)
- else:
- extraction_happened = doc.extract()
- continue
-
if '$(' in doc.modulename:
logging.debug('skipping because it has $( in its modulename')
continue
@@ -769,7 +757,6 @@ class Lgo(App):
doc.path = self.get_module_web_path(doc)
if self.config.channels is None or doc.channel in self.config.channels:
doc_modules.append(doc)
- doc.get_libgo_document([])
else:
logging.debug('ignoring %s, not in an appropriate channel' % doc.modulename)
@@ -791,6 +778,7 @@ class Lgo(App):
def process_extra_tarballs(self):
if self.config.extra_tarballs:
logging.info('processing extra tarballs')
+ doc_modules = []
for url in self.config.extra_tarballs:
logging.debug('processing extra tarball: %s' % url)
filename = self.download(url)
@@ -800,18 +788,21 @@ class Lgo(App):
filename = [filename]
for fname in filename:
- for doc_module in self.extract_modules(fname):
- doc_module.process()
+ doc_modules.extend(self.extract_modules(fname))
+ for doc_module in self.fix_modules_order(doc_modules):
+ doc_module.process()
def process_nightly_tarballs(self):
logging.info('processing nightly tarballs')
+ doc_modules = []
for filename in os.listdir(self.config.nightly_tarballs_location):
if not (filename.endswith('.tar.gz') or filename.endswith('.tar.bz2') or
filename.endswith('.tar.xz')):
continue
filename = os.path.join(self.config.nightly_tarballs_location, filename)
- for doc_module in self.extract_modules(filename, nightly = True):
- doc_module.process()
+ doc_modules.extend(self.extract_modules(filename, nightly=True))
+ for doc_module in self.fix_modules_order(doc_modules):
+ doc_module.process()
def generate_indexes(self):
logging.info('generating indexes')
diff --git a/src/modtypes/base.py b/src/modtypes/base.py
index 1906838..b98f466 100644
--- a/src/modtypes/base.py
+++ b/src/modtypes/base.py
@@ -135,7 +135,6 @@ class DocModule(object):
doc.tarballname = self.tarballname
doc._last_version = self.version
doc.versions = [self.one_dot_version]
- doc.version_subs = {}
app.documents.append(doc)
else:
#if doc._last_version == self.version and not self.git_version:
@@ -161,7 +160,6 @@ class DocModule(object):
doc.languages.append(lang)
doc.version_mapping[self.one_dot_version] = self.version
- doc.version_subs[self.one_dot_version] = self
# only keep authorised languages
if app.config.languages:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]