69469d1629c76d342816db1470e64ae38f15486a
[loggerhead.git] / NEWS
1 What's changed in loggerhead?
2 =============================
3
4 dev [future]
5 ---------------
6
7     - Loggerhead now serves bzr branches over HTTP and exposes the URL
8       to branch them. Addresses bug #240577. (Jonathan Lange)
9
10     - Leading blank lines in commit messages no longer result in an
11       empty summary. (Colin Watson)
12
13     - Added syntax highlighting to annotate view using
14       python-pygments.  Partially addresses bug #306631. (Peter Bui)
15
16     - Convert newlines in commit messages to HTML line breaks for
17       annotate and changelog views.  Addresses bug #273688. (Peter
18       Bui)
19
20     - serve-branches now errors if run behind a proxy without
21       paste.deploy installed.
22
23     - Loggerhead should now handle file and directory names that need
24       URL escaping without crashing.
25
26     - The start-loggerhead script properly sets the wsgi.url_scheme
27       from the server.webpath option. (neror)
28
29     - The revision page defaults to unified style again, and can
30       convert to a side-by-side view using Javascript.
31
32     - Leading blank lines in commit messages no longer result in an
33       empty summary. (Colin Watson)
34
35     - The user-confusing "next" and "previous" links now read "older"
36       and "newer" respectively.
37
38     - The annotate view now contains line number anchors.
39
40     - The annotate view does syntax highlighting using the "pygments"
41       library.  (Peter Bui)
42
43     - Changelog messages are now displayed with newlines preserved.
44       (Peter Bui)
45
46     - serve-branches now has an option, --use-cdn, to load YUI from
47       Yahoo!'s CDN. (Matt Nordhoff)
48
49     - Fix errors when using serve-branches --log-folder or --user-dirs.
50       (It was calling config.get_option() incorrectly.) (Matt Nordhoff,
51       bug #361238)
52
53     - Move some caching from RAM to the disk, and other caching and
54       memory usage improvements. (Michael Hudson)
55
56     - Add a --cache-dir option to serve-branches to choose where to
57       place the SQL cache, and only create one temporary SQL dir per
58       process. (Matt Nordhoff, #358322)
59
60     - Replace homebrew memory profiling code with Dozer. (Paul Hummer)
61
62     - Use the branch's public_branch as the default suggested URL to
63       branch from (Matt Nordhoff, #369767)
64
65     - Fix a file descriptor leak (Matt Nordhoff, #370845)
66
67     - Use transport API internally, so it is possible to specify a remote 
68       URL to serve-branches. (Jelmer Vernooij, #371787)
69
70 1.10 [22Dec2008]
71 ---------------
72
73     - Add startup deamon script for Linux (Marius Kruger)
74
75     - Switch navigation from file_ids to paths. Fixes bugs #260363,
76       #269365 and #128926. (Martin Albisetti)
77
78     - Fix bug #258710 ("the /files page explodes in an empty branch").
79       Also minor improvements to the /files and /changes pages.
80       (Marius Kruger)
81
82     - Added --port, --host and --prefix options to serve-branches
83       script. (Martin Albisetti)
84
85     - Fixed broken template for project browsing with start-loggerhead
86       (Martin Albisetti)
87
88     - Added --reload options to restart the application when a python
89       file change. (Guillermo Gonzalez)
90
91     - Added error handling middleware. (Guillermo Gonzalez)
92
93     - Fix bug #243415 ("Tracebacks go to console but not log
94       file"). Also minor improvements to logging in serve-branches and
95       start-loggerhead. (Guillermo Gonzalez)
96
97 1.6 [15Aug2008]
98 ----------------
99
100     - Download a diffs between revisions. (Martin Albisetti)
101
102     - Modified templates to make loggerhead's theme easier to
103       change. (Paul Hummer)
104
105     - Default sqlite interface is now sqlite3. (Robert Collins)
106
107     - New ninja theme sponsored by Canonical (Martin Albisetti)
108
109     - Added COPYING file and clarified copyright headers (John Arbash Meinel)
110
111     - Remove the .py extension requiered by the Debian Policy.
112       (Jelmer Vernooij)
113
114     - New startup script serve-branches will serve Loggerhead without
115       the need of configuration, and allow you to browse through directories
116       and branches. (Michael Hudson)
117
118     - Loggerhead is no longer a TurboGears application, but rather a
119       WSGI application built using Paste (see http://wsgi.org/ and
120       http://pythonpaste.org/ for more about WSGI and Paste).
121
122     - URLs now use revision numbers instead of revision ids (Martin Albisetti)
123
124     - The scripts no longer insist on Python 2.4 -- loggerhead works
125       fine with 2.5.
126
127     - Bazaar as of version 1.5 has improved in performance enough that
128       the revision cache no longer gave any noticeable benefit, so it
129       was removed (the files-changed cache is still useful).
130
131     - The templates were rewritten in Zope's TAL markup, powered by
132       the simpleTAL library -- improving both the performance and
133       memory consumption of rendering by a factor of around 3 for
134       large pages over the old Kid templates.
135
136     - Loggerhead's poorly performing text index was disabled. bzr-search
137       is now used if the plugin is installed and a text index is present
138       on the branch being viewed. (Martin Albisetti, Robert Collins).
139
140     - Loggerhead no longer depends on bzrlib functions deprecated in
141       Bazaar 1.5 and removed in 1.6 (Martin Albisetti).
142
143     - The daemonization code was made more regular, fixing bugs
144       #139161 ("Starting loggerhead process may not close its stdin
145       and stdout properly") and #211526 ("Codebrowse log directory has
146       unnecessarily permissive permissions")
147
148     - Some confusion about what the 'file_id' query argument means was
149       cleared up: filter_file_id now means "filter revisions to those
150       that affect this file" in all views and file_id means "examine
151       this file/directory" in the annotate and inventory views.
152
153     - Dates are present more compactly.
154
155     - The loggerhead.conf file can specify which network interface to
156       bind to (Mattias Eriksson)
157
158 1.2.1  [06mar2008]
159 ------------------
160
161     - The changelog view was out of order when not using the revision
162       cache.
163
164 1.2  [04mar2008]
165
166     - Michael Hudson <michael.hudson@canonical.com> has mostly taken
167       over the maintenance of loggerhead.
168
169     - loggerhead now has a simple test suite -- use 'nosetests' in the
170       loggerhead directory to run it.
171
172     - The rendering performance of pages that display large amounts of
173       text was improved by a factor of 4 or so.
174
175     - loggerhead no longer caches the text of the diffs between
176       revisions.  It rarely helped and wasted a lot of disk space.
177
178     - The layout of most pages was made more "tight" to waste less
179       screen real estate, and some other UI improvements (Kent
180       Gibson).
181
182     - Much dead code was removed.
183
184     - Loggerhead now computes the files changed between revisions only
185       when it needs to know this.  This is a fairly expensive
186       operation in Bazaar, and doing it less massively improves
187       performance and memory usage in some situations.
188
189     - Loggerhead now takes a read lock on the branch being viewed for
190       the duration of each request, which improves performance
191       significantly.
192
193     - Loggerhead no longer uses the corruption-prone Berkely DB-backed
194       shelve module for its caches, and rather (ab)uses a sqlite
195       database instead.
196
197     - The creation of History objects is much faster for large
198       branches (Aaron Bentley).
199
200     - Allow the construction of URLs using revnos and file paths as
201       well as revids and fileids (bug #98826):
202
203       - For changes pages, append the newest revno to display to the
204         URL, like http://.../changes/<revno>
205
206       - For annotate pages, append the revno to display to the URL,
207         followed by the path, like http://.../annotate/<revno>/<path>
208
209       - For file listing and revision pages append the revno to
210         display to the URL, like http://.../files/<revno>
211
212       Loggerhead still generates URLs using revision and file ids for
213       the moment.
214
215     - Many bugs were fixed:
216
217       - Loggerhead does not escape special characters when embedding a
218         revision ID in a URL (bug #88286)
219
220       - Improved robustness in the face of ghosts.
221
222       - Don't crash on displaying a commit with an empty message (bug
223         #86247)
224
225       - codebrowse fails with infinite redirections (James Henstridge,
226         bug #89854)
227
228       - Loggerhead fails to browse revisions that change binary files
229         (James Henstridge, bug #91686)
230
231       - Loggerhead atom feeds expose internal hostname (James
232         Henstridge, bug #93585)
233
234       - loggerhead don't like page break character (0x0C) in text
235         files (bug #113313)
236
237       - codebrowse source listings don't contain line number anchors
238         (bug #98826)
239
240       - only serve up unescaped user content with "Content-Disposition:
241         attachment"
242
243       - viewing the file listing consumes a lot memory (bug #116869)
244
245       - loggerhead can't handle empty branches (bug #119228)
246
247       - upgrading the format of a branch behind loggerhead could make
248         it fail for that branch (bug #118673)
249
250       - Error parsing non-ascii content (bug #117799)
251
252       - Loggerhead failed on whitespace-only commit messages.
253
254       - Links to diffs from within a revision do not work (bug
255         #119422)
256
257       - UTF-8 patches served as ISO-8859-1, fixed by served bundles as
258         application/octet-stream (bug #121336)
259
260       - TurboGears was turning query arguments into unicode, and bzr
261         stopped accepting unicode revids (bug #175228)
262
263
264 1.1.1  [24jan2007]
265 ------------------
266
267     - fix broken inventory page (oops!)
268
269     - fix a few rendering problems with kid and safari
270
271
272 1.1  [20jan2007]
273 ----------------
274
275     - new feature to compare two revisions to each other
276
277     - inserted text in diffs is now blue instead of green
278
279     - fixed to start and stop as a daemon now (use "-f" to run in the
280       foreground), and all config is in loggerhead.conf (no need to mess with
281       dev.cfg)
282
283     - renamed show/hide javascript buttons to expand/collapse, and made them
284       much faster
285
286     - added an atom-feed link to each branch on the browse page [elliot
287       murphy]
288
289     - auto-publish feature for multiple branches under a single folder (see
290       loggerhead.conf.example)
291
292     - added the ability to share cache files per-project instead of just
293       per-branch
294
295     - added side-by-side diff display for the revision page (which is the
296       default), with a button to switch between side-by-side and unified diff
297       format
298
299     - made caching use file locking, and close cleanly on shutdown
300
301     - miscellaneous speed and page-size improvements
302
303
304 1.0  [23dec2006]
305 ----------------
306
307     - initial release
308