1
What's changed in loggerhead?
2
=============================
7
- Loggerhead is no longer a TurboGears application, but rather a
8
WSGI application built using Paste (see http://wsgi.org/ and
9
http://pythonpaste.org/ for more about WSGI and Paste). XXX more.
11
- zpt.cleaner_urls bug 138021 ("loggerhead should generate links
12
based on revision numbers and file paths"). XXX more.
14
- The scripts no longer insist on Python 2.4 -- loggerhead works
17
- Bazaar as of version 1.5 has improved in performance enough that
18
the revision cache no longer gave any noticeable benefit, so it
19
was removed (the files-changed cache is still useful).
21
- The templates were rewritten in Zope's TAL markup, powered by
22
the simpleTAL library -- improving both the performance and
23
memory consumption of rendering by a factor of around 3 for
24
large pages over the old Kid templates.
26
- Loggerhead's poorly performing text index was disabled.
28
- Loggerhead no longer depends on bzrlib functions deprecated in
29
Bazaar 1.5 and removed in 1.6 (Martin Albisetti).
31
- The daemonization code was made more regular, fixing bugs
32
#139161 ("Starting loggerhead process may not close its stdin
33
and stdout properly") and #211526 ("Codebrowse log directory has
34
unnecessarily permissive permissions")
36
- Some confusion about what the 'file_id' query argument means was
37
cleared up: filter_file_id now means "filter revisions to those
38
that affect this file" in all views and file_id means "examine
39
this file/directory" in the annotate and inventory views.
41
- Dates are present more compactly.
43
- The loggerhead.conf file can specify which network interface to
44
bind to (Mattias Eriksson)
49
- The changelog view was out of order when not using the revision
55
- Michael Hudson <michael.hudson@canonical.com> has mostly taken
56
over the maintenance of loggerhead.
58
- loggerhead now has a simple test suite -- use 'nosetests' in the
59
loggerhead directory to run it.
61
- The rendering performance of pages that display large amounts of
62
text was improved by a factor of 4 or so.
64
- loggerhead no longer caches the text of the diffs between
65
revisions. It rarely helped and wasted a lot of disk space.
67
- The layout of most pages was made more "tight" to waste less
68
screen real estate, and some other UI improvements (Kent
71
- Much dead code was removed.
73
- Loggerhead now computes the files changed between revisions only
74
when it needs to know this. This is a fairly expensive
75
operation in Bazaar, and doing it less massively improves
76
performance and memory usage in some situations.
78
- Loggerhead now takes a read lock on the branch being viewed for
79
the duration of each request, which improves performance
82
- Loggerhead no longer uses the corruption-prone Berkely DB-backed
83
shelve module for its caches, and rather (ab)uses a sqlite
86
- The creation of History objects is much faster for large
87
branches (Aaron Bentley).
89
- Allow the construction of URLs using revnos and file paths as
90
well as revids and fileids (bug #98826):
92
- For changes pages, append the newest revno to display to the
93
URL, like http://.../changes/<revno>
95
- For annotate pages, append the revno to display to the URL,
96
followed by the path, like http://.../annotate/<revno>/<path>
98
- For file listing and revision pages append the revno to
99
display to the URL, like http://.../files/<revno>
101
Loggerhead still generates URLs using revision and file ids for
104
- Many bugs were fixed:
106
- Loggerhead does not escape special characters when embedding a
107
revision ID in a URL (bug #88286)
109
- Improved robustness in the face of ghosts.
111
- Don't crash on displaying a commit with an empty message (bug
114
- codebrowse fails with infinite redirections (James Henstridge,
117
- Loggerhead fails to browse revisions that change binary files
118
(James Henstridge, bug #91686)
120
- Loggerhead atom feeds expose internal hostname (James
121
Henstridge, bug #93585)
123
- loggerhead don't like page break character (0x0C) in text
126
- codebrowse source listings don't contain line number anchors
129
- only serve up unescaped user content with "Content-Disposition:
132
- viewing the file listing consumes a lot memory (bug #116869)
134
- loggerhead can't handle empty branches (bug #119228)
136
- upgrading the format of a branch behind loggerhead could make
137
it fail for that branch (bug #118673)
139
- Error parsing non-ascii content (bug #117799)
141
- Loggerhead failed on whitespace-only commit messages.
143
- Links to diffs from within a revision do not work (bug
146
- UTF-8 patches served as ISO-8859-1, fixed by served bundles as
147
application/octet-stream (bug #121336)
149
- TurboGears was turning query arguments into unicode, and bzr
150
stopped accepting unicode revids (bug #175228)
156
- fix broken inventory page (oops!)
158
- fix a few rendering problems with kid and safari
164
- new feature to compare two revisions to each other
166
- inserted text in diffs is now blue instead of green
168
- fixed to start and stop as a daemon now (use "-f" to run in the
169
foreground), and all config is in loggerhead.conf (no need to mess with
172
- renamed show/hide javascript buttons to expand/collapse, and made them
175
- added an atom-feed link to each branch on the browse page [elliot
178
- auto-publish feature for multiple branches under a single folder (see
179
loggerhead.conf.example)
181
- added the ability to share cache files per-project instead of just
184
- added side-by-side diff display for the revision page (which is the
185
default), with a button to switch between side-by-side and unified diff
188
- made caching use file locking, and close cleanly on shutdown
190
- miscellaneous speed and page-size improvements