1
What's changed in loggerhead?
2
=============================
7
- Loggerhead now serves bzr branches over HTTP and exposes the URL
8
to branch them. (Jonathan Lange)
10
- Leading blank lines in commit messages no longer result in an
11
empty summary. (Colin Watson)
13
- Added syntax highlighting to annotate view using
14
python-pygments. Partially addresses bug #306631. (Peter Bui)
16
- Convert newlines in commit messages to HTML line breaks for
17
annotate and changelog views. Addresses bug #273688. (Peter
20
- serve-branches now errors if run behind a proxy without
21
paste.deploy installed.
23
- Loggerhead should now handle file and directory names that need
24
URL escaping without crashing.
26
- The start-loggerhead script properly sets the wsgi.url_scheme
27
from the server.webpath option. (neror)
29
- The revision page defaults to unified style again, and can
30
convert to a side-by-side view using Javascript.
32
- Leading blank lines in commit messages no longer result in an
33
empty summary. (Colin Watson)
35
- The user-confusing "next" and "previous" links now read "older"
36
and "newer" respectively.
38
- The annotate view now contains line number anchors.
40
- The annotate view does syntax highlighting using the "pygments"
43
- Changelog messages are now displayed with newlines preserved.
46
- serve-branches now has an option, --use-cdn, to load YUI from
47
Yahoo!'s CDN. (Matt Nordhoff)
52
- Add startup deamon script for Linux (Marius Kruger)
54
- Switch navigation from file_ids to paths. Fixes bugs #260363,
55
#269365 and #128926. (Martin Albisetti)
57
- Fix bug #258710 ("the /files page explodes in an empty branch").
58
Also minor improvements to the /files and /changes pages.
61
- Added --port, --host and --prefix options to serve-branches
62
script. (Martin Albisetti)
64
- Fixed broken template for project browsing with start-loggerhead
67
- Added --reload options to restart the application when a python
68
file change. (Guillermo Gonzalez)
70
- Added error handling middleware. (Guillermo Gonzalez)
72
- Fix bug #243415 ("Tracebacks go to console but not log
73
file"). Also minor improvements to logging in serve-branches and
74
start-loggerhead. (Guillermo Gonzalez)
79
- Download a diffs between revisions. (Martin Albisetti)
81
- Modified templates to make loggerhead's theme easier to
84
- Default sqlite interface is now sqlite3. (Robert Collins)
86
- New ninja theme sponsored by Canonical (Martin Albisetti)
88
- Added COPYING file and clarified copyright headers (John Arbash Meinel)
90
- Remove the .py extension requiered by the Debian Policy.
93
- New startup script serve-branches will serve Loggerhead without
94
the need of configuration, and allow you to browse through directories
95
and branches. (Michael Hudson)
97
- Loggerhead is no longer a TurboGears application, but rather a
98
WSGI application built using Paste (see http://wsgi.org/ and
99
http://pythonpaste.org/ for more about WSGI and Paste).
101
- URLs now use revision numbers instead of revision ids (Martin Albisetti)
103
- The scripts no longer insist on Python 2.4 -- loggerhead works
106
- Bazaar as of version 1.5 has improved in performance enough that
107
the revision cache no longer gave any noticeable benefit, so it
108
was removed (the files-changed cache is still useful).
110
- The templates were rewritten in Zope's TAL markup, powered by
111
the simpleTAL library -- improving both the performance and
112
memory consumption of rendering by a factor of around 3 for
113
large pages over the old Kid templates.
115
- Loggerhead's poorly performing text index was disabled. bzr-search
116
is now used if the plugin is installed and a text index is present
117
on the branch being viewed. (Martin Albisetti, Robert Collins).
119
- Loggerhead no longer depends on bzrlib functions deprecated in
120
Bazaar 1.5 and removed in 1.6 (Martin Albisetti).
122
- The daemonization code was made more regular, fixing bugs
123
#139161 ("Starting loggerhead process may not close its stdin
124
and stdout properly") and #211526 ("Codebrowse log directory has
125
unnecessarily permissive permissions")
127
- Some confusion about what the 'file_id' query argument means was
128
cleared up: filter_file_id now means "filter revisions to those
129
that affect this file" in all views and file_id means "examine
130
this file/directory" in the annotate and inventory views.
132
- Dates are present more compactly.
134
- The loggerhead.conf file can specify which network interface to
135
bind to (Mattias Eriksson)
140
- The changelog view was out of order when not using the revision
145
- Michael Hudson <michael.hudson@canonical.com> has mostly taken
146
over the maintenance of loggerhead.
148
- loggerhead now has a simple test suite -- use 'nosetests' in the
149
loggerhead directory to run it.
151
- The rendering performance of pages that display large amounts of
152
text was improved by a factor of 4 or so.
154
- loggerhead no longer caches the text of the diffs between
155
revisions. It rarely helped and wasted a lot of disk space.
157
- The layout of most pages was made more "tight" to waste less
158
screen real estate, and some other UI improvements (Kent
161
- Much dead code was removed.
163
- Loggerhead now computes the files changed between revisions only
164
when it needs to know this. This is a fairly expensive
165
operation in Bazaar, and doing it less massively improves
166
performance and memory usage in some situations.
168
- Loggerhead now takes a read lock on the branch being viewed for
169
the duration of each request, which improves performance
172
- Loggerhead no longer uses the corruption-prone Berkely DB-backed
173
shelve module for its caches, and rather (ab)uses a sqlite
176
- The creation of History objects is much faster for large
177
branches (Aaron Bentley).
179
- Allow the construction of URLs using revnos and file paths as
180
well as revids and fileids (bug #98826):
182
- For changes pages, append the newest revno to display to the
183
URL, like http://.../changes/<revno>
185
- For annotate pages, append the revno to display to the URL,
186
followed by the path, like http://.../annotate/<revno>/<path>
188
- For file listing and revision pages append the revno to
189
display to the URL, like http://.../files/<revno>
191
Loggerhead still generates URLs using revision and file ids for
194
- Many bugs were fixed:
196
- Loggerhead does not escape special characters when embedding a
197
revision ID in a URL (bug #88286)
199
- Improved robustness in the face of ghosts.
201
- Don't crash on displaying a commit with an empty message (bug
204
- codebrowse fails with infinite redirections (James Henstridge,
207
- Loggerhead fails to browse revisions that change binary files
208
(James Henstridge, bug #91686)
210
- Loggerhead atom feeds expose internal hostname (James
211
Henstridge, bug #93585)
213
- loggerhead don't like page break character (0x0C) in text
216
- codebrowse source listings don't contain line number anchors
219
- only serve up unescaped user content with "Content-Disposition:
222
- viewing the file listing consumes a lot memory (bug #116869)
224
- loggerhead can't handle empty branches (bug #119228)
226
- upgrading the format of a branch behind loggerhead could make
227
it fail for that branch (bug #118673)
229
- Error parsing non-ascii content (bug #117799)
231
- Loggerhead failed on whitespace-only commit messages.
233
- Links to diffs from within a revision do not work (bug
236
- UTF-8 patches served as ISO-8859-1, fixed by served bundles as
237
application/octet-stream (bug #121336)
239
- TurboGears was turning query arguments into unicode, and bzr
240
stopped accepting unicode revids (bug #175228)
246
- fix broken inventory page (oops!)
248
- fix a few rendering problems with kid and safari
254
- new feature to compare two revisions to each other
256
- inserted text in diffs is now blue instead of green
258
- fixed to start and stop as a daemon now (use "-f" to run in the
259
foreground), and all config is in loggerhead.conf (no need to mess with
262
- renamed show/hide javascript buttons to expand/collapse, and made them
265
- added an atom-feed link to each branch on the browse page [elliot
268
- auto-publish feature for multiple branches under a single folder (see
269
loggerhead.conf.example)
271
- added the ability to share cache files per-project instead of just
274
- added side-by-side diff display for the revision page (which is the
275
default), with a button to switch between side-by-side and unified diff
278
- made caching use file locking, and close cleanly on shutdown
280
- miscellaneous speed and page-size improvements