[py3] Avoid setting attribute on Element instance in wdoc view
This change is needed to make "wdoc" view work on Python 3. Indeed,
before this patch, we used to set a "parent" attribute on Element
instances, which is not permitted since Python 3.3 as
xml.etree.ElementTree uses the C implementation by default.
To get rid of this "parent" attribute, we rework the XML nodes
processing logic to return and retrieve a node along with its parent in
several place of the code. Namely, build_toc_index() now accepts the
"parent" value for "node" and inserts it in the "index" dict (thus avoid
`node.parent = <value>`). Respectively, every query to the "index" dict
is updated to also retrieve the "parent" (thus avoiding `<value> =
node.parent`). Later in InlineHelpView class, the "index" dict is bound
to "tocindex" attribute so we adjust how it is queried in respective
methods.
Tests cubicweb/web/test/unittest_views_wdoc.py now pass on Python 3.
.TH cubicweb\-ctl 1 "2010-01-14" cubicweb\-ctl
.SH NAME
.B cubicweb\-ctl
\- cubicweb control utility
.SH SYNOPSIS
.B cubicweb-ctl <command>
[
.I OPTIONS
] [
.I <command arguments>
]
.SH DESCRIPTION
.PP
CubicWeb utility to create and control instances, and more generally do all
cubicweb's related tasks you can have to do using the command line. Available
commands will depends on which part of the framework are installed.
.PP
Type
.B "cubicweb\-ctl <command> \fB\-\-help\fR"
for more information about a specific command.
.SH COPYRIGHT
Copyright (c) 2003-2010 LOGILAB S.A. (Paris, FRANCE).
http://www.logilab.fr/ -- mailto:contact@logilab.fr