summaryrefslogtreecommitdiff
path: root/debian
AgeCommit message (Collapse)Author
2008-05-12Fixes for behavior changes in perl 5.10's CGIJoey Hess
Something has changed in CGI.pm in perl 5.10. It used to not care if STDIN was opened using :utf8, but now it'll mis-encode utf-8 values when used that way by ikiwiki. Now I have to binmode(STDIN) before instantiating the CGI object. In 57bba4dac132a06729eeec809f5e1a5adf829806, I changed from decoding CGI::Formbuilder fields to utf-8, to decoding cgi parameters before setting up the form object. As of perl 5.10, that approach no longer has any effect (reason unknown). To get correctly encoded values in FormBuilder forms, they must once again be decoded after the form is set up. As noted in 57bba4da, this can cause one set of problems for formbuilder_setup hooks if decode_form_utf8 is called before the hooks, and a different set if it's called after. To avoid both sets of problems, call it both before and after. (Only remaining problem is the sheer ugliness and inefficiency of that..) I think that these changes will also work with older perl versions, but I haven't checked. Also, in the case of the poll plugin, the cgi parameter needs to be explcitly decoded before it is used to handle utf-8 values. (This may have always been broken, not sure if it's related to perl 5.10 or not.)
2008-05-12add suggests for s3 perl moduleJoey Hess
2008-05-07implemented pruning, s3 support now complete-ishJoey Hess
2008-05-07Optimised file statting code when scanning for modified pages; cut the ↵Joey Hess
number of system calls in half. (Still room for improvement.)
2008-05-06pinger/pingee now tested and workingJoey Hess
2008-05-06template change documentationJoey Hess
2008-05-05typoJoey Hess
2008-05-05aggregate: Add support for web-based triggering of aggregation for people ↵Joey Hess
stuck on shared hosting without cron. (Sheesh.) Enabled via the `aggregate_webtrigger` configuration optiom.
2008-05-05releasing version 2.45Joey Hess
2008-05-05enhancesments for shared hostingJoey Hess
* Add a Bundle::Ikiwiki to the source for use with CPAN to install *all* the modules ikiwiki can use. * Add a cpan directory containing a CPAN::MyConfig that can ease use of CPAN to install in a home directory on shared hosting providers. * With these changes, it's pretty easy to install onto nearlyfreespeech.net and probably other shared hosting providers like dreamhost. Added a tip page documentng the process for nearlyfreespeech.
2008-05-02git: Put -- before the filename when calling git rev-list to avoid warning ↵Joey Hess
message when the file doesn't exist.
2008-05-02Fix ugly display when editing a page that has vanished.Joey Hess
srcfile now has an optional second parameter to avoid it throwing an error if the source file does not exist.
2008-05-01anonk: Add anonok_pagespec configuration setting that can be used to allow ↵Joey Hess
anonymous users to edit only matching pages. Closes: #478892
2008-04-30img: Support a title attribute, will be passed through to html. Closes: #478718Joey Hess
2008-04-29Add missing de.po. Closes: #471540Joey Hess
2008-04-28Deal with different paths to perl when removing -T flag.Joey Hess
2008-04-28Add PREFIX/bin to the hardcoded PATH within ikiwiki.Joey Hess
2008-04-26toc: Add the table of contents at sanitize time, rather than at format time. ↵Joey Hess
This allows the toc to be displayed when previewing an edit. It also avoids headers in the page template from showing up in the toc.
2008-04-24Correct a bug in pagespec matching, where a empty pagespec matched all pages.Joey Hess
This manifested as wikis with no locked pages treating them all as locked. The bug was introduced in version 2.41. Medium urgency upload due to above fix.
2008-04-21Allow libtext-markdown-perl to satisfy dependencies, as a an alternative to ↵Joey Hess
the markdown package.
2008-04-20add CVE linkJoey Hess
2008-04-17Bring back the svnrepo setup file option. This is needed for ↵Joey Hess
recentchangediff to work with svn repos.
2008-04-16releasing version 2.43Joey Hess
2008-04-11Recommend a recent git-core for git init. Closes: 475609Joey Hess
2008-04-10Give the full path to the hyperestraier helpfile in estseek.conf.Joey Hess
2008-04-10Use bzr --quiet to avoid it outputting stuff and messing up http headers. ↵Joey Hess
(Scott Bronson)
2008-04-10Fix broken rcs_update for bzr. (Scott Bronson)Joey Hess
2008-04-10Fix missing import of escapeHTML in userlink. (Scott Bronson)Joey Hess
2008-04-10releasing version 2.42Joey Hess
2008-04-10Fix CSRF attacks against the preferences and edit forms. Closes: #475445Joey Hess
The fix involved embedding the session id in the forms, and not allowing the forms to be submitted if the embedded id does not match the session id. In the case of the preferences form, if the session id is not embedded, then the CGI parameters are cleared. This avoids a secondary attack where the link to the preferences form prefills password or other fields, and the user hits "submit" without noticing these prefilled values. In the case of the editpage form, the anonok plugin can allow anyone to edit, and so I chose not to guard against CSRF attacks against users who are not logged in. Otherwise, it also embeds the session id and checks it. For page editing, I assume that the user will notice if content or commit message is changed because of CGI parameters, and won't blndly hit save page. So I didn't block those CGI paramters. (It's even possible to use those CGI parameters, for good, not for evil, I guess..) The only other CSRF attack I can think of in ikiwiki involves the poll plugin. It's certianly possible to set up a link that causes the user to unknowingly vote in a poll. However, the poll plugin is not intended to be used for things that people would want to attack, since anyone can after all edit the poll page and fill in any values they like. So this "attack" is ignorable.
2008-04-03need to handle urls to images the sameJoey Hess
Also, simplified finding the url to the top of the site.
2008-04-03aggregate: Correct a mistake in the code that dummy up a guid for feeds ↵Joey Hess
lacking one.
2008-03-29releasing version 2.41Joey Hess
2008-03-29Added a hardlink option in the setup file, useful if the source and dest are ↵Joey Hess
on the same filesystem and the wiki includes large media files, which would normally be copied, wasting time and space.
2008-03-23inline: Allow the "feedshow" parameter to take values greater than the value ↵Joey Hess
for "show".
2008-03-21defer po and pot file updating until package build timeJoey Hess
This allows make to be run without polluting the tree with lots of po file changes.
2008-03-21external: Work around XML RPC's lack of support for null by passing a ↵Joey Hess
special sentinal value.
2008-03-21Changed to a binary index file, written using Storable, for speedJoey Hess
During refresh of a wiki with 800 files, loadindex was using more total time than any other function, and saveindex was also in the top ten. Rewriting them to use Storable makes them three times as fast. 0.7 seconds is saved on my laptop in profiling mode.
2008-03-21Precompile pagespecs, about 10% overall speedupJoey Hess
About 12% of ikiwiki runtime was spent in pagespec_match. It was evaling the same pagespec code over and over again. This changes pagespec_translate to return memoized, precompiled functions that can be called to match against a given pagespec. This also allows getting rid of the weird variable scoping trick that had to be in effect for pagespec_translate to be called -- the variables are now just fed into the function it returns. On my laptop, this drops build time for the docwiki from about 60 to 50 seconds.
2008-03-21crazy optimisation to work around slow markdownJoey Hess
Markdown is slow. Especially if it has to process an enormous page. The most common enormous page is currently the recentchanges page, which gets processed a lot, and contains very little actual markdown. Most of it is a big <div>, which markdown skips ... slowly. This is a rather sick optimisation to work around markdown's speed issues. Now inline inserts a small, dummy div, allows markdown to quickly render the actual page content, then replaces the dummy with the actual inlined pages later. Results: Rendering just a recentchanges page, with diffs included, dropped from 4.5 seconds to 2.7 seconds on my laptop. Building the entire wiki dropped from 46.6 seconds to 39.5 seconds. (It would be better if inline were a *post*-processor directive.)
2008-03-21typoJoey Hess
2008-03-21smiley: Detect smileys inside pre and tags, and do not expand.Joey Hess
2008-03-21Close meta tag for redir properly.Joey Hess
2008-03-19Store userinfo in network byte order for easy portability. (Old files will ↵Joey Hess
be automatically converted.)
2008-03-19Time::Duration is no longer used, remove from docs and recommends.Joey Hess
2008-03-18German translation update. Closes: #471540Joey Hess
2008-03-17* Record new pages in %pagesources temporarily when previewing so thatJoey Hess
things that need to know the page source or type can query it from there. Fixes previewing of tables when creating a new page.
2008-03-17updateJoey Hess
2008-03-17* Detect invalid pagespecs and do not merge them in add_depends,Joey Hess
as that can result in a broken merged pagespec that matches nothing.
2008-03-17* Correct bug in encoding of %pagestate keys, fixes edittemplate.Joey Hess