Permalink
Newer
Older
100644 431 lines (301 sloc) 16.3 KB
Mar 21, 2010
1
Version 0.7.3.1 released 20 Mar 2010
2
3
* Changed "In" to "in" in MathMLinJS.js link.
4
Mar 20, 2010
5
Version 0.7.3 released 20 Mar 2010
6
7
* Added PDF export option and pdf-export config field.
8
(Based on a patch by gwern.)
9
10
* Added markdown export.
11
12
* Use pandoc's new MathML math mode for more efficient
13
MathML.
14
Mar 20, 2010
15
* Improved multi-wiki example code in haddocks.
16
17
* Added session-timeout config setting.
18
19
* Config module: Added readSize (recognizing K,M,G suffix).
20
Previously readNumber always recognized K,M,G suffixes,
21
but these only make sense in some contexts (not e.g. for
22
times).
23
24
* Added Subst plugin (thanks to gwern).
25
26
* Added notes on PDF caching and idle.
27
28
* Fixed table of contents in wiki pages (resolving Issue #91).
29
30
* Added pandoc-user-data config option, allowing the user
31
to specify a directory with e.g. templates that override
32
the defaults used for exported pages.
Mar 20, 2010
34
* Fix filesToClean GHC panic when loading plugins on GHC HEAD
35
36
* Fixed problem with doubled // in updir links.
37
Resolves Issue #88.
38
39
* Updated interwiki plugin.
40
41
* Fixed caching for feeds. Thanks to brian.sniffen for pointing
42
out the need to normalize the time diff. Resolves Issue #87.
43
44
* Improved Feed module (gwern).
45
46
* Use line anchors from highlighting-source, so that you can link
47
directly to a particular line in a source file.
48
49
* Disable upload functionality if maxUploadSize is 0.
50
51
* Exported queryGititState, updateGititState, Network.Gitit.Layout.
52
Exported filledPageTemplate. (Thanks to tphyahoo.)
53
Split off and expose createDefaultPages.
54
Exposed compilePageTemplate.
55
56
* Use charset=utf-8 on output from Layout.
57
58
* Use isUnescapedInURI with escapeURIString rather than isAllowedInURI.
59
The latter does not escape % signs.
60
John MacFarlane
Jan 2, 2010
61
Version 0.7.2 released 02 Jan 2010
62
63
* Now compiles with GHC 6.12.
64
John MacFarlane
Jan 2, 2010
65
Version 0.7.1 released 02 Jan 2010
66
67
* Updated exports to work with pandoc 1.4.
68
69
* Began updating to work with GHC 6.12. (Still untested; there may
70
be further issues involving filestore.)
71
Dec 21, 2009
72
Version 0.7 released 20 Dec 2009
73
74
* Updated cabal file to allow happstack 0.4.
75
76
* Added support for the new mercurial filestore backend.
77
(Depending on filestore >= 0.3.4.)
78
79
* Depend on xml >= 1.3.5. This fixes a bug in the display of
80
mathml. Previously the self-closed tags in matrices with empty
81
cells confused browsers and caused them to construct the
82
DOM incorrectly. The problem is fixed by using xml's new
83
ppcElement function to render the MathML without self-closed tags.
84
85
* Depend on pandoc >= 1.3.
86
87
* Properly handle UTF-8 in config files.
88
89
* Moved option parsing code from Config module to main program.
90
The Config module now exports getConfigFromFile instead of
91
getConfigFromOpts. This should be more useful for those using gitit as
92
a library.
93
94
* Use wikiTitle config field in default HTML title.
95
96
* Improved search results:
97
+ Highlight search terms in search results.
98
Partially resolves Issue #76.
99
+ Made search results message uniform when no results.
100
+ Search: don't match page name against empty patterns.
101
+ Allow search matches on subdirectory part of page name.
102
+ Search: catch error status from filestore search.
103
Filestore <= 0.3.3 does not properly handle the error status
104
returned by later versions of 'git grep' when no match is found.
105
The problem has been fixed in darcs filestore.
106
107
* CSS tweaks:
108
+ Removed base-min.css, folded necessary styles into screen.css.
109
+ Removed 'text-align: left' for th from CSS reset.
110
111
* Feed improvements:
112
+ Modified feed handling so that feeds validate.
113
+ Perform proper escaping in Feed.hs (thanks to gwern).
114
+ Don't reveal author email in feeds.
115
+ Sitewide feed is /_feed/ (with trailing slash).
116
+ Add "http://" to base-url config option if needed.
117
118
* Use + for spaces in URLs linking to wiki pages and folders.
119
120
* Updated plugins:
121
+ Updated Interwiki plugin (gwern).
122
+ Modified WebArchiver plugin to make Alexa requests (gwern).
123
Nov 7, 2009
124
Version 0.6.6 released 06 Nov 2009
125
126
* Require filestore >= 0.3.3, which closes a security
127
vulnerability.
128
129
* Don't allow web file uploads to the static or templates directory,
130
even if these are subdirectories of the repository directory.
131
We don't want users uploading new CSS, javascript, or templates
132
that might break the site.
133
134
* Renamed gitit-dog.png -> logo.png in data/static/img.
135
This way the logo will show up even without a local img directory.
136
Thanks to Thomas Hartmann for the patch.
137
138
* Return 404 when page not found. Thanks to Richard Fergie.
139
140
* Improved layout of Export button.
141
142
* Added links for atom feeds to sitenav.st and pagetools.st, to
143
make the feeds more discoverable.
144
145
* Minor code safety improvements.
146
147
* Check for commit messages consisting of whitespace.
148
Commit messages consisting only of whitespace characters are
149
rejected by Git as empty. Gitit should behave similarly.
150
151
* Allow gitit to start up if custom template directory not found.
152
Thanks to Thomas Hartmann.
153
154
* Fixed incorrect usage of nullGroup (a debugging function). Thanks
155
to Thomas Hartmann.
156
John MacFarlane
Oct 6, 2009
157
Version 0.6.5 released 06 Oct 2009
158
159
* Added metadata to Page and Context, provided askMeta for plugins.
160
This patch gives plugins access to all of the key/value pairs
161
in the page metadata block. Thanks to Dan Cook.
162
163
* Added PigLatin plugin to demonstrate use of askMeta.
164
165
* Display informative message on authentication failure.
166
John MacFarlane
Oct 6, 2009
167
* Fixed library stanza in cabal file so plugins are properly enabled.
168
John MacFarlane
Sep 29, 2009
169
Version 0.6.4 released 28 Sep 2009
170
171
* Fixed preview javascript so that tex math works properly in
172
preview.
173
John MacFarlane
Sep 27, 2009
174
Version 0.6.3 released 27 Sep 2009
175
176
* Fixed MathML conversion so it doesn't happen when exporting to
177
non-HTML output formats.
178
179
* Fixed shadowing on page templates: previously page.st was always
180
taken from the defaults, even if a modified version existed
181
in templates/.
182
183
* Modified YUI CSS reset so that ordered list enumerators can be
184
styled properly.
185
186
* Modified showPage to work with both POST and GET requests.
187
188
Version 0.6.2 released 25 Aug 2009
189
190
* Use "reference obfuscation" for emails, rather than javascript
191
obfuscation, which seems to interfere with preview. Resolves
192
Issue #59.
193
194
Version 0.6.1 released 25 Aug 2009
196
Instructions for upgrading from 0.5.3:
198
- If you were using a Haskell configuration file, you will
199
need to create a new configuration file. 'gitit --print-default-config'
200
will print a self-documenting default configuration file in the new
201
format, which you can modify.
203
- If your wiki contains discuss pages of the form 'foo:discuss.page',
204
rename them to '@foo.page'.
205
206
- Delete template.html and the static directory so that these will
207
be replaced by the newest versions when you run gitit. If you have
208
customized these, you should back them up first, then merge your
209
changes into the new versions after they are created. (Note that
Aug 23, 2009
210
template.html will be replaced by a templates/ directory.)
212
Summary of main changes:
214
* Added support for plugins -- dynamically loaded Haskell programs that
215
transform pages. See the haddock documentation for Gitit.Interface for
216
plugin documentation. The plugins directory contains several sample
217
plugins.
218
219
* Gitit's configuration file is now a text file with key-value pairs,
220
rather than a Haskell file. The default configuration file
221
(which can be printed using `gitit --print-default-config`
222
contains comments that document all of the options.
223
224
* Pages may now be written in (limited dialects of) LaTeX or HTML,
225
as well as markdown and reStructuredText. The default format
226
is determined by a configuration option, but can be overridden
227
on a per-page basis using metadata (see below). The default
228
Front Page and Help page are created in the default format specified
229
by the configuration file. In addition, syntax help is now displayed
230
to the left of the editing box when a page is being edited.
231
232
* Pages may be written in literate Haskell, using either bird
233
style with markdown or reStructuredText, or LaTeX style with
234
LaTeX. Literate Haskell can be made the default or specified on
235
a per-page basis.
236
237
* Gitit now exports a library, Network.Gitit, that makes it easy for
238
any happstack application to embed a gitit wiki.
239
240
* Added optional atom feeds, for whole site (at /_feed)
241
and for individual pages (at /_feed/path/to/page).
242
Feeds are cached with a configurable expiration time.
243
244
* Completely new caching system. Caching is turned off by default and
245
can be enabled by a configuration option. Complete pages are cached
246
on disk and expired when pages are revised through the web interface.
247
When pages are modified directly through a VCS, the cache must be
248
refreshed manually, either by pressing Ctrl-R while viewing a page,
249
or by sending an HTTP request to /_expire/path/to/page, or by using
250
the included program expireGititPath. The new system is much faster
251
than the old in-memory cache, because it avoids the considerable
252
overhead of filestore calls to get the current revision id.
253
254
* To make whole-page caching possible, the user login/out box has been
255
made into an ajax request to /_user. jQuery is now loaded on every
256
page.
257
Aug 23, 2009
258
* Math is converted to MathML by default (using the texmath library),
259
and a javascript is linked in that renders it correctly in IE+mathplayer,
260
Firefox, and Opera. The 'math' configuration setting can alternatively
261
be set to 'jsMath' (to use jsMath javascript, which is more portable
262
but ugly and slower) or 'raw' (plain LaTeX code).
263
264
* Routing changes for better handling of web spiders. Instead of
265
"/foo?history" we now have "/_history/foo"; instead of "/foo?edit"
266
we haev "/_edit/foo"; etc. This makes it possible to exclude web
267
spiders from non-cached pages by excluding URLs that start with
268
'/_'. A default robots.txt file is now provided. Users need not
269
do anything special for this to be enabled.
270
Aug 15, 2009
271
* The authentication system has been revised and made much more
272
flexible. In the configuration file, you can specify either
273
'form', 'http', or 'generic' as authentication-method. Form
274
authentication is the old form-based gitit authentication system. HTTP
275
authentication presupposes that the wiki pages are locked down under
276
HTTP authentication; the gitit user will be set to the username used
277
for HTTP authentication. Generic authentication takes the username
278
from the REMOTE_USER request header. When gitit is being used as a
279
library, one can specify a custom withUser filter (which determines
280
the logged in user and sets REMOTE_USER accordingly) and a custom
281
authHandler (including handlers for /_login, /_logout, and whatever
282
else is needed).
283
284
* Security fix: Gitit did not verify that a change password request
285
is genuine when it receives the final POST. It has been changed to
286
re-verify the reset code, otherwise an attacker could simply steal
287
anyone's account by spoofing a POST request. (Thanks to Robin Green.)
288
289
* template.html has now been replaced by a directory, templates/, with
290
separate templates for each component of a page.
291
292
* Added /_reloadTemplates action that recompiles the templates. (By
293
default the templates are compiled only on startup.)
294
295
* Gitit's form-based authentication now includes a "password reset"
296
email. Slightly modified from a patch from Henry Laxen.
297
298
* The naming scheme for discussion pages has changed: the discussion
299
page for foo is now @foo, not foo:discuss. Reason: Windows, and
300
thus darcs, does not like colons in filenames.
301
302
* Improved logging, with configurable verbosity.
303
304
* Major code reorganization and cleanup. Gitit has been moved under
305
the Network namespace. The old WebT handlers are replaced by new ones
306
in ServerPartT. 'handle' has been removed; instead, we use happstack's
307
routing combinators. Configuration and filestores are now passed
308
around in a reader monad, in WikiState. (This also allows different
309
wikis to have different configurations.) Most handlers have been
310
simplified so that they no longer require Page and Params arguments.
311
A new function, 'withInput', is used to avoid the need to pass Params
312
between handlers.
313
Aug 23, 2009
314
* The static handler now "falls back" to the cabal data directory if the
315
requested file is not in "static" (or staticDir). So the user need
316
no longer have a copy of the standard gitit CSS, javascript, and
317
image files in "static" (unless these are to be overridden). This
318
should make updates easier. By default only 'custom.css' and
319
'logo.png' are put in the user's static directory.
320
321
* Similarly, the templates in "templates" "fall back" to defaults in
322
the cabal data directory. By default only 'footer.st' is put in
323
the user's static directory.
324
Aug 15, 2009
325
* Gitit State now includes a renderPage function. This is more flexible
326
than storing a page template, since the user may want to use a custom
327
page rendering function, even one not based on string templates.
328
329
* Added Network.Gitit.ContentTransformer module (thanks to Anton van
330
Straaten). The ContentTransformer module replaces Gitit.Convert. It
331
defines a number of single-purpose combinators that can be combined to
332
yield various kinds of content conversions. These are used to define
333
showPage, preview, showHighlightedSource, and other handlers that used
334
to be defined in Gitit.hs.
335
336
* Verify in delete POST requests that filetodelete parameter matches
337
page.
338
339
* Fixed revert when called from diff pages. Revert now reverts to the
340
older of the two revisions being compared.
341
342
* Revamped auto-merging: user must now verify an edited page after
343
a merge, even if there were no conflicts.
344
345
* Fixed Content-Disposition header on export so that filenames have
346
proper extensions.
347
Jul 5, 2009
348
* Updated for happstack-server-0.3.3. Since this version of happstack
349
supports UTF-8, gitit's old manual decoding and encoding were removed.
351
* Use fileServeStrict instead of fileServe. Resolves Issue #57.
352
353
* 'limit' is no longer used in search. The way it worked before was
354
confusing, since it limited total matches (usually to just a few files)
355
rather than limiting the number of matches in each file.
356
Aug 23, 2009
357
* rdgreen's cautious-file library is now used to write the gitit-users
358
file. This makes it less likely that the file will be corrupted on
359
a power outage or hardware failure.
360
361
* Redirects set properly after account creation. If users go from
362
the Login form to the Register form, they are no longer redirected
363
back to the Login form after creating an account.
364
365
* indexPage now uses filestore's new 'directory' function. It shows one
366
directory at a time. Subdirectories link to further index pages. This
367
improves on the old javascript folding interface, which did not preserve
368
state. (Thanks to Thomas Hartman for suggestions.)
369
370
* URLs of the form /a/b/ are now equivalent to /_index/a/b.
371
372
* Improvements and bug fixes to deleting. Deleting a non-page now works.
373
You get a nice informative message if you try to delete a nonexistent
374
page or file.
375
Aug 23, 2009
376
* Page names containing "..", "?", or "*", and '_' at beginning are
377
disallowed. Page names may now contain periods.
Jul 6, 2009
378
379
* The "Permanent link" link has been removed. It relied on the sha1
380
parameter always being set, but we've changed that for performance
381
reasons.
382
383
* Gitit can now be proxied to a subdirectory path. Thanks to Henry Laxen
384
for the idea and patches. See README for instructions.
385
386
* Performance improvements (mostly due to Gwern Branwen): Pages can be
387
compressed (configurable); unneeded filestore calls removed; cache-control:
388
max-age used.
389
390
* Moved sidebar to end of HTML to make things easier for screen readers.
391
Aug 15, 2009
392
* Moved search box and go box to templates.
393
394
* Yahoo YUI CSS framework is now used for better consistency across browsers.
Aug 23, 2009
395
CSS cleaned up. Icons for page types removed.
396
397
* Fixed handling of 'forUser' parameter in 'recent activity'.
398
399
* Made default maxUploadSize 10 Mb.
400
Aug 15, 2009
401
* Renamed AppState -> GititState.
403
Version 0.5.3 released 1 Feb 2009
404
405
* Fixed bug which caused jsMath not to load.
406
407
Version 0.5.2 released 1 Feb 2009
408
409
* Fixed cookie problem caused by empty value fields.
410
Feb 1, 2009
411
Version 0.5.1 released 1 Feb 2009
412
413
* Major code reorganization, making gitit more modular.
Feb 1, 2009
415
* Gitit can now optionally be built using Happstack instead of HAppS
416
(just use -fhappstack when cabal installing).
Feb 1, 2009
418
* Fixed bug with directories that had the same names as pages.
Feb 1, 2009
420
* Added code from HAppS-Extra to fix cookie parsing problems.
Feb 1, 2009
422
* New command-line options for --port, --debug.
Feb 1, 2009
424
* New debug feature prints the date, the raw request, and
425
the processed request data to standard output on each request.
Feb 1, 2009
427
* Files with ".page" extension can no longer be uploaded.
Feb 1, 2009
429
* Apostrophes and quotation marks now allowed in page names.
430