doc/tools/generate_modules.py
author Sylvain Thénault <sylvain.thenault@logilab.fr>
Tue, 30 Mar 2010 10:57:42 +0200
branchstable
changeset 5069 135c5d7b89d0
parent 4831 c5aec27c1bf7
child 5421 8167de96c523
permissions -rw-r--r--
[querier] introduce RepeatList class, used to optimize size of data returned for result set description When rql query has no ambiguity, we used to return the same description * N where N is the size of the result set. Returning RepeatList class avoid that multiplication. According to quick benchmark this improve performance for result set whose size is ~ > 50, has very small penalty for rset < 50, and in any case improve the size of data to be transfered over the network through pyro connection.

"""generate list of modules for sphinx doc

:organization: Logilab
:copyright: 2001-2010 LOGILAB S.A. (Paris, FRANCE), license is LGPL v2.
:contact: http://www.logilab.fr/ -- mailto:contact@logilab.fr
:license: GNU Lesser General Public License, v2.1 - http://www.gnu.org/licenses
"""

import sys

EXCLUDE_DIRS = ('test', 'tests', 'examples', 'data', 'doc', 'dist',
                '.hg', 'migration')
if __name__ == '__main__':

    from logilab.common.sphinxutils import ModuleGenerator
    cw_gen = ModuleGenerator('cubicweb', '../..')
    cw_gen.generate("../book/en/annexes/api_cubicweb.rst",
                    EXCLUDE_DIRS + ('cwdesklets', 'misc', 'skel', 'skeleton'))
    for modname in ('logilab', 'rql', 'yams'):
        cw_gen = ModuleGenerator(modname, '../../../' + modname)
        cw_gen.generate("../book/en/annexes/api_%s.rst" % modname,
                        EXCLUDE_DIRS + ('tools',))