# Buggy code
def provide_context_and_uptodate(self, cat, lang, node=None):
    """Provide data for the context and the uptodate list for the list of the given classifiation."""
    cat_path = self.extract_hierarchy(cat)
    kw = {
        "category_path": self.site.config["CATEGORY_PATH"],
        "category_prefix": self.site.config["CATEGORY_PREFIX"],
        "category_pages_are_indexes": self.site.config["CATEGORY_PAGES_ARE_INDEXES"],
        "tzinfo": self.site.tzinfo,
        "category_pages_descriptions": self.site.config["CATEGORY_PAGES_DESCRIPTIONS"],
        "category_pages_titles": self.site.config["CATEGORY_PAGES_TITLES"],
    }
    posts = self.site.posts_per_classification[self.classification_name][lang]
    children = [
        child
        for child in node.children
        if len(
            [
                post
                for post in posts.get(child.classification_name, [])
                if self.site.config["SHOW_UNTRANSLATED_POSTS"]
                or post.is_translation_available(lang)
            ]
        )
        > 0
    ]
    subcats = [
        (
            child.name,
            self.site.link(self.classification_name, child.classification_name, lang),
        )
        for child in children
    ]
    friendly_name = self.get_classification_friendly_name(cat, lang)
    context = {
        "title": self.site.config["CATEGORY_PAGES_TITLES"]
        .get(lang, {})
        .get(cat, self.site.MESSAGES[lang]["Posts about %s"] % friendly_name),
        "description": self.site.config["CATEGORY_PAGES_DESCRIPTIONS"]
        .get(lang, {})
        .get(cat),
        "kind": "category",
        "pagekind": ["tag_page", "index" if self.show_list_as_index else "list"],
        "tag": friendly_name,
        "category": cat,
        "category_path": cat_path,
        "subcategories": subcats,
    }
    if self.show_list_as_index:
        context["rss_link"] = (
            """<link rel="alternate" type="application/rss+xml" type="application/rss+xml" title="RSS for tag {0} ({1})" href="{2}">""".format(
                friendly_name, lang, self.site.link("category_rss", cat, lang)
            )
        )
    kw.update(context)
    return context, kw


# Traceback (KeyError)
########################################
TaskError - taskid:render_galleries:output/galleries/index.html
PythonAction Error
Traceback (most recent call last):
File "/home/kwpolska/virtualenvs/nikola-py2/lib/python2.7/site-packages/doit/action.py", line 360, in execute
returned_value = self.py_callable(*self.args, **kwargs)
File "/home/kwpolska/git/nikola/nikola/plugins/task/galleries.py", line 466, in render_gallery_index
self.site.render_template(template_name, output_name, context)
File "/home/kwpolska/git/nikola/scripts/../nikola/nikola.py", line 607, in render_template
template_name, None, local_context)
File "/home/kwpolska/git/nikola/nikola/plugins/template/mako.py", line 88, in render_template
data = template.render_unicode(**context)
File "/home/kwpolska/virtualenvs/nikola-py2/lib/python2.7/site-packages/mako/template.py", line 452, in render_unicode
as_unicode=True)
File "/home/kwpolska/virtualenvs/nikola-py2/lib/python2.7/site-packages/mako/runtime.py", line 807, in _render
**_kwargs_for_callable(callable_, data))
File "/home/kwpolska/virtualenvs/nikola-py2/lib/python2.7/site-packages/mako/runtime.py", line 839, in _render_context
_exec_template(inherit, lclcontext, args=args, kwargs=kwargs)
File "/home/kwpolska/virtualenvs/nikola-py2/lib/python2.7/site-packages/mako/runtime.py", line 865, in _exec_template
callable_(context, *args, **kwargs)
File "/home/kwpolska/Desktop/nikola-translated-path/cache/.mako.tmp/base.tmpl.py", line 91, in render_body
__M_writer(unicode(base.meta_translations()))
File "/home/kwpolska/Desktop/nikola-translated-path/cache/.mako.tmp/base_helper.tmpl.py", line 274, in render_meta_translations
__M_writer(unicode(_link(permalink, None, langname)))
File "/home/kwpolska/git/nikola/scripts/../nikola/nikola.py", line 765, in link
return self.path(*args, is_link=True)
File "/home/kwpolska/git/nikola/scripts/../nikola/nikola.py", line 729, in path
path = self.path_handlers[kind](name, lang)
KeyError: u'/galleries/galleries/index.html'

# Fixed code
def provide_context_and_uptodate(self, classification, lang, node=None):
    """Provide data for the context and the uptodate list for the list of the given classifiation."""
    cat_path = self.extract_hierarchy(classification)
    kw = {
        "category_path": self.site.config["CATEGORY_PATH"],
        "category_prefix": self.site.config["CATEGORY_PREFIX"],
        "category_pages_are_indexes": self.site.config["CATEGORY_PAGES_ARE_INDEXES"],
        "tzinfo": self.site.tzinfo,
        "category_pages_descriptions": self.site.config["CATEGORY_PAGES_DESCRIPTIONS"],
        "category_pages_titles": self.site.config["CATEGORY_PAGES_TITLES"],
    }
    posts = self.site.posts_per_classification[self.classification_name][lang]
    if node is None:
        children = []
    else:
        children = [
            child
            for child in node.children
            if len(
                [
                    post
                    for post in posts.get(child.classification_name, [])
                    if self.site.config["SHOW_UNTRANSLATED_POSTS"]
                    or post.is_translation_available(lang)
                ]
            )
            > 0
        ]
    subcats = [
        (
            child.name,
            self.site.link(self.classification_name, child.classification_name, lang),
        )
        for child in children
    ]
    friendly_name = self.get_classification_friendly_name(classification, lang)
    context = {
        "title": self.site.config["CATEGORY_PAGES_TITLES"]
        .get(lang, {})
        .get(
            classification, self.site.MESSAGES[lang]["Posts about %s"] % friendly_name
        ),
        "description": self.site.config["CATEGORY_PAGES_DESCRIPTIONS"]
        .get(lang, {})
        .get(classification),
        "pagekind": ["tag_page", "index" if self.show_list_as_index else "list"],
        "tag": friendly_name,
        "category": classification,
        "category_path": cat_path,
        "subcategories": subcats,
    }
    if self.show_list_as_index:
        context["rss_link"] = (
            """<link rel="alternate" type="application/rss+xml" type="application/rss+xml" title="RSS for tag {0} ({1})" href="{2}">""".format(
                friendly_name,
                lang,
                self.site.link("category_rss", classification, lang),
            )
        )
    kw.update(context)
    return context, kw