Wed Sep 9 05:45:23 2009 UTC ()
What's changed in loggerhead?
=============================

1.17 [20Aug2009]
---------------

    - Add bug links in revision informations (Alexandre Garnier, #314052)

    - Make sure that binary files aren't annotated. (Martin Albisetti,
      #258848)

    - Loggerhead now serves bzr branches over HTTP and exposes the URL
      to branch them. Addresses bug #240577. (Jonathan Lange)

    - Leading blank lines in commit messages no longer result in an
      empty summary. (Colin Watson)

    - Added optional syntax highlighting to annotate view using
      python-pygments.  Partially addresses bug #306631. (Peter Bui)

    - Convert newlines in commit messages to HTML line breaks for
      annotate and changelog views.  Addresses bug #273688. (Peter
      Bui)

    - serve-branches now errors if run behind a proxy without
      paste.deploy installed. (Michael Hudson)

    - Loggerhead should now handle file and directory names that need
      URL escaping without crashing.

    - The start-loggerhead script properly sets the wsgi.url_scheme
      from the server.webpath option. (neror, #260547)

    - The revision page defaults to unified style again, and can
      convert to a side-by-side view using JavaScript. (Michael Hudson)

    - Clean up and improve performance of the annotate view. (Michael
      Hudson)

    - Finish converting JavaScript from MooTools to YUI 3. (Michael
      Hudson)

    - Improve compatibility with IE 6. (Michael Hudson)

    - Leading blank lines in commit messages no longer result in an
      empty summary. (Colin Watson)

    - Clip long lines in side-by-side diff view. (Michael Hudson,
      #334837)

    - The user-confusing "next" and "previous" links now read "older"
      and "newer" respectively. (Michael Hudson, #297930)

    - The annotate view now contains line number anchors. (Michael
      Hudson)

    - Fix inventory pages using "//" in links. (Michael Hudson, #329668)

    - Fix problems viewing files and directories containing spaces and
      other funny characters. (Peter Bui)

    - Changelog messages are now displayed with newlines preserved.
      (Peter Bui, #273688)

    - Offer a link to see the full file diffs for a file path. (Michael
      Hudson, #333797)

    - Fix annotate error caused by Pygments stripping trailing
      whitespace. (Michael Hudson, #338762)

    - Loggerhead can be installed as a Bazaar plugin and run by
      'bzr serve --http'. (Martin Pool)

    - Load parts of the changelog and revision pages via XMLHttpRequest
      to improve performance. This adds a dependency on simplejson or
      json. Partially addresses bug #253950. (Michael Hudson)

    - Various improvements to the animation JavaScript. (Michael Hudson)

    - Fix HTML content of source files being displayed unescaped when
      Pygments was unavailable. (Michael Hudson, #344970)

    - Fix serve-branches's path argument. (Michael Hudson, #353230)

    - serve-branches now has an option, --use-cdn, to load YUI from
      Yahoo!'s CDN. (Matt Nordhoff)

    - Fix certain race conditions for loading bzr-search. (Robert
      Collins, #334250)

    - Fix errors when using serve-branches --log-folder or --user-dirs.
      (It was calling config.get_option() incorrectly.) (Matt Nordhoff,
      bug #361238)

    - Move some caching from RAM to the disk, and other caching and
      memory usage improvements. (Michael Hudson)

    - Add a --cache-dir option to serve-branches to choose where to
      place the SQL cache, and only create one temporary SQL dir per
      process. (Matt Nordhoff, #358322)

    - Replace homebrew memory profiling code with Dozer. (Paul Hummer)

    - Use the branch's public_branch as the default suggested URL to
      branch from (Matt Nordhoff, #369767)

    - Fix a file descriptor leak (Matt Nordhoff, #370845)

    - Use transport API internally, so it is possible to specify a remote
      URL to serve-branches. (Jelmer Vernooij, #371787)

    - Fix internal server errors when using start-loggerhead. (Matt
      Nordhoff, #375948)

    - Fix annotating non-UTF-8 files when Pygments is disabled. (Matt
      Nordhoff, #376957)

    - Fix 'bzr serve --http' errors. (Matt Nordhoff, #377551)

    - Added the option to hide branches by setting http_serve = False
      in locations.conf (Martin Albisetti)

    - Fix serving branches over HTTP. (Matt Nordhoff, Jelmer Vernooij,
      #380026)

    - Install loggerhead as a bzr plugin by default (Jelmer Vernooij)

    - Fix logging 404 Not Found responses (Matt Nordhoff, #381029)

    - Bumped minimunm bzrlib version to 1.13 (Martin Albisetti)

    - Make sure the Atom feeds (nearly) validate. (Matt Nordhoff, #247162)

    - Support serving branches over HTTP using the smart server protocol.
      (Jelmer Vernooij, #306853)

    - Serving branch data was broken when --allow-writes was *not*
      passed. (Michael Hudson, #388730)

    - http_serve config values are interpreted more forgivingly.
      (Michael Hudson)

    - When specifying a remote url to serve-branches, do not share
      connections between threads. (Michael Hudson, #390972)

    - http_serve values from locations.conf are now applied to
      non-branch .bzr data (e.g shared repositories). (Michael Hudson)

    - tags are now displayed. (Cris Boylan, Alexandre Garnier, Michael
      Hudson, #246739)

    - Display Loggerhead's version number at the bottom of the page, and
      add a <meta> generator tag also including the version numbers of
      its dependencies. (Matt Nordhoff, #370155)


(epg)
diff -r1.2 -r1.3 pkgsrc/www/loggerhead/Makefile
diff -r1.2 -r1.3 pkgsrc/www/loggerhead/distinfo
diff -r1.3 -r1.4 pkgsrc/www/loggerhead/PLIST

cvs diff -r1.2 -r1.3 pkgsrc/www/loggerhead/Attic/Makefile (expand / switch to unified diff)

--- pkgsrc/www/loggerhead/Attic/Makefile 2008/12/26 19:51:55 1.2
+++ pkgsrc/www/loggerhead/Attic/Makefile 2009/09/09 05:45:23 1.3
@@ -1,30 +1,30 @@ @@ -1,30 +1,30 @@
1# $NetBSD: Makefile,v 1.2 2008/12/26 19:51:55 epg Exp $ 1# $NetBSD: Makefile,v 1.3 2009/09/09 05:45:23 epg Exp $
2 2
3DISTNAME= loggerhead-${VER} 3DISTNAME= loggerhead-${VER}
4CATEGORIES= www scm 4CATEGORIES= www scm
5MASTER_SITES= http://launchpad.net/loggerhead/${VER}/${VER}/+download/ 5MASTER_SITES= http://launchpad.net/loggerhead/${VER}/${VER}/+download/
6VER= 1.10 6VER= 1.17
7 7
8# 1.10 distfile contains no top-level directory. 8WRKSRC= ${WRKDIR}/loggerhead
9EXTRACT_DIR= ${WRKSRC} 
10 9
11MAINTAINER= epg@NetBSD.org 10MAINTAINER= epg@NetBSD.org
12HOMEPAGE= https://launchpad.net/loggerhead 11HOMEPAGE= https://launchpad.net/loggerhead
13COMMENT= Web viewer for Bazaar branches 12COMMENT= Web viewer for Bazaar branches
14 13
15PKG_DESTDIR_SUPPORT= user-destdir 14PKG_DESTDIR_SUPPORT= user-destdir
16 15
17DEPENDS+= bzr>=1.6:../../devel/bzr 16DEPENDS+= bzr>=1.13:../../devel/bzr
 17DEPENDS+= ${PYPKGPREFIX}-simplejson>=2.0:../../converters/py-simplejson
18DEPENDS+= ${PYPKGPREFIX}-Paste>=1.2:../../www/py-paste 18DEPENDS+= ${PYPKGPREFIX}-Paste>=1.2:../../www/py-paste
19DEPENDS+= ${PYPKGPREFIX}-setuptools>=0.6c8:../../devel/py-setuptools 19DEPENDS+= ${PYPKGPREFIX}-setuptools>=0.6c8:../../devel/py-setuptools
20DEPENDS+= ${PYPKGPREFIX}-SimpleTAL>=4.1:../../www/py-simpletal 20DEPENDS+= ${PYPKGPREFIX}-SimpleTAL>=4.1:../../www/py-simpletal
21DEPENDS+= ${PYPKGPREFIX}-sqlite3-[0-9]*:../../databases/py-sqlite3 21DEPENDS+= ${PYPKGPREFIX}-sqlite3-[0-9]*:../../databases/py-sqlite3
22 22
23PYDISTUTILSPKG= yes 23PYDISTUTILSPKG= yes
24# Requires wsgi, which is available for older versions of Python, but not in 24# Requires wsgi, which is available for older versions of Python, but not in
25# pkgsrc yet. Also requires 'sqlite3', which seems not to be available 25# pkgsrc yet. Also requires 'sqlite3', which seems not to be available
26# separately (py-sqlite2 is for sqlite3 but is 'pysqlite2'). 26# separately (py-sqlite2 is for sqlite3 but is 'pysqlite2').
27PYTHON_VERSIONS_ACCEPTED=25 27PYTHON_VERSIONS_ACCEPTED=25
28 28
29.include "../../lang/python/application.mk" 29.include "../../lang/python/application.mk"
30.include "../../lang/python/extension.mk" 30.include "../../lang/python/extension.mk"

cvs diff -r1.2 -r1.3 pkgsrc/www/loggerhead/Attic/distinfo (expand / switch to unified diff)

--- pkgsrc/www/loggerhead/Attic/distinfo 2008/12/26 19:51:55 1.2
+++ pkgsrc/www/loggerhead/Attic/distinfo 2009/09/09 05:45:23 1.3
@@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
1$NetBSD: distinfo,v 1.2 2008/12/26 19:51:55 epg Exp $ 1$NetBSD: distinfo,v 1.3 2009/09/09 05:45:23 epg Exp $
2 2
3SHA1 (loggerhead-1.10.tar.gz) = 66f2f5c4066b750cbfdefd4210c12792cc01ec2b 3SHA1 (loggerhead-1.17.tar.gz) = 910b5f569c8647294cabfa45698909b1fffda1ee
4RMD160 (loggerhead-1.10.tar.gz) = 2acaae51770cb624181fc51ce387dbeeb8ad1b80 4RMD160 (loggerhead-1.17.tar.gz) = 847e3c12eff66e9fdf617e0ef7523f7f74e3c82c
5Size (loggerhead-1.10.tar.gz) = 513590 bytes 5Size (loggerhead-1.17.tar.gz) = 706897 bytes
6SHA1 (patch-aa) = 92b3c29fb0320ebe65bee7f872251ba4b6c81fb7 6SHA1 (patch-aa) = 92b3c29fb0320ebe65bee7f872251ba4b6c81fb7

cvs diff -r1.3 -r1.4 pkgsrc/www/loggerhead/Attic/PLIST (expand / switch to unified diff)

--- pkgsrc/www/loggerhead/Attic/PLIST 2009/06/14 22:00:25 1.3
+++ pkgsrc/www/loggerhead/Attic/PLIST 2009/09/09 05:45:23 1.4
@@ -1,120 +1,139 @@ @@ -1,120 +1,139 @@
1@comment $NetBSD: PLIST,v 1.3 2009/06/14 22:00:25 joerg Exp $ 1@comment $NetBSD: PLIST,v 1.4 2009/09/09 05:45:23 epg Exp $
2bin/serve-branches 2bin/serve-branches
3bin/start-loggerhead 3bin/start-loggerhead
4bin/stop-loggerhead 4bin/stop-loggerhead
 5${PYSITELIB}/bzrlib/plugins/loggerhead/__init__.py
 6${PYSITELIB}/bzrlib/plugins/loggerhead/__init__.pyc
 7${PYSITELIB}/bzrlib/plugins/loggerhead/__init__.pyo
5${PYSITELIB}/loggerhead/__init__.py 8${PYSITELIB}/loggerhead/__init__.py
6${PYSITELIB}/loggerhead/__init__.pyc 9${PYSITELIB}/loggerhead/__init__.pyc
7${PYSITELIB}/loggerhead/__init__.pyo 10${PYSITELIB}/loggerhead/__init__.pyo
8${PYSITELIB}/loggerhead/apps/__init__.py 11${PYSITELIB}/loggerhead/apps/__init__.py
9${PYSITELIB}/loggerhead/apps/__init__.pyc 12${PYSITELIB}/loggerhead/apps/__init__.pyc
10${PYSITELIB}/loggerhead/apps/__init__.pyo 13${PYSITELIB}/loggerhead/apps/__init__.pyo
11${PYSITELIB}/loggerhead/apps/branch.py 14${PYSITELIB}/loggerhead/apps/branch.py
12${PYSITELIB}/loggerhead/apps/branch.pyc 15${PYSITELIB}/loggerhead/apps/branch.pyc
13${PYSITELIB}/loggerhead/apps/branch.pyo 16${PYSITELIB}/loggerhead/apps/branch.pyo
14${PYSITELIB}/loggerhead/apps/config.py 17${PYSITELIB}/loggerhead/apps/config.py
15${PYSITELIB}/loggerhead/apps/config.pyc 18${PYSITELIB}/loggerhead/apps/config.pyc
16${PYSITELIB}/loggerhead/apps/config.pyo 19${PYSITELIB}/loggerhead/apps/config.pyo
17${PYSITELIB}/loggerhead/apps/error.py 20${PYSITELIB}/loggerhead/apps/error.py
18${PYSITELIB}/loggerhead/apps/error.pyc 21${PYSITELIB}/loggerhead/apps/error.pyc
19${PYSITELIB}/loggerhead/apps/error.pyo 22${PYSITELIB}/loggerhead/apps/error.pyo
20${PYSITELIB}/loggerhead/apps/filesystem.py 23${PYSITELIB}/loggerhead/apps/transport.py
21${PYSITELIB}/loggerhead/apps/filesystem.pyc 24${PYSITELIB}/loggerhead/apps/transport.pyc
22${PYSITELIB}/loggerhead/apps/filesystem.pyo 25${PYSITELIB}/loggerhead/apps/transport.pyo
23${PYSITELIB}/loggerhead/changecache.py 26${PYSITELIB}/loggerhead/changecache.py
24${PYSITELIB}/loggerhead/changecache.pyc 27${PYSITELIB}/loggerhead/changecache.pyc
25${PYSITELIB}/loggerhead/changecache.pyo 28${PYSITELIB}/loggerhead/changecache.pyo
 29${PYSITELIB}/loggerhead/config.py
 30${PYSITELIB}/loggerhead/config.pyc
 31${PYSITELIB}/loggerhead/config.pyo
26${PYSITELIB}/loggerhead/controllers/__init__.py 32${PYSITELIB}/loggerhead/controllers/__init__.py
27${PYSITELIB}/loggerhead/controllers/__init__.pyc 33${PYSITELIB}/loggerhead/controllers/__init__.pyc
28${PYSITELIB}/loggerhead/controllers/__init__.pyo 34${PYSITELIB}/loggerhead/controllers/__init__.pyo
29${PYSITELIB}/loggerhead/controllers/annotate_ui.py 35${PYSITELIB}/loggerhead/controllers/annotate_ui.py
30${PYSITELIB}/loggerhead/controllers/annotate_ui.pyc 36${PYSITELIB}/loggerhead/controllers/annotate_ui.pyc
31${PYSITELIB}/loggerhead/controllers/annotate_ui.pyo 37${PYSITELIB}/loggerhead/controllers/annotate_ui.pyo
32${PYSITELIB}/loggerhead/controllers/atom_ui.py 38${PYSITELIB}/loggerhead/controllers/atom_ui.py
33${PYSITELIB}/loggerhead/controllers/atom_ui.pyc 39${PYSITELIB}/loggerhead/controllers/atom_ui.pyc
34${PYSITELIB}/loggerhead/controllers/atom_ui.pyo 40${PYSITELIB}/loggerhead/controllers/atom_ui.pyo
35${PYSITELIB}/loggerhead/controllers/changelog_ui.py 41${PYSITELIB}/loggerhead/controllers/changelog_ui.py
36${PYSITELIB}/loggerhead/controllers/changelog_ui.pyc 42${PYSITELIB}/loggerhead/controllers/changelog_ui.pyc
37${PYSITELIB}/loggerhead/controllers/changelog_ui.pyo 43${PYSITELIB}/loggerhead/controllers/changelog_ui.pyo
38${PYSITELIB}/loggerhead/controllers/diff_ui.py 44${PYSITELIB}/loggerhead/controllers/diff_ui.py
39${PYSITELIB}/loggerhead/controllers/diff_ui.pyc 45${PYSITELIB}/loggerhead/controllers/diff_ui.pyc
40${PYSITELIB}/loggerhead/controllers/diff_ui.pyo 46${PYSITELIB}/loggerhead/controllers/diff_ui.pyo
41${PYSITELIB}/loggerhead/controllers/directory_ui.py 47${PYSITELIB}/loggerhead/controllers/directory_ui.py
42${PYSITELIB}/loggerhead/controllers/directory_ui.pyc 48${PYSITELIB}/loggerhead/controllers/directory_ui.pyc
43${PYSITELIB}/loggerhead/controllers/directory_ui.pyo 49${PYSITELIB}/loggerhead/controllers/directory_ui.pyo
44${PYSITELIB}/loggerhead/controllers/download_ui.py 50${PYSITELIB}/loggerhead/controllers/download_ui.py
45${PYSITELIB}/loggerhead/controllers/download_ui.pyc 51${PYSITELIB}/loggerhead/controllers/download_ui.pyc
46${PYSITELIB}/loggerhead/controllers/download_ui.pyo 52${PYSITELIB}/loggerhead/controllers/download_ui.pyo
47${PYSITELIB}/loggerhead/controllers/error_ui.py 53${PYSITELIB}/loggerhead/controllers/error_ui.py
48${PYSITELIB}/loggerhead/controllers/error_ui.pyc 54${PYSITELIB}/loggerhead/controllers/error_ui.pyc
49${PYSITELIB}/loggerhead/controllers/error_ui.pyo 55${PYSITELIB}/loggerhead/controllers/error_ui.pyo
 56${PYSITELIB}/loggerhead/controllers/filediff_ui.py
 57${PYSITELIB}/loggerhead/controllers/filediff_ui.pyc
 58${PYSITELIB}/loggerhead/controllers/filediff_ui.pyo
50${PYSITELIB}/loggerhead/controllers/inventory_ui.py 59${PYSITELIB}/loggerhead/controllers/inventory_ui.py
51${PYSITELIB}/loggerhead/controllers/inventory_ui.pyc 60${PYSITELIB}/loggerhead/controllers/inventory_ui.pyc
52${PYSITELIB}/loggerhead/controllers/inventory_ui.pyo 61${PYSITELIB}/loggerhead/controllers/inventory_ui.pyo
53${PYSITELIB}/loggerhead/controllers/revision_ui.py 62${PYSITELIB}/loggerhead/controllers/revision_ui.py
54${PYSITELIB}/loggerhead/controllers/revision_ui.pyc 63${PYSITELIB}/loggerhead/controllers/revision_ui.pyc
55${PYSITELIB}/loggerhead/controllers/revision_ui.pyo 64${PYSITELIB}/loggerhead/controllers/revision_ui.pyo
 65${PYSITELIB}/loggerhead/controllers/revlog_ui.py
 66${PYSITELIB}/loggerhead/controllers/revlog_ui.pyc
 67${PYSITELIB}/loggerhead/controllers/revlog_ui.pyo
56${PYSITELIB}/loggerhead/controllers/search_ui.py 68${PYSITELIB}/loggerhead/controllers/search_ui.py
57${PYSITELIB}/loggerhead/controllers/search_ui.pyc 69${PYSITELIB}/loggerhead/controllers/search_ui.pyc
58${PYSITELIB}/loggerhead/controllers/search_ui.pyo 70${PYSITELIB}/loggerhead/controllers/search_ui.pyo
59${PYSITELIB}/loggerhead/daemon.py 71${PYSITELIB}/loggerhead/daemon.py
60${PYSITELIB}/loggerhead/daemon.pyc 72${PYSITELIB}/loggerhead/daemon.pyc
61${PYSITELIB}/loggerhead/daemon.pyo 73${PYSITELIB}/loggerhead/daemon.pyo
 74${PYSITELIB}/loggerhead/highlight.py
 75${PYSITELIB}/loggerhead/highlight.pyc
 76${PYSITELIB}/loggerhead/highlight.pyo
62${PYSITELIB}/loggerhead/history.py 77${PYSITELIB}/loggerhead/history.py
63${PYSITELIB}/loggerhead/history.pyc 78${PYSITELIB}/loggerhead/history.pyc
64${PYSITELIB}/loggerhead/history.pyo 79${PYSITELIB}/loggerhead/history.pyo
65${PYSITELIB}/loggerhead/lockfile.py 
66${PYSITELIB}/loggerhead/lockfile.pyc 
67${PYSITELIB}/loggerhead/lockfile.pyo 
68${PYSITELIB}/loggerhead/lsprof.py 80${PYSITELIB}/loggerhead/lsprof.py
69${PYSITELIB}/loggerhead/lsprof.pyc 81${PYSITELIB}/loggerhead/lsprof.pyc
70${PYSITELIB}/loggerhead/lsprof.pyo 82${PYSITELIB}/loggerhead/lsprof.pyo
 83${PYSITELIB}/loggerhead/main.py
 84${PYSITELIB}/loggerhead/main.pyc
 85${PYSITELIB}/loggerhead/main.pyo
71${PYSITELIB}/loggerhead/search.py 86${PYSITELIB}/loggerhead/search.py
72${PYSITELIB}/loggerhead/search.pyc 87${PYSITELIB}/loggerhead/search.pyc
73${PYSITELIB}/loggerhead/search.pyo 88${PYSITELIB}/loggerhead/search.pyo
74${PYSITELIB}/loggerhead/static/css/annotate.css 89${PYSITELIB}/loggerhead/static/css/annotate.css
75${PYSITELIB}/loggerhead/static/css/diff.css 90${PYSITELIB}/loggerhead/static/css/diff.css
76${PYSITELIB}/loggerhead/static/css/files.css 91${PYSITELIB}/loggerhead/static/css/files.css
77${PYSITELIB}/loggerhead/static/css/global.css 92${PYSITELIB}/loggerhead/static/css/global.css
 93${PYSITELIB}/loggerhead/static/css/highlight.css
78${PYSITELIB}/loggerhead/static/images/bg_Tabs.gif 94${PYSITELIB}/loggerhead/static/images/bg_Tabs.gif
79${PYSITELIB}/loggerhead/static/images/bg_infobox.gif 95${PYSITELIB}/loggerhead/static/images/bg_infobox.gif
80${PYSITELIB}/loggerhead/static/images/bg_menuTabs.gif 96${PYSITELIB}/loggerhead/static/images/bg_menuTabs.gif
81${PYSITELIB}/loggerhead/static/images/bg_search_input.gif 97${PYSITELIB}/loggerhead/static/images/bg_search_input.gif
82${PYSITELIB}/loggerhead/static/images/bg_submenuTabs.gif 98${PYSITELIB}/loggerhead/static/images/bg_submenuTabs.gif
83${PYSITELIB}/loggerhead/static/images/deleteCode.gif 99${PYSITELIB}/loggerhead/static/images/deleteCode.gif
84${PYSITELIB}/loggerhead/static/images/favicon.ico 100${PYSITELIB}/loggerhead/static/images/favicon.ico
85${PYSITELIB}/loggerhead/static/images/ico_branch.gif 101${PYSITELIB}/loggerhead/static/images/ico_branch.gif
 102${PYSITELIB}/loggerhead/static/images/ico_bug.png
86${PYSITELIB}/loggerhead/static/images/ico_committer.gif 103${PYSITELIB}/loggerhead/static/images/ico_committer.gif
87${PYSITELIB}/loggerhead/static/images/ico_description.gif 104${PYSITELIB}/loggerhead/static/images/ico_description.gif
88${PYSITELIB}/loggerhead/static/images/ico_diff.gif 105${PYSITELIB}/loggerhead/static/images/ico_diff.gif
89${PYSITELIB}/loggerhead/static/images/ico_file.gif 106${PYSITELIB}/loggerhead/static/images/ico_file.gif
90${PYSITELIB}/loggerhead/static/images/ico_file_download.gif 107${PYSITELIB}/loggerhead/static/images/ico_file_download.gif
91${PYSITELIB}/loggerhead/static/images/ico_file_flecha.gif 108${PYSITELIB}/loggerhead/static/images/ico_file_flecha.gif
92${PYSITELIB}/loggerhead/static/images/ico_file_modify.gif 109${PYSITELIB}/loggerhead/static/images/ico_file_modify.gif
93${PYSITELIB}/loggerhead/static/images/ico_folder.gif 110${PYSITELIB}/loggerhead/static/images/ico_folder.gif
94${PYSITELIB}/loggerhead/static/images/ico_folder_up.gif 111${PYSITELIB}/loggerhead/static/images/ico_folder_up.gif
95${PYSITELIB}/loggerhead/static/images/ico_link.gif 112${PYSITELIB}/loggerhead/static/images/ico_link.gif
96${PYSITELIB}/loggerhead/static/images/ico_mergefrom.gif 113${PYSITELIB}/loggerhead/static/images/ico_mergefrom.gif
97${PYSITELIB}/loggerhead/static/images/ico_mergeto.gif 114${PYSITELIB}/loggerhead/static/images/ico_mergeto.gif
98${PYSITELIB}/loggerhead/static/images/ico_planilla.gif 115${PYSITELIB}/loggerhead/static/images/ico_planilla.gif
99${PYSITELIB}/loggerhead/static/images/ico_rss.gif 116${PYSITELIB}/loggerhead/static/images/ico_rss.gif
 117${PYSITELIB}/loggerhead/static/images/ico_tag.gif
100${PYSITELIB}/loggerhead/static/images/ico_time.gif 118${PYSITELIB}/loggerhead/static/images/ico_time.gif
101${PYSITELIB}/loggerhead/static/images/newCode.gif 119${PYSITELIB}/loggerhead/static/images/newCode.gif
 120${PYSITELIB}/loggerhead/static/images/spinner.gif
102${PYSITELIB}/loggerhead/static/images/treeCollapsed.png 121${PYSITELIB}/loggerhead/static/images/treeCollapsed.png
103${PYSITELIB}/loggerhead/static/images/treeDiff.png 122${PYSITELIB}/loggerhead/static/images/treeDiff.png
104${PYSITELIB}/loggerhead/static/images/treeExpanded.png 123${PYSITELIB}/loggerhead/static/images/treeExpanded.png
 124${PYSITELIB}/loggerhead/static/javascript/changelog.js
105${PYSITELIB}/loggerhead/static/javascript/custom.js 125${PYSITELIB}/loggerhead/static/javascript/custom.js
106${PYSITELIB}/loggerhead/static/javascript/mootools-1.2-core.js 126${PYSITELIB}/loggerhead/static/javascript/diff.js
107${PYSITELIB}/loggerhead/static/javascript/mootools-1.2-more.js 
108${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/README 127${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/README
109${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-base-debug.js 128${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-base-debug.js
110${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-base-min.js 129${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-base-min.js
111${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-base.js 130${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-base.js
112${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-color-debug.js 131${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-color-debug.js
113${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-color-min.js 132${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-color-min.js
114${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-color.js 133${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-color.js
115${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-curve-debug.js 134${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-curve-debug.js
116${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-curve-min.js 135${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-curve-min.js
117${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-curve.js 136${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-curve.js
118${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-debug.js 137${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-debug.js
119${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-easing-debug.js 138${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-easing-debug.js
120${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-easing-min.js 139${PYSITELIB}/loggerhead/static/javascript/yui/build/anim/anim-easing-min.js
@@ -211,49 +230,67 @@ ${PYSITELIB}/loggerhead/static/javascrip @@ -211,49 +230,67 @@ ${PYSITELIB}/loggerhead/static/javascrip
211${PYSITELIB}/loggerhead/static/javascript/yui/build/dump/README 230${PYSITELIB}/loggerhead/static/javascript/yui/build/dump/README
212${PYSITELIB}/loggerhead/static/javascript/yui/build/dump/dump-debug.js 231${PYSITELIB}/loggerhead/static/javascript/yui/build/dump/dump-debug.js
213${PYSITELIB}/loggerhead/static/javascript/yui/build/dump/dump-min.js 232${PYSITELIB}/loggerhead/static/javascript/yui/build/dump/dump-min.js
214${PYSITELIB}/loggerhead/static/javascript/yui/build/dump/dump.js 233${PYSITELIB}/loggerhead/static/javascript/yui/build/dump/dump.js
215${PYSITELIB}/loggerhead/static/javascript/yui/build/event/README 234${PYSITELIB}/loggerhead/static/javascript/yui/build/event/README
216${PYSITELIB}/loggerhead/static/javascript/yui/build/event/event-debug.js 235${PYSITELIB}/loggerhead/static/javascript/yui/build/event/event-debug.js
217${PYSITELIB}/loggerhead/static/javascript/yui/build/event/event-min.js 236${PYSITELIB}/loggerhead/static/javascript/yui/build/event/event-min.js
218${PYSITELIB}/loggerhead/static/javascript/yui/build/event/event.js 237${PYSITELIB}/loggerhead/static/javascript/yui/build/event/event.js
219${PYSITELIB}/loggerhead/static/javascript/yui/build/get/README 238${PYSITELIB}/loggerhead/static/javascript/yui/build/get/README
220${PYSITELIB}/loggerhead/static/javascript/yui/build/get/get-debug.js 239${PYSITELIB}/loggerhead/static/javascript/yui/build/get/get-debug.js
221${PYSITELIB}/loggerhead/static/javascript/yui/build/get/get-min.js 240${PYSITELIB}/loggerhead/static/javascript/yui/build/get/get-min.js
222${PYSITELIB}/loggerhead/static/javascript/yui/build/get/get.js 241${PYSITELIB}/loggerhead/static/javascript/yui/build/get/get.js
223${PYSITELIB}/loggerhead/static/javascript/yui/build/io/README 242${PYSITELIB}/loggerhead/static/javascript/yui/build/io/README
 243${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-base-debug.js
 244${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-base-min.js
 245${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-base.js
224${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-debug.js 246${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-debug.js
 247${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-form-debug.js
 248${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-form-min.js
 249${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-form.js
225${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-min.js 250${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-min.js
 251${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-queue-debug.js
 252${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-queue-min.js
 253${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-queue.js
 254${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-upload-iframe-debug.js
 255${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-upload-iframe-min.js
 256${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-upload-iframe.js
 257${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-xdr-debug.js
 258${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-xdr-min.js
 259${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io-xdr.js
226${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io.js 260${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io.js
227${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io.swf 261${PYSITELIB}/loggerhead/static/javascript/yui/build/io/io.swf
228${PYSITELIB}/loggerhead/static/javascript/yui/build/json/README 262${PYSITELIB}/loggerhead/static/javascript/yui/build/json/README
229${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-debug.js 263${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-debug.js
230${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-min.js 264${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-min.js
231${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-parse-debug.js 265${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-parse-debug.js
232${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-parse-min.js 266${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-parse-min.js
233${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-parse.js 267${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-parse.js
234${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-stringify-debug.js 268${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-stringify-debug.js
235${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-stringify-min.js 269${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-stringify-min.js
236${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-stringify.js 270${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json-stringify.js
237${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json.js 271${PYSITELIB}/loggerhead/static/javascript/yui/build/json/json.js
238${PYSITELIB}/loggerhead/static/javascript/yui/build/loader/README 272${PYSITELIB}/loggerhead/static/javascript/yui/build/loader/README
239${PYSITELIB}/loggerhead/static/javascript/yui/build/loader/loader-debug.js 273${PYSITELIB}/loggerhead/static/javascript/yui/build/loader/loader-debug.js
240${PYSITELIB}/loggerhead/static/javascript/yui/build/loader/loader-min.js 274${PYSITELIB}/loggerhead/static/javascript/yui/build/loader/loader-min.js
241${PYSITELIB}/loggerhead/static/javascript/yui/build/loader/loader.js 275${PYSITELIB}/loggerhead/static/javascript/yui/build/loader/loader.js
242${PYSITELIB}/loggerhead/static/javascript/yui/build/node/README 276${PYSITELIB}/loggerhead/static/javascript/yui/build/node/README
243${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-base-debug.js 277${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-base-debug.js
244${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-base-min.js 278${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-base-min.js
245${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-base.js 279${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-base.js
246${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-debug.js 280${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-debug.js
 281${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-event-simulate-debug.js
 282${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-event-simulate-min.js
 283${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-event-simulate.js
247${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-min.js 284${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-min.js
248${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-screen-debug.js 285${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-screen-debug.js
249${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-screen-min.js 286${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-screen-min.js
250${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-screen.js 287${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-screen.js
251${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-style-debug.js 288${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-style-debug.js
252${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-style-min.js 289${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-style-min.js
253${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-style.js 290${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node-style.js
254${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node.js 291${PYSITELIB}/loggerhead/static/javascript/yui/build/node/node.js
255${PYSITELIB}/loggerhead/static/javascript/yui/build/oop/README 292${PYSITELIB}/loggerhead/static/javascript/yui/build/oop/README
256${PYSITELIB}/loggerhead/static/javascript/yui/build/oop/oop-debug.js 293${PYSITELIB}/loggerhead/static/javascript/yui/build/oop/oop-debug.js
257${PYSITELIB}/loggerhead/static/javascript/yui/build/oop/oop-min.js 294${PYSITELIB}/loggerhead/static/javascript/yui/build/oop/oop-min.js
258${PYSITELIB}/loggerhead/static/javascript/yui/build/oop/oop.js 295${PYSITELIB}/loggerhead/static/javascript/yui/build/oop/oop.js
259${PYSITELIB}/loggerhead/static/javascript/yui/build/queue/README 296${PYSITELIB}/loggerhead/static/javascript/yui/build/queue/README
@@ -270,41 +307,43 @@ ${PYSITELIB}/loggerhead/static/javascrip @@ -270,41 +307,43 @@ ${PYSITELIB}/loggerhead/static/javascrip
270${PYSITELIB}/loggerhead/static/javascript/yui/build/yui-base/yui-base.js 307${PYSITELIB}/loggerhead/static/javascript/yui/build/yui-base/yui-base.js
271${PYSITELIB}/loggerhead/static/javascript/yui/build/yui/README 308${PYSITELIB}/loggerhead/static/javascript/yui/build/yui/README
272${PYSITELIB}/loggerhead/static/javascript/yui/build/yui/yui-debug.js 309${PYSITELIB}/loggerhead/static/javascript/yui/build/yui/yui-debug.js
273${PYSITELIB}/loggerhead/static/javascript/yui/build/yui/yui-min.js 310${PYSITELIB}/loggerhead/static/javascript/yui/build/yui/yui-min.js
274${PYSITELIB}/loggerhead/static/javascript/yui/build/yui/yui.js 311${PYSITELIB}/loggerhead/static/javascript/yui/build/yui/yui.js
275${PYSITELIB}/loggerhead/templatefunctions.py 312${PYSITELIB}/loggerhead/templatefunctions.py
276${PYSITELIB}/loggerhead/templatefunctions.pyc 313${PYSITELIB}/loggerhead/templatefunctions.pyc
277${PYSITELIB}/loggerhead/templatefunctions.pyo 314${PYSITELIB}/loggerhead/templatefunctions.pyo
278${PYSITELIB}/loggerhead/templates/__init__.py 315${PYSITELIB}/loggerhead/templates/__init__.py
279${PYSITELIB}/loggerhead/templates/__init__.pyc 316${PYSITELIB}/loggerhead/templates/__init__.pyc
280${PYSITELIB}/loggerhead/templates/__init__.pyo 317${PYSITELIB}/loggerhead/templates/__init__.pyo
281${PYSITELIB}/loggerhead/templates/annotate.pt 318${PYSITELIB}/loggerhead/templates/annotate.pt
282${PYSITELIB}/loggerhead/templates/atom.pt 319${PYSITELIB}/loggerhead/templates/atom.pt
 320${PYSITELIB}/loggerhead/templates/branchinfo.pt
283${PYSITELIB}/loggerhead/templates/breadcrumbs.pt 321${PYSITELIB}/loggerhead/templates/breadcrumbs.pt
284${PYSITELIB}/loggerhead/templates/browse.pt 322${PYSITELIB}/loggerhead/templates/browse.pt
285${PYSITELIB}/loggerhead/templates/changelog.pt 323${PYSITELIB}/loggerhead/templates/changelog.pt
286${PYSITELIB}/loggerhead/templates/collapse-all-button.pt 324${PYSITELIB}/loggerhead/templates/collapse-all-button.pt
287${PYSITELIB}/loggerhead/templates/collapse-button.pt 325${PYSITELIB}/loggerhead/templates/collapse-button.pt
288${PYSITELIB}/loggerhead/templates/directory.pt 326${PYSITELIB}/loggerhead/templates/directory.pt
289${PYSITELIB}/loggerhead/templates/error.pt 327${PYSITELIB}/loggerhead/templates/error.pt
290${PYSITELIB}/loggerhead/templates/feed-link.pt 328${PYSITELIB}/loggerhead/templates/feed-link.pt
 329${PYSITELIB}/loggerhead/templates/filediff.pt
291${PYSITELIB}/loggerhead/templates/inventory.pt 330${PYSITELIB}/loggerhead/templates/inventory.pt
292${PYSITELIB}/loggerhead/templates/macros.pt 331${PYSITELIB}/loggerhead/templates/macros.pt
293${PYSITELIB}/loggerhead/templates/menu.pt 332${PYSITELIB}/loggerhead/templates/menu.pt
294${PYSITELIB}/loggerhead/templates/modified-file-link-rev.pt 
295${PYSITELIB}/loggerhead/templates/revision.pt 333${PYSITELIB}/loggerhead/templates/revision.pt
296${PYSITELIB}/loggerhead/templates/revisionfilechanges.pt 334${PYSITELIB}/loggerhead/templates/revisionfilechanges.pt
297${PYSITELIB}/loggerhead/templates/revisioninfo.pt 335${PYSITELIB}/loggerhead/templates/revisioninfo.pt
 336${PYSITELIB}/loggerhead/templates/revlog.pt
298${PYSITELIB}/loggerhead/templates/search-box.pt 337${PYSITELIB}/loggerhead/templates/search-box.pt
299${PYSITELIB}/loggerhead/templates/search.pt 338${PYSITELIB}/loggerhead/templates/search.pt
300${PYSITELIB}/loggerhead/trace.py 339${PYSITELIB}/loggerhead/trace.py
301${PYSITELIB}/loggerhead/trace.pyc 340${PYSITELIB}/loggerhead/trace.pyc
302${PYSITELIB}/loggerhead/trace.pyo 341${PYSITELIB}/loggerhead/trace.pyo
303${PYSITELIB}/loggerhead/util.py 342${PYSITELIB}/loggerhead/util.py
304${PYSITELIB}/loggerhead/util.pyc 343${PYSITELIB}/loggerhead/util.pyc
305${PYSITELIB}/loggerhead/util.pyo 344${PYSITELIB}/loggerhead/util.pyo
306${PYSITELIB}/loggerhead/wholehistory.py 345${PYSITELIB}/loggerhead/wholehistory.py
307${PYSITELIB}/loggerhead/wholehistory.pyc 346${PYSITELIB}/loggerhead/wholehistory.pyc
308${PYSITELIB}/loggerhead/wholehistory.pyo 347${PYSITELIB}/loggerhead/wholehistory.pyo
309${PYSITELIB}/loggerhead/zptsupport.py 348${PYSITELIB}/loggerhead/zptsupport.py
310${PYSITELIB}/loggerhead/zptsupport.pyc 349${PYSITELIB}/loggerhead/zptsupport.pyc