From hpk at codespeak.net Wed Aug 26 20:25:22 2009 From: hpk at codespeak.net (hpk at codespeak.net) Date: Wed, 26 Aug 2009 20:25:22 +0200 (CEST) Subject: [vadm] r67219 - vadm/dist/vadm/doc Message-ID: <20090826182522.33931168035@codespeak.net> Author: hpk Date: Wed Aug 26 20:25:20 2009 New Revision: 67219 Modified: vadm/dist/vadm/doc/confrest.py vadm/dist/vadm/doc/conftest.py Log: get rid of old style restdoc inclusion Modified: vadm/dist/vadm/doc/confrest.py ============================================================================== --- vadm/dist/vadm/doc/confrest.py (original) +++ vadm/dist/vadm/doc/confrest.py Wed Aug 26 20:25:20 2009 @@ -1,170 +1,5 @@ -import py -from py.__.misc.rest import convert_rest_html, strip_html_header -from py.__.misc.difftime import worded_time -from vadm.__.doc.conftest import get_apigenpath, get_docpath -from py.__.apigen.linker import relpath - -html = py.xml.html - -class Page(object): - doctype = ('\n') - - def __init__(self, project, title, targetpath, stylesheeturl=None, - type="text/html", encoding="ISO-8859-1"): - self.project = project - self.title = project.prefix_title + title - self.targetpath = targetpath - self.stylesheeturl = stylesheeturl - self.type = type - self.encoding = encoding - - self.body = html.body() - self.head = html.head() - self._root = html.html(self.head, self.body) - self.fill() - - def a_docref(self, name, relhtmlpath): - docpath = self.project.get_docpath() - return html.a(name, class_="menu", - href=relpath(self.targetpath.strpath, - docpath.join(relhtmlpath).strpath)) - - def a_apigenref(self, name, relhtmlpath): - apipath = get_apigenpath() - return html.a(name, class_="menu", - href=relpath(self.targetpath.strpath, - apipath.join(relhtmlpath).strpath)) - - def fill_menubar(self): - items = [ - self.a_docref("index", "index.html"), - self.a_apigenref("api", "api/index.html"), - self.a_apigenref("source", "source/index.html"), - self.a_docref("contact", "contact.html"), - self.a_docref("download", "download.html"), - ] - items2 = [items.pop(0)] - sep = " " - for item in items: - items2.append(sep) - items2.append(item) - self.menubar = html.div(id="menubar", *items2) - - def fill(self): - content_type = "%s;charset=%s" %(self.type, self.encoding) - self.head.append(html.title(self.title)) - self.head.append(html.meta(name="Content-Type", content=content_type)) - if self.stylesheeturl: - self.head.append( - html.link(href=self.stylesheeturl, - media="screen", rel="stylesheet", - type="text/css")) - self.fill_menubar() - - self.metaspace = html.div( - html.div(self.title, class_="project_title"), - self.menubar, - id='metaspace') - - self.body.append(self.project.logo) - self.body.append(self.metaspace) - self.contentspace = html.div(id="contentspace") - self.body.append(self.contentspace) - - def unicode(self, doctype=True): - page = self._root.unicode() - if doctype: - return self.doctype + page - else: - return page - -class PyPage(Page): - def get_menubar(self): - menubar = super(PyPage, self).get_menubar() - # base layout - menubar.append( - html.a("issue", href="https://codespeak.net/issue/py-dev/", - class_="menu"), - ) - return menubar - - -def getrealname(username): - try: - import uconf - except ImportError: - return username - try: - user = uconf.system.User(username) - except KeyboardInterrupt: - raise - try: - return user.realname or username - except KeyError: - return username - - -class Project: - mydir = py.magic.autopath().dirpath() - # string for url, path for local file - stylesheet = mydir.join('style.css') - title = "py lib" - prefix_title = "" # we have a logo already containing "py lib" - encoding = 'latin1' - logo = html.div( - html.a( - html.img(alt="py lib", id='pyimg', height=114, width=154, - src="http://codespeak.net/img/pylib.png"), - href="http://codespeak.net")) - Page = PyPage - - - def get_content(self, txtpath, encoding): - return unicode(txtpath.read(), encoding) - - def get_docpath(self): - return get_docpath() - - def get_htmloutputpath(self, txtpath): - docpath = self.get_docpath() - reloutputpath = txtpath.new(ext='.html').relto(self.mydir) - return docpath.join(reloutputpath) - - def process(self, txtpath): - encoding = self.encoding - content = self.get_content(txtpath, encoding) - docpath = self.get_docpath() - outputpath = self.get_htmloutputpath(txtpath) - - stylesheet = self.stylesheet - if isinstance(self.stylesheet, py.path.local): - if not docpath.join(stylesheet.basename).check(): - docpath.ensure(dir=True) - stylesheet.copy(docpath) - stylesheet = relpath(outputpath.strpath, - docpath.join(stylesheet.basename).strpath) - - content = convert_rest_html(content, txtpath, - stylesheet=stylesheet, encoding=encoding) - content = strip_html_header(content, encoding=encoding) - - page = self.Page(self, "[%s] " % txtpath.purebasename, - outputpath, stylesheeturl=stylesheet) - - try: - svninfo = txtpath.info() - modified = " modified %s by %s" % (worded_time(svninfo.mtime), - getrealname(svninfo.last_author)) - except (KeyboardInterrupt, SystemExit): - raise - except: - modified = " " - - page.contentspace.append( - html.div(html.div(modified, style="float: right; font-style: italic;"), - id = 'docinfoline')) - - page.contentspace.append(py.xml.raw(content)) - outputpath.ensure().write(page.unicode().encode(encoding)) +try: + from py.__.misc.rest import Project +except ImportError: + from py.__.rest.resthtml import Project Modified: vadm/dist/vadm/doc/conftest.py ============================================================================== --- vadm/dist/vadm/doc/conftest.py (original) +++ vadm/dist/vadm/doc/conftest.py Wed Aug 26 20:25:20 2009 @@ -1,325 +1,2 @@ -from __future__ import generators -import py -from py.__.misc import rest -from py.__.apigen.linker import relpath -import os - -pypkgdir = py.path.local(py.__file__).dirpath() - -mypath = py.magic.autopath().dirpath() - -Option = py.test.config.Option -option = py.test.config.addoptions("documentation check options", - Option('-R', '--checkremote', - action="store_true", dest="checkremote", default=False, - help="perform tests involving remote accesses (links, svn)" - ), - Option('', '--forcegen', - action="store_true", dest="forcegen", default=False, - help="force generation of html files even if they appear up-to-date" - ), -) - -def get_apigenpath(): - from py.__.conftest import option - path = os.environ.get('APIGENPATH') - if path is None: - path = option.apigenpath - return pypkgdir.join(path, abs=True) - -def get_docpath(): - from py.__.conftest import option - path = os.environ.get('DOCPATH') - if path is None: - path = option.docpath - return pypkgdir.join(path, abs=True) - -def get_apigen_relpath(): - return relpath(get_docpath().strpath + '/', - get_apigenpath().strpath + '/') - -def deindent(s, sep='\n'): - leastspaces = -1 - lines = s.split(sep) - for line in lines: - if not line.strip(): - continue - spaces = len(line) - len(line.lstrip()) - if leastspaces == -1 or spaces < leastspaces: - leastspaces = spaces - if leastspaces == -1: - return s - for i, line in py.builtin.enumerate(lines): - if not line.strip(): - lines[i] = '' - else: - lines[i] = line[leastspaces:] - return sep.join(lines) - -_initialized = False -def checkdocutils(): - global _initialized - try: - import docutils - except ImportError: - py.test.skip("docutils not importable") - if not _initialized: - from py.__.rest import directive - directive.register_linkrole('api', resolve_linkrole) - directive.register_linkrole('source', resolve_linkrole) - _initialized = True - -def restcheck(path): - localpath = path - if hasattr(path, 'localpath'): - localpath = path.localpath - checkdocutils() - import docutils.utils - - try: - cur = localpath - for x in cur.parts(reverse=True): - confrest = x.dirpath('confrest.py') - if confrest.check(file=1): - print "importing", confrest - confrest = confrest.pyimport() - project = confrest.Project() - _checkskip(path, project.get_htmloutputpath(path)) - project.process(path) - break - else: - # defer to default processor - _checkskip(path) - rest.process(path) - except KeyboardInterrupt: - raise - except docutils.utils.SystemMessage: - # we assume docutils printed info on stdout - py.test.fail("docutils processing failed, see captured stderr") - -def _checkskip(lpath, htmlpath=None): - if not option.forcegen: - lpath = py.path.local(lpath) - if htmlpath is not None: - htmlpath = py.path.local(htmlpath) - if lpath.ext == '.txt': - htmlpath = htmlpath or lpath.new(ext='.html') - if htmlpath.check(file=1) and htmlpath.mtime() >= lpath.mtime(): - py.test.skip("html file is up to date, use --forcegen to regenerate") - #return [] # no need to rebuild - -class ReSTSyntaxTest(py.test.collect.Item): - def run(self): - mypath = self.fspath - restcheck(py.path.svnwc(mypath)) - -class DoctestText(py.test.collect.Item): - def run(self): - # XXX quite nasty... but it works (fixes win32 issues) - s = self._normalize_linesep() - l = [] - prefix = '.. >>> ' - mod = py.std.types.ModuleType(self.fspath.purebasename) - for line in deindent(s).split('\n'): - stripped = line.strip() - if stripped.startswith(prefix): - exec py.code.Source(stripped[len(prefix):]).compile() in \ - mod.__dict__ - line = "" - else: - l.append(line) - docstring = "\n".join(l) - self.execute(mod, docstring) - - def execute(self, mod, docstring): - mod.__doc__ = docstring - failed, tot = py.compat.doctest.testmod(mod, verbose=1) - if failed: - py.test.fail("doctest %s: %s failed out of %s" %( - self.fspath, failed, tot)) - - def _normalize_linesep(self): - s = self.fspath.read() - linesep = '\n' - if '\r' in s: - if '\n' not in s: - linesep = '\r' - else: - linesep = '\r\n' - s = s.replace(linesep, '\n') - return s - -class LinkCheckerMaker(py.test.collect.Collector): - def run(self): - l = [] - for call, tryfn, path, lineno in genlinkchecks(self.fspath): - l.append(tryfn) - return l - - def join(self, name): - for call, tryfn, path, lineno in genlinkchecks(self.fspath): - if tryfn == name: - return CheckLink(name, parent=self, args=(tryfn, path, lineno), obj=call) - -class CheckLink(py.test.collect.Function): - def setup(self): - pass - def teardown(self): - pass - -class ReSTChecker(py.test.collect.Module): - DoctestText = DoctestText - ReSTSyntaxTest = ReSTSyntaxTest - - def __repr__(self): - return py.test.collect.Collector.__repr__(self) - - def setup(self): - pass - def teardown(self): - pass - def run(self): - return [self.fspath.basename, 'checklinks', 'doctest'] - def join(self, name): - if name == self.fspath.basename: - return self.ReSTSyntaxTest(name, parent=self) - elif name == 'checklinks': - return LinkCheckerMaker(name, self) - elif name == 'doctest': - return self.DoctestText(name, self) - -# generating functions + args as single tests -def genlinkchecks(path): - for lineno, line in py.builtin.enumerate(path.readlines()): - line = line.strip() - if line.startswith('.. _'): - if line.startswith('.. _`'): - delim = '`:' - else: - delim = ':' - l = line.split(delim, 1) - if len(l) != 2: - continue - tryfn = l[1].strip() - if tryfn.startswith('http:') or tryfn.startswith('https'): - if option.checkremote: - yield urlcheck, tryfn, path, lineno - elif tryfn.startswith('webcal:'): - continue - else: - i = tryfn.find('#') - if i != -1: - checkfn = tryfn[:i] - else: - checkfn = tryfn - if checkfn.strip() and (1 or checkfn.endswith('.html')): - yield localrefcheck, tryfn, path, lineno - -def urlcheck(tryfn, path, lineno): - try: - print "trying remote", tryfn - py.std.urllib2.urlopen(tryfn) - except (py.std.urllib2.URLError, py.std.urllib2.HTTPError), e: - if e.code in (401, 403): # authorization required, forbidden - py.test.skip("%s: %s" %(tryfn, str(e))) - else: - py.test.fail("remote reference error %r in %s:%d\n%s" %( - tryfn, path.basename, lineno+1, e)) - -def localrefcheck(tryfn, path, lineno): - # assume it should be a file - i = tryfn.find('#') - if tryfn.startswith('javascript:'): - return # don't check JS refs - if i != -1: - anchor = tryfn[i+1:] - tryfn = tryfn[:i] - else: - anchor = '' - fn = path.dirpath(tryfn) - ishtml = fn.ext == '.html' - fn = ishtml and fn.new(ext='.txt') or fn - print "filename is", fn - if not fn.check(): # not ishtml or not fn.check(): - if not py.path.local(tryfn).check(): # the html could be there - py.test.fail("reference error %r in %s:%d" %( - tryfn, path.basename, lineno+1)) - if anchor: - source = unicode(fn.read(), 'latin1') - source = source.lower().replace('-', ' ') # aehem - - anchor = anchor.replace('-', ' ') - match2 = ".. _`%s`:" % anchor - match3 = ".. _%s:" % anchor - candidates = (anchor, match2, match3) - print "candidates", repr(candidates) - for line in source.split('\n'): - line = line.strip() - if line in candidates: - break - else: - py.test.fail("anchor reference error %s#%s in %s:%d" %( - tryfn, anchor, path.basename, lineno+1)) - - -# ___________________________________________________________ -# -# hooking into py.test Directory collector's chain ... - -class DocDirectory(py.test.collect.Directory): - ReSTChecker = ReSTChecker - - def run(self): - results = super(DocDirectory, self).run() - for x in self.fspath.listdir('*.txt', sort=True): - results.append(x.basename) - return results - - def join(self, name): - if not name.endswith('.txt'): - return super(DocDirectory, self).join(name) - p = self.fspath.join(name) - if p.check(file=1): - return self.ReSTChecker(p, parent=self) -Directory = DocDirectory - -def resolve_linkrole(name, text, check=True): - apigen_relpath = get_apigen_relpath() - if name == 'api': - if text == 'py': - return ('py', apigen_relpath + 'api/index.html') - else: - assert text.startswith('py.'), ( - 'api link "%s" does not point to the py package') % (text,) - dotted_name = text - if dotted_name.find('(') > -1: - dotted_name = dotted_name[:text.find('(')] - # remove pkg root - path = dotted_name.split('.')[1:] - dotted_name = '.'.join(path) - obj = py - if check: - for chunk in path: - try: - obj = getattr(obj, chunk) - except AttributeError: - raise AssertionError( - 'problem with linkrole :api:`%s`: can not resolve ' - 'dotted name %s' % (text, dotted_name,)) - return (text, apigen_relpath + 'api/%s.html' % (dotted_name,)) - elif name == 'source': - assert text.startswith('py/'), ('source link "%s" does not point ' - 'to the py package') % (text,) - relpath = '/'.join(text.split('/')[1:]) - if check: - pkgroot = py.__package__.getpath() - abspath = pkgroot.join(relpath) - assert pkgroot.join(relpath).check(), ( - 'problem with linkrole :source:`%s`: ' - 'path %s does not exist' % (text, relpath)) - if relpath.endswith('/') or not relpath: - relpath += 'index.html' - else: - relpath += '.html' - return (text, apigen_relpath + 'source/%s' % (relpath,)) +pytest_plugins = ['pytest_restdoc'] From hpk at codespeak.net Wed Aug 26 21:14:10 2009 From: hpk at codespeak.net (hpk at codespeak.net) Date: Wed, 26 Aug 2009 21:14:10 +0200 (CEST) Subject: [vadm] r67221 - vadm/dist/vadm/doc Message-ID: <20090826191410.8F9E216803A@codespeak.net> Author: hpk Date: Wed Aug 26 21:14:09 2009 New Revision: 67221 Modified: vadm/dist/vadm/doc/install.txt Log: update docs Modified: vadm/dist/vadm/doc/install.txt ============================================================================== --- vadm/dist/vadm/doc/install.txt (original) +++ vadm/dist/vadm/doc/install.txt Wed Aug 26 21:14:09 2009 @@ -20,36 +20,33 @@ of the **sudo** command which usually is available on Unix and OSX systems. .. _`py lib`: http://pylib.org -.. _`py lib tarball`: http://codespeak.net/py/dist/download.html#downloading-a-tar-zip-file-and-installing-it with easy_install +++++++++++++++++++ 1. `Install easy_install`_ if you don't have it. On linux distributions the package name you should look for is "setuptools" or "python-setuptools". -2. type ``easy_install vadm`` (this should install the py lib dependency). +2. type ``easy_install vadm`` (this also installs the py lib dependency). .. _`Install easy_install`: http://peak.telecommunity.com/DevCenter/EasyInstall#installing-easy-install -manually with setup.py +manually with setup.py ++++++++++++++++++++++++ -1. download the `py lib tarball`_ and install it like this:: +.. _`install the py lib without setuptools`: http://pylib.org/download.html#no-setuptools - tar zxvf py-0.9.1.tar.gz - cd py-0.9.1 - python setup.py install +1. `install the py lib without setuptools`_. -2. download the `vadm tarball`_ and install it like this:: +2. download the `vadm tarball`_ and install it like this (substitute + the version number as appropriate):: tar zxvf vadm-0.6.0.tar.gz cd vadm-0.6.0 - python setup.py install - + python setup.py install working from development ++++++++++++++++++++++++++++ -If you want to follow the development version you ca type +If you want to follow the development version you can type something like this:: svn co https://codespeak.net/svn/vadm/dist/vadm @@ -75,7 +72,7 @@ of the users will have a "working copy" in its ``.vadm/hostwc`` directory. -Note that the vadm script mandates execution as a non-root user +Note that the vadm script needs to execute as a non-root user that has the right to execute ``sudo``. For adding, committing, reverting or inquiring of files @@ -93,6 +90,10 @@ Because **vadm** uses subversion under the hood you can install commit notification and other hooks in your repository. + +You can also transfer your local repository to a remote location +and do a checkout using an https or svn+ssh scheme. + With ``vadm config`` you can get information about your local working copy and the repository url. @@ -139,10 +140,16 @@ ------------------------------ * If you have questions or like to contribute please - subscribe to the `vadm mailinglist`_. Without subscription - you cannot post to the mailing list. + subscribe to the `vadm mailinglist`_. + +* If you have questions or like to contribute please + subscribe to the `vadm mailinglist`_ and mail there. + or create an issue in the `google code vadm tracker`_. * You may also drop by the #codespeak channel on irc.freenode.org. +* If all else fails you may contact holger.krekel at google com. + +.. _`google code vadm tracker`: http://code.google.com/p/vadm/issues/list .. _`vadm mailinglist`: http://codespeak.net/mailman/listinfo/vadm .. _`vadm tarball`: http://pypi.python.org/packages/source/v/vadm/vadm-0.6.0-beta5.tar.gz From hpk at codespeak.net Wed Aug 26 21:25:47 2009 From: hpk at codespeak.net (hpk at codespeak.net) Date: Wed, 26 Aug 2009 21:25:47 +0200 (CEST) Subject: [vadm] r67222 - in vadm/dist: . vadm vadm/doc Message-ID: <20090826192547.176A816803A@codespeak.net> Author: hpk Date: Wed Aug 26 21:25:46 2009 New Revision: 67222 Modified: vadm/dist/setup.py vadm/dist/vadm/__init__.py vadm/dist/vadm/doc/install.txt Log: trying to finalize meta info for 0.6 Modified: vadm/dist/setup.py ============================================================================== --- vadm/dist/setup.py (original) +++ vadm/dist/setup.py Wed Aug 26 21:25:46 2009 @@ -9,9 +9,10 @@ else: extra = dict(install_requires = ['py'],) PACKAGES = find_packages() + print PACKAGES setup(name = "vadm", - version = "0.6.0-beta5", + version = "0.6.0", description = "tool for versioning system files and directories", author = "holger krekel, merlinux GmbH", author_email = "holger at merlinux.de", @@ -24,7 +25,7 @@ "information."), url = "http://codespeak.net/vadm", classifiers = [ - "Development Status :: 4 - Beta", + "Development Status :: 5 - Stable", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU General Public License (GPL)", "Operating System :: POSIX", Modified: vadm/dist/vadm/__init__.py ============================================================================== --- vadm/dist/vadm/__init__.py (original) +++ vadm/dist/vadm/__init__.py Wed Aug 26 21:25:46 2009 @@ -10,7 +10,7 @@ description = "tool for versioning system files and directories", revision = '$LastChangedRevision: 11405 $', lastchangedate = '$LastChangedDate: 2005-04-24 15:18:48 +0200 (Sun, 24 Apr 2005) $', - version = "0.6.0-beta5", + version = "0.6.0", url = "http://codespeak.net/vadm", #download_url = "http://codespeak.net/download/py/py-0.6.0-pre-alpha.tar.gz", license = "GPL V3", Modified: vadm/dist/vadm/doc/install.txt ============================================================================== --- vadm/dist/vadm/doc/install.txt (original) +++ vadm/dist/vadm/doc/install.txt Wed Aug 26 21:25:46 2009 @@ -91,8 +91,6 @@ Because **vadm** uses subversion under the hood you can install commit notification and other hooks in your repository. -You can also transfer your local repository to a remote location -and do a checkout using an https or svn+ssh scheme. With ``vadm config`` you can get information about your local working copy and the repository url. @@ -107,6 +105,8 @@ 59 23 * * * /usr/bin/vadm ci -m "autocommit" / >/dev/null +- You can transfer your local repository to a remote location + and then do a ``vadm checkout`` using an https or svn+ssh scheme. - **vadm** works by mapping all versioned files into a per-user working copy. Permissions @@ -139,12 +139,10 @@ Contact, Development, Help ------------------------------ -* If you have questions or like to contribute please - subscribe to the `vadm mailinglist`_. +* `google code vadm tracker`_ -* If you have questions or like to contribute please - subscribe to the `vadm mailinglist`_ and mail there. - or create an issue in the `google code vadm tracker`_. +* `vadm mailinglist`_ (requires subscription) for general + questions * You may also drop by the #codespeak channel on irc.freenode.org. From hpk at codespeak.net Fri Aug 28 10:23:34 2009 From: hpk at codespeak.net (hpk at codespeak.net) Date: Fri, 28 Aug 2009 10:23:34 +0200 (CEST) Subject: [vadm] r67269 - vadm/dist/vadm/doc Message-ID: <20090828082334.DF50316804B@codespeak.net> Author: hpk Date: Fri Aug 28 10:23:31 2009 New Revision: 67269 Modified: vadm/dist/vadm/doc/confrest.py vadm/dist/vadm/doc/install.txt Log: adding some info, fixing title, addings tracker settings Modified: vadm/dist/vadm/doc/confrest.py ============================================================================== --- vadm/dist/vadm/doc/confrest.py (original) +++ vadm/dist/vadm/doc/confrest.py Fri Aug 28 10:23:31 2009 @@ -1,5 +1,27 @@ +import py -try: - from py.__.misc.rest import Project -except ImportError: - from py.__.rest.resthtml import Project +from py.__.rest.resthtml import Project as BaseProject + +class Project(BaseProject): # used for confrest.py files + def process(self, path): + BaseProject.process(self, path) + p = self.get_htmloutputpath(path) + out = p.read() + out = out.replace("", googlefragment + "") + p.write(out) + + def get_htmloutputpath(self, path): + return path.new(ext='html') + + +googlefragment = """ + + +""" Modified: vadm/dist/vadm/doc/install.txt ============================================================================== --- vadm/dist/vadm/doc/install.txt (original) +++ vadm/dist/vadm/doc/install.txt Fri Aug 28 10:23:31 2009 @@ -1,16 +1,23 @@ -[$Id$] - vadm: versioning of system files and directories =================================================== **vadm** is a simple svn-like command line tool for -versioning unix system files including tracking of -POSIX ownership and permission information. +versioning unix system files, ownership and permission +information. It uses subversion_ under the hood and maps +all files that you decide to version into a single +per-user repository. As a single adminstrator you can +decide to selectively and non-intrusively version some +files through your own home directory. + vadm is released under the terms of the GPL Version 3 and was written by Holger Krekel with initial contributions from Jens-Uwe Mager. .. contents:: + :local: + :depth: 2 + +.. _subversion: http://subversion.tigris.org Installing VADM ----------------- From hpk at codespeak.net Fri Aug 28 10:30:38 2009 From: hpk at codespeak.net (hpk at codespeak.net) Date: Fri, 28 Aug 2009 10:30:38 +0200 (CEST) Subject: [vadm] r67270 - in vadm/dist: . vadm vadm/doc Message-ID: <20090828083038.644D816804E@codespeak.net> Author: hpk Date: Fri Aug 28 10:30:27 2009 New Revision: 67270 Modified: vadm/dist/setup.py vadm/dist/vadm/__init__.py vadm/dist/vadm/doc/confrest.py Log: setting version to 0.6.x, fix doc-generation with py-1.0 Modified: vadm/dist/setup.py ============================================================================== --- vadm/dist/setup.py (original) +++ vadm/dist/setup.py Fri Aug 28 10:30:27 2009 @@ -12,7 +12,7 @@ print PACKAGES setup(name = "vadm", - version = "0.6.0", + version = "0.6.x", description = "tool for versioning system files and directories", author = "holger krekel, merlinux GmbH", author_email = "holger at merlinux.de", @@ -25,7 +25,7 @@ "information."), url = "http://codespeak.net/vadm", classifiers = [ - "Development Status :: 5 - Stable", + "Development Status :: 5 - Production/Stable", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU General Public License (GPL)", "Operating System :: POSIX", Modified: vadm/dist/vadm/__init__.py ============================================================================== --- vadm/dist/vadm/__init__.py (original) +++ vadm/dist/vadm/__init__.py Fri Aug 28 10:30:27 2009 @@ -10,7 +10,7 @@ description = "tool for versioning system files and directories", revision = '$LastChangedRevision: 11405 $', lastchangedate = '$LastChangedDate: 2005-04-24 15:18:48 +0200 (Sun, 24 Apr 2005) $', - version = "0.6.0", + version = "0.6.x", url = "http://codespeak.net/vadm", #download_url = "http://codespeak.net/download/py/py-0.6.0-pre-alpha.tar.gz", license = "GPL V3", Modified: vadm/dist/vadm/doc/confrest.py ============================================================================== --- vadm/dist/vadm/doc/confrest.py (original) +++ vadm/dist/vadm/doc/confrest.py Fri Aug 28 10:30:27 2009 @@ -1,6 +1,9 @@ import py -from py.__.rest.resthtml import Project as BaseProject +try: + from py.__.rest.resthtml import Project as BaseProject +except ImportError: + from py.__.misc.rest import Project as BaseProject class Project(BaseProject): # used for confrest.py files def process(self, path):