diff options
author | Jonathan Waltman <jonathan.waltman@gmail.com> | 2013-02-19 03:42:50 -0600 |
---|---|---|
committer | Jonathan Waltman <jonathan.waltman@gmail.com> | 2013-02-19 03:42:50 -0600 |
commit | 25cc0109aa0dd94a2fad9e83f97605f189aa09c7 (patch) | |
tree | 75b800d0bd3dec6eafd4f3c31c1ae0a887aebe54 /sphinx/search | |
parent | a8d8535fa855290aed3126ec4bc404fc8b769b14 (diff) | |
download | sphinx-25cc0109aa0dd94a2fad9e83f97605f189aa09c7.tar.gz |
Closes #1074: Add environment version info to the generated search index to avoid compatibility issues.
Diffstat (limited to 'sphinx/search')
-rw-r--r-- | sphinx/search/__init__.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sphinx/search/__init__.py b/sphinx/search/__init__.py index fddbcb65..5f64495b 100644 --- a/sphinx/search/__init__.py +++ b/sphinx/search/__init__.py @@ -191,7 +191,8 @@ class IndexBuilder(object): format = self.formats[format] frozen = format.load(stream) # if an old index is present, we treat it as not existing. - if not isinstance(frozen, dict): + if not isinstance(frozen, dict) or \ + frozen.get('envversion') != self.env.version: raise ValueError('old format') index2fn = frozen['filenames'] self._titles = dict(zip(index2fn, frozen['titles'])) @@ -275,7 +276,7 @@ class IndexBuilder(object): objnames = self._objnames return dict(filenames=filenames, titles=titles, terms=terms, objects=objects, objtypes=objtypes, objnames=objnames, - titleterms=title_terms) + titleterms=title_terms, envversion=self.env.version) def prune(self, filenames): """Remove data for all filenames not in the list.""" |