1
2
What's changed in loggerhead?
2
3
=============================
7
- Add ``bzr load-test-loggerhead`` as a way to make sure loggerhead can
8
handle concurrent requests, etc. Scripts can be written that spawn
9
multiple threads, and issue concurrent requests.
12
- If we get a HEAD request, there is no reason to expand the template, we
13
shouldn't be returning body content anyway.
14
(John Arbash Meinel, #716201, #716217)
16
- Merge the pqm changes back into trunk, after trunk was reverted to an old
17
revision. (John Arbash Meinel, #716152)
19
- Redirect ``/files/file.txt`` to ``/view/file.txt`` and ``/view/dir`` to
20
``/files/dir``. (Jasper St. Pierre, #569358)
22
- Remove ``start-loggerhead`` and ``stop-loggerhead`` which were already
23
deprecated. (John Arbash Meinel)
25
- Show "Author(s)" as separate from "Committer". And label them
26
correctly. (John Arbash Meinel, #733015)
28
- The json module is no longer claimed to be supported as alternative for
29
simplejson. (Jelmer Vernooij, #586611)
35
- Syntax highlighting is no longer applied for files greater than 512K,
36
reducing codebrowse.launchpad.net overloading.
37
(Max Kanat-Alexander, #513044)
39
- Documentation added in the docs directory. README simplified
40
accordingly. (Tres Seaver).
42
- Show svn/git/hg revision ids in loggerhead revision view.
45
- Fix .bzr/smart access to branches in shared repos. (You also need
46
a version of bzr with bug #348308 fixed.) (Andrew Bennetts)
48
- Support FastCGI, SCGI and AJP using flup. (Denis Martinez)
50
- Repository.get_revision_inventory() was removed in bzr 2.2; use
51
Repository.get_inventory() instead. (Matt Nordhoff, #528194)
53
- Ignore readonly+ prefix when checking if Loggerhead is serving a
54
local location. (Reported by Tres Seaver.) (Matt Nordhoff)
56
- Set Cache-Control and Expires headers on static pages.
59
- Generate relative links where possible (everywhere but HTTP
60
redirects and feed IDs). (Michael Hudson, Matt Nordhoff)
62
- Fix bad redirect when visiting "/download" or "/download/".
63
(Matt Nordhoff, #247992)
69
- Add bug links in revision informations (Alexandre Garnier, #314052)
71
- Make sure that binary files aren't annotated. (Martin Albisetti,
74
- Loggerhead now serves bzr branches over HTTP and exposes the URL
75
to branch them. Addresses bug #240577. (Jonathan Lange)
77
- Leading blank lines in commit messages no longer result in an
78
empty summary. (Colin Watson)
80
- Added optional syntax highlighting to annotate view using
81
python-pygments. Partially addresses bug #306631. (Peter Bui)
83
- Convert newlines in commit messages to HTML line breaks for
84
annotate and changelog views. Addresses bug #273688. (Peter
87
- serve-branches now errors if run behind a proxy without
88
paste.deploy installed. (Michael Hudson)
90
- Loggerhead should now handle file and directory names that need
91
URL escaping without crashing.
93
- The start-loggerhead script properly sets the wsgi.url_scheme
94
from the server.webpath option. (neror, #260547)
96
- The revision page defaults to unified style again, and can
97
convert to a side-by-side view using JavaScript. (Michael Hudson)
99
- Clean up and improve performance of the annotate view. (Michael
102
- Finish converting JavaScript from MooTools to YUI 3. (Michael
105
- Improve compatibility with IE 6. (Michael Hudson)
107
- Leading blank lines in commit messages no longer result in an
108
empty summary. (Colin Watson)
110
- Clip long lines in side-by-side diff view. (Michael Hudson,
113
- The user-confusing "next" and "previous" links now read "older"
114
and "newer" respectively. (Michael Hudson, #297930)
116
- The annotate view now contains line number anchors. (Michael
119
- Fix inventory pages using "//" in links. (Michael Hudson, #329668)
121
- Fix problems viewing files and directories containing spaces and
122
other funny characters. (Peter Bui)
124
- Changelog messages are now displayed with newlines preserved.
127
- Offer a link to see the full file diffs for a file path. (Michael
130
- Fix annotate error caused by Pygments stripping trailing
131
whitespace. (Michael Hudson, #338762)
133
- Loggerhead can be installed as a Bazaar plugin and run by
134
'bzr serve --http'. (Martin Pool)
136
- Load parts of the changelog and revision pages via XMLHttpRequest
137
to improve performance. This adds a dependency on simplejson or
138
json. Partially addresses bug #253950. (Michael Hudson)
140
- Various improvements to the animation JavaScript. (Michael Hudson)
142
- Fix HTML content of source files being displayed unescaped when
143
Pygments was unavailable. (Michael Hudson, #344970)
145
- Fix serve-branches's path argument. (Michael Hudson, #353230)
147
- serve-branches now has an option, --use-cdn, to load YUI from
148
Yahoo!'s CDN. (Matt Nordhoff)
150
- Fix certain race conditions for loading bzr-search. (Robert
153
- Fix errors when using serve-branches --log-folder or --user-dirs.
154
(It was calling config.get_option() incorrectly.) (Matt Nordhoff,
157
- Move some caching from RAM to the disk, and other caching and
158
memory usage improvements. (Michael Hudson)
160
- Add a --cache-dir option to serve-branches to choose where to
161
place the SQL cache, and only create one temporary SQL dir per
162
process. (Matt Nordhoff, #358322)
164
- Replace homebrew memory profiling code with Dozer. (Paul Hummer)
166
- Use the branch's public_branch as the default suggested URL to
167
branch from (Matt Nordhoff, #369767)
169
- Fix a file descriptor leak (Matt Nordhoff, #370845)
171
- Use transport API internally, so it is possible to specify a remote
172
URL to serve-branches. (Jelmer Vernooij, #371787)
174
- Fix internal server errors when using start-loggerhead. (Matt
177
- Fix annotating non-UTF-8 files when Pygments is disabled. (Matt
180
- Fix 'bzr serve --http' errors. (Matt Nordhoff, #377551)
182
- Added the option to hide branches by setting http_serve = False
183
in locations.conf (Martin Albisetti)
185
- Fix serving branches over HTTP. (Matt Nordhoff, Jelmer Vernooij,
188
- Install loggerhead as a bzr plugin by default (Jelmer Vernooij)
190
- Fix logging 404 Not Found responses (Matt Nordhoff, #381029)
192
- Bumped minimunm bzrlib version to 1.13 (Martin Albisetti)
194
- Make sure the Atom feeds (nearly) validate. (Matt Nordhoff, #247162)
196
- Support serving branches over HTTP using the smart server protocol.
197
(Jelmer Vernooij, #306853)
199
- Serving branch data was broken when --allow-writes was *not*
200
passed. (Michael Hudson, #388730)
202
- http_serve config values are interpreted more forgivingly.
205
- When specifying a remote url to serve-branches, do not share
206
connections between threads. (Michael Hudson, #390972)
208
- http_serve values from locations.conf are now applied to
209
non-branch .bzr data (e.g shared repositories). (Michael Hudson)
211
- tags are now displayed. (Cris Boylan, Alexandre Garnier, Michael
214
- Display Loggerhead's version number at the bottom of the page, and
215
add a <meta> generator tag also including the version numbers of
216
its dependencies. (Matt Nordhoff, #370155)
222
- Add startup deamon script for Linux (Marius Kruger)
224
- Switch navigation from file_ids to paths. Fixes bugs #260363,
225
#269365 and #128926. (Martin Albisetti)
227
- Fix bug #258710 ("the /files page explodes in an empty branch").
228
Also minor improvements to the /files and /changes pages.
231
- Added --port, --host and --prefix options to serve-branches
232
script. (Martin Albisetti)
234
- Fixed broken template for project browsing with start-loggerhead
237
- Added --reload options to restart the application when a python
238
file change. (Guillermo Gonzalez)
240
- Added error handling middleware. (Guillermo Gonzalez)
242
- Fix bug #243415 ("Tracebacks go to console but not log
243
file"). Also minor improvements to logging in serve-branches and
244
start-loggerhead. (Guillermo Gonzalez)
249
- Download a diffs between revisions. (Martin Albisetti)
251
- Modified templates to make loggerhead's theme easier to
252
change. (Paul Hummer)
254
- Default sqlite interface is now sqlite3. (Robert Collins)
256
- New ninja theme sponsored by Canonical (Martin Albisetti)
258
- Added COPYING file and clarified copyright headers (John Arbash Meinel)
260
- Remove the .py extension requiered by the Debian Policy.
263
- New startup script serve-branches will serve Loggerhead without
264
the need of configuration, and allow you to browse through directories
265
and branches. (Michael Hudson)
267
- Loggerhead is no longer a TurboGears application, but rather a
268
WSGI application built using Paste (see http://wsgi.org/ and
269
http://pythonpaste.org/ for more about WSGI and Paste).
271
- URLs now use revision numbers instead of revision ids (Martin Albisetti)
273
- The scripts no longer insist on Python 2.4 -- loggerhead works
276
- Bazaar as of version 1.5 has improved in performance enough that
277
the revision cache no longer gave any noticeable benefit, so it
278
was removed (the files-changed cache is still useful).
280
- The templates were rewritten in Zope's TAL markup, powered by
281
the simpleTAL library -- improving both the performance and
282
memory consumption of rendering by a factor of around 3 for
283
large pages over the old Kid templates.
285
- Loggerhead's poorly performing text index was disabled. bzr-search
286
is now used if the plugin is installed and a text index is present
287
on the branch being viewed. (Martin Albisetti, Robert Collins).
289
- Loggerhead no longer depends on bzrlib functions deprecated in
290
Bazaar 1.5 and removed in 1.6 (Martin Albisetti).
292
- The daemonization code was made more regular, fixing bugs
293
#139161 ("Starting loggerhead process may not close its stdin
294
and stdout properly") and #211526 ("Codebrowse log directory has
295
unnecessarily permissive permissions")
297
- Some confusion about what the 'file_id' query argument means was
298
cleared up: filter_file_id now means "filter revisions to those
299
that affect this file" in all views and file_id means "examine
300
this file/directory" in the annotate and inventory views.
302
- Dates are present more compactly.
304
- The loggerhead.conf file can specify which network interface to
305
bind to (Mattias Eriksson)
310
- The changelog view was out of order when not using the revision
315
- Michael Hudson <michael.hudson@canonical.com> has mostly taken
316
over the maintenance of loggerhead.
318
- loggerhead now has a simple test suite -- use 'nosetests' in the
319
loggerhead directory to run it.
321
- The rendering performance of pages that display large amounts of
322
text was improved by a factor of 4 or so.
324
- loggerhead no longer caches the text of the diffs between
325
revisions. It rarely helped and wasted a lot of disk space.
327
- The layout of most pages was made more "tight" to waste less
328
screen real estate, and some other UI improvements (Kent
331
- Much dead code was removed.
333
- Loggerhead now computes the files changed between revisions only
334
when it needs to know this. This is a fairly expensive
335
operation in Bazaar, and doing it less massively improves
336
performance and memory usage in some situations.
338
- Loggerhead now takes a read lock on the branch being viewed for
339
the duration of each request, which improves performance
342
- Loggerhead no longer uses the corruption-prone Berkely DB-backed
343
shelve module for its caches, and rather (ab)uses a sqlite
346
- The creation of History objects is much faster for large
347
branches (Aaron Bentley).
349
- Allow the construction of URLs using revnos and file paths as
350
well as revids and fileids (bug #98826):
352
- For changes pages, append the newest revno to display to the
353
URL, like http://.../changes/<revno>
355
- For annotate pages, append the revno to display to the URL,
356
followed by the path, like http://.../annotate/<revno>/<path>
358
- For file listing and revision pages append the revno to
359
display to the URL, like http://.../files/<revno>
361
Loggerhead still generates URLs using revision and file ids for
364
- Many bugs were fixed:
366
- Loggerhead does not escape special characters when embedding a
367
revision ID in a URL (bug #88286)
369
- Improved robustness in the face of ghosts.
371
- Don't crash on displaying a commit with an empty message (bug
374
- codebrowse fails with infinite redirections (James Henstridge,
377
- Loggerhead fails to browse revisions that change binary files
378
(James Henstridge, bug #91686)
380
- Loggerhead atom feeds expose internal hostname (James
381
Henstridge, bug #93585)
383
- loggerhead don't like page break character (0x0C) in text
386
- codebrowse source listings don't contain line number anchors
389
- only serve up unescaped user content with "Content-Disposition:
392
- viewing the file listing consumes a lot memory (bug #116869)
394
- loggerhead can't handle empty branches (bug #119228)
396
- upgrading the format of a branch behind loggerhead could make
397
it fail for that branch (bug #118673)
399
- Error parsing non-ascii content (bug #117799)
401
- Loggerhead failed on whitespace-only commit messages.
403
- Links to diffs from within a revision do not work (bug
406
- UTF-8 patches served as ISO-8859-1, fixed by served bundles as
407
application/octet-stream (bug #121336)
409
- TurboGears was turning query arguments into unicode, and bzr
410
stopped accepting unicode revids (bug #175228)
416
8
- fix broken inventory page (oops!)
418
10
- fix a few rendering problems with kid and safari
424
16
- new feature to compare two revisions to each other
426
18
- inserted text in diffs is now blue instead of green
428
20
- fixed to start and stop as a daemon now (use "-f" to run in the
429
21
foreground), and all config is in loggerhead.conf (no need to mess with
432
24
- renamed show/hide javascript buttons to expand/collapse, and made them
435
27
- added an atom-feed link to each branch on the browse page [elliot
438
30
- auto-publish feature for multiple branches under a single folder (see
439
31
loggerhead.conf.example)
441
33
- added the ability to share cache files per-project instead of just
444
36
- added side-by-side diff display for the revision page (which is the
445
37
default), with a button to switch between side-by-side and unified diff
448
40
- made caching use file locking, and close cleanly on shutdown
450
42
- miscellaneous speed and page-size improvements