1
What's changed in loggerhead?
2
=============================
7
- Make sure that binary files aren't annotated. (Martin Albisetti,
10
- Loggerhead now serves bzr branches over HTTP and exposes the URL
11
to branch them. Addresses bug #240577. (Jonathan Lange)
13
- Leading blank lines in commit messages no longer result in an
14
empty summary. (Colin Watson)
16
- Added syntax highlighting to annotate view using
17
python-pygments. Partially addresses bug #306631. (Peter Bui)
19
- Convert newlines in commit messages to HTML line breaks for
20
annotate and changelog views. Addresses bug #273688. (Peter
23
- serve-branches now errors if run behind a proxy without
24
paste.deploy installed. (Michael Hudson)
26
- Loggerhead should now handle file and directory names that need
27
URL escaping without crashing.
29
- The start-loggerhead script properly sets the wsgi.url_scheme
30
from the server.webpath option. (neror, #260547)
32
- The revision page defaults to unified style again, and can
33
convert to a side-by-side view using JavaScript. (Michael Hudson)
35
- Finish converting JavaScript from MooTools to YUI 3.
37
- Leading blank lines in commit messages no longer result in an
38
empty summary. (Colin Watson)
40
- The user-confusing "next" and "previous" links now read "older"
41
and "newer" respectively. (Michael Hudson, #297930)
43
- The annotate view now contains line number anchors. (Michael
46
- Fix inventory pages using "//" in links. (Michael Hudson, #329668)
48
- Fix problems viewing files and directories containing spaces and
49
other funny characters. (Peter Bui)
51
- Changelog messages are now displayed with newlines preserved.
54
- Offer a link to see the full file diffs for a file path. (Michael
57
- Loggerhead can be installed as a Bazaar plugin and run by
58
'bzr serve --http'. (Martin Pool)
60
- Fix HTML content of source files being displayed unescaped when
61
Pygments was unavailable. (Michael Hudson, #344970)
63
- Fix serve-branches's path argument. (Michael Hudson, #353230)
65
- serve-branches now has an option, --use-cdn, to load YUI from
66
Yahoo!'s CDN. (Matt Nordhoff)
68
- Fix certain race conditions for loading bzr-search. (Robert
71
- Fix errors when using serve-branches --log-folder or --user-dirs.
72
(It was calling config.get_option() incorrectly.) (Matt Nordhoff,
75
- Move some caching from RAM to the disk, and other caching and
76
memory usage improvements. (Michael Hudson)
78
- Add a --cache-dir option to serve-branches to choose where to
79
place the SQL cache, and only create one temporary SQL dir per
80
process. (Matt Nordhoff, #358322)
82
- Replace homebrew memory profiling code with Dozer. (Paul Hummer)
84
- Use the branch's public_branch as the default suggested URL to
85
branch from (Matt Nordhoff, #369767)
87
- Fix a file descriptor leak (Matt Nordhoff, #370845)
89
- Use transport API internally, so it is possible to specify a remote
90
URL to serve-branches. (Jelmer Vernooij, #371787)
95
- Add startup deamon script for Linux (Marius Kruger)
97
- Switch navigation from file_ids to paths. Fixes bugs #260363,
98
#269365 and #128926. (Martin Albisetti)
100
- Fix bug #258710 ("the /files page explodes in an empty branch").
101
Also minor improvements to the /files and /changes pages.
104
- Added --port, --host and --prefix options to serve-branches
105
script. (Martin Albisetti)
107
- Fixed broken template for project browsing with start-loggerhead
110
- Added --reload options to restart the application when a python
111
file change. (Guillermo Gonzalez)
113
- Added error handling middleware. (Guillermo Gonzalez)
115
- Fix bug #243415 ("Tracebacks go to console but not log
116
file"). Also minor improvements to logging in serve-branches and
117
start-loggerhead. (Guillermo Gonzalez)
122
- Download a diffs between revisions. (Martin Albisetti)
124
- Modified templates to make loggerhead's theme easier to
125
change. (Paul Hummer)
127
- Default sqlite interface is now sqlite3. (Robert Collins)
129
- New ninja theme sponsored by Canonical (Martin Albisetti)
131
- Added COPYING file and clarified copyright headers (John Arbash Meinel)
133
- Remove the .py extension requiered by the Debian Policy.
136
- New startup script serve-branches will serve Loggerhead without
137
the need of configuration, and allow you to browse through directories
138
and branches. (Michael Hudson)
140
- Loggerhead is no longer a TurboGears application, but rather a
141
WSGI application built using Paste (see http://wsgi.org/ and
142
http://pythonpaste.org/ for more about WSGI and Paste).
144
- URLs now use revision numbers instead of revision ids (Martin Albisetti)
146
- The scripts no longer insist on Python 2.4 -- loggerhead works
149
- Bazaar as of version 1.5 has improved in performance enough that
150
the revision cache no longer gave any noticeable benefit, so it
151
was removed (the files-changed cache is still useful).
153
- The templates were rewritten in Zope's TAL markup, powered by
154
the simpleTAL library -- improving both the performance and
155
memory consumption of rendering by a factor of around 3 for
156
large pages over the old Kid templates.
158
- Loggerhead's poorly performing text index was disabled. bzr-search
159
is now used if the plugin is installed and a text index is present
160
on the branch being viewed. (Martin Albisetti, Robert Collins).
162
- Loggerhead no longer depends on bzrlib functions deprecated in
163
Bazaar 1.5 and removed in 1.6 (Martin Albisetti).
165
- The daemonization code was made more regular, fixing bugs
166
#139161 ("Starting loggerhead process may not close its stdin
167
and stdout properly") and #211526 ("Codebrowse log directory has
168
unnecessarily permissive permissions")
170
- Some confusion about what the 'file_id' query argument means was
171
cleared up: filter_file_id now means "filter revisions to those
172
that affect this file" in all views and file_id means "examine
173
this file/directory" in the annotate and inventory views.
175
- Dates are present more compactly.
177
- The loggerhead.conf file can specify which network interface to
178
bind to (Mattias Eriksson)
183
- The changelog view was out of order when not using the revision
188
- Michael Hudson <michael.hudson@canonical.com> has mostly taken
189
over the maintenance of loggerhead.
191
- loggerhead now has a simple test suite -- use 'nosetests' in the
192
loggerhead directory to run it.
194
- The rendering performance of pages that display large amounts of
195
text was improved by a factor of 4 or so.
197
- loggerhead no longer caches the text of the diffs between
198
revisions. It rarely helped and wasted a lot of disk space.
200
- The layout of most pages was made more "tight" to waste less
201
screen real estate, and some other UI improvements (Kent
204
- Much dead code was removed.
206
- Loggerhead now computes the files changed between revisions only
207
when it needs to know this. This is a fairly expensive
208
operation in Bazaar, and doing it less massively improves
209
performance and memory usage in some situations.
211
- Loggerhead now takes a read lock on the branch being viewed for
212
the duration of each request, which improves performance
215
- Loggerhead no longer uses the corruption-prone Berkely DB-backed
216
shelve module for its caches, and rather (ab)uses a sqlite
219
- The creation of History objects is much faster for large
220
branches (Aaron Bentley).
222
- Allow the construction of URLs using revnos and file paths as
223
well as revids and fileids (bug #98826):
225
- For changes pages, append the newest revno to display to the
226
URL, like http://.../changes/<revno>
228
- For annotate pages, append the revno to display to the URL,
229
followed by the path, like http://.../annotate/<revno>/<path>
231
- For file listing and revision pages append the revno to
232
display to the URL, like http://.../files/<revno>
234
Loggerhead still generates URLs using revision and file ids for
237
- Many bugs were fixed:
239
- Loggerhead does not escape special characters when embedding a
240
revision ID in a URL (bug #88286)
242
- Improved robustness in the face of ghosts.
244
- Don't crash on displaying a commit with an empty message (bug
247
- codebrowse fails with infinite redirections (James Henstridge,
250
- Loggerhead fails to browse revisions that change binary files
251
(James Henstridge, bug #91686)
253
- Loggerhead atom feeds expose internal hostname (James
254
Henstridge, bug #93585)
256
- loggerhead don't like page break character (0x0C) in text
259
- codebrowse source listings don't contain line number anchors
262
- only serve up unescaped user content with "Content-Disposition:
265
- viewing the file listing consumes a lot memory (bug #116869)
267
- loggerhead can't handle empty branches (bug #119228)
269
- upgrading the format of a branch behind loggerhead could make
270
it fail for that branch (bug #118673)
272
- Error parsing non-ascii content (bug #117799)
274
- Loggerhead failed on whitespace-only commit messages.
276
- Links to diffs from within a revision do not work (bug
279
- UTF-8 patches served as ISO-8859-1, fixed by served bundles as
280
application/octet-stream (bug #121336)
282
- TurboGears was turning query arguments into unicode, and bzr
283
stopped accepting unicode revids (bug #175228)
289
- fix broken inventory page (oops!)
291
- fix a few rendering problems with kid and safari
297
- new feature to compare two revisions to each other
299
- inserted text in diffs is now blue instead of green
301
- fixed to start and stop as a daemon now (use "-f" to run in the
302
foreground), and all config is in loggerhead.conf (no need to mess with
305
- renamed show/hide javascript buttons to expand/collapse, and made them
308
- added an atom-feed link to each branch on the browse page [elliot
311
- auto-publish feature for multiple branches under a single folder (see
312
loggerhead.conf.example)
314
- added the ability to share cache files per-project instead of just
317
- added side-by-side diff display for the revision page (which is the
318
default), with a button to switch between side-by-side and unified diff
321
- made caching use file locking, and close cleanly on shutdown
323
- miscellaneous speed and page-size improvements