Commit Graph

522 Commits (master)

Author SHA1 Message Date
Joey Hess 0b002b79b7 update 2008-12-19 17:26:41 -05:00
Víctor Moral 2c06f5f275 updated spanish translation 2008-12-19 12:45:36 -05:00
Joey Hess b67632cdcd inline: Support feedfile option to change the filename of the feed generated. 2008-12-11 15:01:26 -05:00
Joey Hess c9646ac23c German translation update from Kai Wasserbäch. Closes: #507056 2008-11-28 08:52:56 -08:00
Joey Hess a2a63a096b Spanish translation update from Victor Moral. 1997-08-14 07:20:02 -04:00
Joey Hess a493752a4d French translation update from Philippe Batailler. Closes: #506250 2008-11-19 17:30:21 -05:00
Joey Hess ecd4f0ee55 make unlockwiki drop the cgilock
This is necessary so that things that fork to the background,
like pinger, and inline ping, don't block other cgis from running.

Note that websetup also calls unlockwiki, before refreshing / rebuilding
the wiki. It makes perfect sense for that not to block other cgis.
2008-11-11 20:48:02 -05:00
Joey Hess d1b22b2524 lockwiki changes
* Stop busy-waiting in lockwiki, as this could delay ikiwiki from waking up
  for up to one second. The bailout code is no longer needed.
* Remove support for unused optional wait parameter from lockwiki.
2008-11-11 15:54:52 -05:00
Joey Hess fb89bfd26b document wikistatedir, though it's still internal 2008-11-07 12:23:30 -05:00
Joey Hess 11d377af81 txt: Do not encode quotes when filtering the txt, as that broke later parsing of any directives on the page. 2008-11-06 20:49:18 -05:00
Joey Hess 2e00af6096 releasing version 2.68 2008-11-03 16:42:06 -05:00
Joey Hess bb841f94f4 format: New plugin, allows embedding differntly formatted text inside a page (ie, otl inside a mdwn page, or syntax highlighted code inside a page). 2008-10-31 16:42:20 -04:00
Joey Hess 3b8740ebee response 2008-10-29 18:06:00 -04:00
Joey Hess 8530e827b0 git: Allow [[sha1_commit]] to be used in the diffurl, to support cgit. 2008-10-27 14:45:54 -04:00
Joey Hess d3d3999410 do no-op post_commit test in wrapper
This speeds up web commits by 1/4th of a second or so, since perl does
not have to start up for the post commit hook.

perl's locking is completly FuBar, since it's impossible to tell what perl
flock() really does, and thus difficult to write code in other languages
that interoperates with perl's locking. (Let alone interoperating with
existing fcntl locking from perl...)

In this particular case, I think I was able to find a way to avoid the
insanity, mostly. The C code does a true flock(2), and if perl is using an
incompatable lock method that does not use the same locking primative at
the kernel level, then the C code's test will fail, and it will go ahead
and run the perl code. Then the perl code's test will test the right thing.

On Debian, at least lately, perl's flock() does a true flock(2), so the
optimisation does work.
2008-10-26 15:13:04 -04:00
Joey Hess 9fc126ada6 Updated Danish translation from Jonas Smedegaard. Closes: #503117 2008-10-22 17:05:23 -04:00
Joey Hess 479d65faa0 Updated Spanish translation from the ever vigilant Victor Moral. 2008-10-22 12:33:28 -04:00
Joey Hess e75818572f function injection overhaul
Add an inject function, that can be used by plugins that want to replace
one of ikiwiki's functions with their own version. (This is a scary thing
that grubs through the symbol table, and replaces all exported occurances
of a function with the injected version.)

external: RPC functions can be injected to replace exported functions.

Removed the stupid displaytime hook, and use injection instead.
2008-10-21 17:57:19 -04:00
Joey Hess fd9393ef85 add displaytime hook
Need to use a hook because an exported function cannot be reliably
overridden. The replacement verstion was actually only affecting plugins
loaded after it.

formattime doesn't need a hook, since there's no reason to export it.
2008-10-19 20:12:37 -04:00
Joey Hess 2b569f99d9 fix relativedate timezone inclusion
The machine parseable date needs to include a timezone.

Also, simplified the interface for date display.
2008-10-19 19:21:44 -04:00
Joey Hess ac8eb2844f Updated French translation. Closes: #502694 2008-10-19 12:59:35 -04:00
Joey Hess 594243d615 update 2008-10-17 21:59:27 -04:00
Joey Hess 1a86717284 response 2008-10-17 21:02:12 -04:00
Joey Hess 7390a7a072 relativedate: New javascript-alicious plugin that makes all dates display relative, in a very nice way, if I say so myself. 2008-10-17 20:47:32 -04:00
Joey Hess 79b376f991 Add an underlay for javascript, and add ikiwiki.js containing some utility code.
* Add an underlay for javascript, and add ikiwiki.js containing some utility
  code.
* toggle: Stop embedding the full toggle code on each page using it, and
  move it to toggle.js in the javascript underlay.
2008-10-17 20:28:18 -04:00
Joey Hess de65a62501 releasing version 2.67 2008-10-17 13:17:31 -04:00
Joey Hess d3ca495e61 lockedit: Support specifying which users (and IP addresses) a page is locked for. This supports most of the ACL type things users have been wanting to be done. Closes: #443346 (It does not control who can read a page, but that's out of scope for ikiwiki.) 2008-10-08 17:47:38 -04:00
Joey Hess 781760bfee Updated Spanish translation from Victor Moral. 2008-10-07 11:51:52 -04:00
Joey Hess 836a522c81 releasing version 2.66 2008-10-05 19:24:38 -04:00
Joey Hess 49992eb2ce Updated French translation. Closes: #500929 2008-10-02 14:03:04 -04:00
Joey Hess b5bc0e812d don't say rebuilding wiki when refreshing
If run w/o --refresh, it should still say "refreshing wiki", if there's no
setup file specifed.
2008-09-30 15:40:08 -04:00
Joey Hess 0ca14589f3 close 2008-09-30 12:58:17 -04:00
Joey Hess bb4211e326 avoid unnecessarily rebuilding pages with complex conditionals
I noticed that ikiwiki/formatting was beilg rebuilt when any page changed.
This turned out to be because it contained a complex conditional
"enabled(foo) or enabled(bar)", and the conditional plugin did not notice
that this consisted only of enabled() tests, and copied it unchanged into
add_depends. Thus, the page's dependencies were satisfied by any page
change.

The fix is to beef up the parser so that it can handle that and more
complex conditionals, and detect if they consist only of such tests.
2008-09-29 18:05:39 -04:00
Joey Hess 1f1867a6fc update 2008-09-29 17:26:39 -04:00
Joey Hess 2ff3c8aee7 editpage: Be more aggressive (and less buggy) about cleaning up temporary files rendered during page preview. 2008-09-27 18:02:33 -04:00
Joey Hess a5d3acd37c Add %wikistate, which is like %pagestate except not specific to a given page, and is preserved across rebuilds. 2008-09-27 16:45:27 -04:00
Joey Hess 61426a7186 Reorganize index file, add a format version field.
Upgrades to the new index format should be transparent.

The version field is 3, because 1 was the old textual index, 2 was the
pre-versioned format.

This also includes some efficiency improvements to index loading, by
not copying a hash and using a reference.
2008-09-27 16:35:56 -04:00
Joey Hess 9ec9d6901d Export pagetitle, titlepage, linkpage. 2008-09-27 14:27:42 -04:00
Joey Hess b127e86b35 releasing version 2.65 2008-09-24 18:14:09 -04:00
Joey Hess 89c965e79e already present 2008-09-19 12:59:21 -04:00
Joey Hess 51f19ca4c8 releasing version 2.64 2008-09-14 17:15:38 -04:00
Joey Hess e62e735277 update 2008-09-11 18:56:22 -04:00
Joey Hess 6f46cc3b31 progress: New plugin to generate progress bars (willu) 2008-09-09 14:44:58 -04:00
Joey Hess 0f67e7d969 editpage: New core plugin factoring out page editing to allow disabling it if desired. 2008-09-05 13:57:25 -04:00
Joey Hess a1c7f3282d po/Makefile: update po files when the pot file has changed. Closes: #497951 2008-09-05 12:37:29 -04:00
Joey Hess d2679de965 For fine control over what characters are allowed, unescaped in source filenames, the wiki_file_chars setting is added. For example, set to "-[:alnum:]+/._" to disable colons from being used in source files (which can cause trouble om Windows). 2008-09-04 14:13:10 -04:00
Joey Hess dfea7fa1ac releasing version 2.62.1 2008-08-28 13:08:20 -04:00
Joey Hess 90b8535b57 releasing version 2.62 2008-08-27 15:40:42 -04:00
Joey Hess 2bab1389cd specify input encoding for xgettext
Pawel's utf-8 name needs this.
2008-08-27 15:16:02 -04:00
Joey Hess 69e35d3c51 willu's teximg changes
* teximg: The prefix is configurable, and has changed to not include the
  nonstandard mhchem by default. (willu)
* teximg: dvipng is used if available to render images. Its output is
  antialiased and better than dvips. If not available, the old dvips+convert
  chain will be used. (willu)
* Drop suggests on texlive-science, add suggests on dvipng.
2008-08-24 15:21:51 -04:00
Joey Hess e910acfbc9 i10n auto.setup 2008-08-21 22:49:50 -04:00
Joey Hess 0ab3ed872b releasing version 2.61 2008-08-14 21:11:45 -04:00
Joey Hess b39b92c0a6 releasing version 2.60 2008-08-12 14:28:13 -04:00
Joey Hess 6edd22808e Danish update. Closes: #494632 2008-08-11 12:47:39 -04:00
Joey Hess adc2eb3d8c Options set in the setup file are now immediatly loaded by ikiwiki -setup. This allows later switches to override them. Previously, setup file options overrode most command line options. 2008-08-06 01:58:04 -04:00
Joey Hess 11a4ad8a4d add a guard against multiple cgi or rcs wrappers 2008-08-05 21:02:18 -04:00
Joey Hess 4405cebd0a add advanced and basic modes 2008-08-03 14:57:24 -04:00
Joey Hess 4708aeceb3 websetup form display done 2008-08-02 16:41:37 -04:00
Joey Hess 25c35b6e90 banned_users move to setup file, stage 1 2008-08-01 17:39:17 -04:00
Joey Hess bb394fdae8 admin prefs move to setup file, stage 1
The locked pages configuration is moving to a locked_pages option in the
setup file, and the allowed attachments configuration to
allowed_attachments. The admin prefs page can still be used for these, but
that's depreacted and will only be shown if there's currently a value.
2008-08-01 16:45:04 -04:00
Joey Hess 0f312d152e releasing version 2.56 2008-07-31 19:29:29 -04:00
Joey Hess a71b9a1cf1 fix feed urls
The fix for colons involved adding "./" to some urls. Due to the weird way
inline called urlto, these snuck into feed urls and permalinks. Fix it by
adding an optional third parameter to urlto.
2008-07-25 16:16:44 -04:00
Joey Hess af5299677e comments 2008-07-25 15:53:46 -04:00
Joey Hess 7befc6deb3 link fixup on rename working 2008-07-23 19:12:05 -04:00
Joey Hess d76c10cba2 Split out error messages from editpage.tmpl into several separate templates. 2008-07-22 19:58:34 -04:00
Joey Hess fede380a89 releasing version 2.54 2008-07-21 11:19:01 -04:00
Joey Hess ffc99f5904 switch preprocess hooks to use error function 2008-07-13 15:05:34 -04:00
Joey Hess e3c0e49774 only htmlize errors when cgi is actually running 2008-07-12 23:23:25 -04:00
Joey Hess 8b00c9523d whitespace 2008-07-11 06:09:34 -04:00
Joey Hess e798633159 releasing version 2.53 2008-07-09 16:59:53 -04:00
Joey Hess 06709cdf31 improve error message if virus checker fails w/o output 2008-07-09 16:53:03 -04:00
Joey Hess 3e8abb8b53 response 2008-07-08 18:35:48 -04:00
Joey Hess d1a42616c5 releasing version 2.52 2008-07-06 19:24:09 -04:00
Joey Hess 05124f9a86 editpage escaping fixes
* The editpage form now uses the raw page name, not the page title, in its
  'page' cgi parameter. Using the title was ambiguous and made it
  impossible to tell between some pages, like "foo/bar" and "foo__47__bar",
  sometimes causing the wrong page to be edited.
* This change means that some edit links need to be updated.
  Force a rebuild on upgrade to this version.
* Above change also allowed really fixing escaped slashes from the blogpost
  form.
2008-07-06 15:52:04 -04:00
Joey Hess 8d3f65c293 typo 2008-07-02 18:22:49 -04:00
Joey Hess b66f9a1981 call format hooks when generating page previews
* toc: Revert change in 2.45 that made it run at sanitize time. This breaks
  use of toc in a sidebar.
* Call format hooks when generating page previews, thus fixing toc display
  there, as well as fixing inlins to again display in page previews, since
  it's started using format hooks. This also allows several other things,
  like embed, that use format hooks, to work during page preview time.
* Format hooks should not rely on getting an entire html document, as they
  will only get the body during page preview.
* toggle: Deal with preview mode when adding javascript.
2008-06-28 23:08:24 -04:00
Joey Hess 00ca6f042e releasing version 2.50 2008-06-13 15:22:56 -04:00
Joey Hess f6b47b0d1c img: Support captions. 2008-06-07 23:45:40 -04:00
Joey Hess 3215b5a982 finishing touches on the new search plugin
- Add a Help link.
- If the pageterm is too long, hash it.
2008-06-04 15:24:28 -04:00
Joey Hess 27376abb3c also decode html entities in the title 2008-06-04 01:50:51 -04:00
Joey Hess 1dddec0ba9 Pass a destpage parameter to the sanitize hook.
Because the search plugin needed it, also because it's one of the few
plugins that didn't already have it.

I also considered adding it to htmlize, but I really cannot imagine caring
what the destpage is when htmlizing. (I'll probably be poven wrong later.)
2008-06-04 01:24:23 -04:00
Joey Hess 1546b48b97 move indexing to sanitize hook
I think this will give better results overall.

I made %IkiWiki::preprocessing accessible and used it to avoid indexing
at unnecessary points.
2008-06-04 00:58:46 -04:00
Joey Hess ce826411b2 more search improvements 2008-06-04 00:38:40 -04:00
Joey Hess 1715c0399e updated French translation 2008-05-30 18:17:50 -04:00
Joey Hess e943812dc9 hashed password support, and empty password security fix
This implements the previously documented hashed password support.

While implementing that, I noticed a security hole, which this commit
also fixes..
2008-05-30 17:35:34 -04:00
Joey Hess 6b68c6ff72 releasing version 2.47 2008-05-25 14:28:33 -04:00
Joey Hess 344b50d783 releasing version 2.46 2008-05-12 20:57:28 -04:00
Joey Hess b144831e46 pinger/pingee now tested and working 2008-05-06 19:06:53 -04:00
Joey Hess 1f88cad3a2 aggregate: Add support for web-based triggering of aggregation for people stuck on shared hosting without cron. (Sheesh.) Enabled via the `aggregate_webtrigger` configuration optiom. 2008-05-05 20:20:45 -04:00
Joey Hess 545054c356 releasing version 2.45 2008-05-05 15:17:44 -04:00
Joey Hess 3a9dfb8361 enhancesments for shared hosting
* 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-05 14:51:26 -04:00
Joey Hess b2dea99417 Fix ugly display when editing a page that has vanished.
srcfile now has an optional second parameter to avoid it throwing an error
if the source file does not exist.
2008-05-02 13:02:07 -04:00
Joey Hess 788f83c97d Add missing de.po. Closes: #471540 2008-04-29 16:28:07 -04:00
Joey Hess 41ee809bf7 releasing version 2.44 2008-04-24 13:52:32 -04:00
Joey Hess 18cb252e74 releasing version 2.43 2008-04-16 18:44:58 -04:00
Joey Hess 72b5ef2c5f Fix CSRF attacks against the preferences and edit forms. Closes: #475445
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-10 16:35:30 -04:00
Joey Hess f6bd81db15 Added a hardlink option in the setup file, useful if the source and dest are on the same filesystem and the wiki includes large media files, which would normally be copied, wasting time and space. 2008-03-29 21:02:47 -04:00
Joey Hess 479f75abf4 defer po and pot file updating until package build time
This allows make to be run without polluting the tree with lots of po file
changes.
2008-03-21 16:32:23 -04:00
Joey Hess 8484b3d5e6 * French translation update. Closes: #471010 2008-03-15 12:35:42 -04:00
Joey Hess 862ca19eb1 truncate recentchangesdiffs after 200 lines
This works around a perl crasher bug, and also avoids bloating pages
with enormous diffs.

rcs_recentchanges modified to return a list in an array context.
2008-03-12 15:45:10 -04:00
Joey Hess f7bdc2385d * Use forcebaseurl to make page previews be displayed with the html base
set to the destination page. This avoids need for hacks to munge the urls
  in preview mode, which fixes several bugs.
* Several destpage fixes in plugins.
2008-03-12 14:21:48 -04:00
Joey Hess 4401e5b9ed * Updated Spanish translation from Victor Moral. 2008-03-06 12:04:24 -05:00
Joey Hess c9df38fe33 response 2008-03-03 16:01:16 -05:00
Joey Hess d93aaed791 * Add recentchangesdiff plugin that adds diffs to the recentchanges feeds.
* rcs_diff is a new function that rcs modules should implement.
* Implemented rcs_diff for git, svn, and tla (tla version untested).
  Mercurial and monotone still todo.
2008-03-03 15:53:34 -05:00
Joey Hess bd55d276b3 Fix links generated by preprocessor directives when previewing.
As was already done for linkfication, links generated in a prevew page
are relative to the top of the wiki, so it has to be told that the destpage
is there.

I was using "" to indicate this, but that may confuse some preprocessor
plugins, which treat parameters with an empry value specially (sparkline is one
such). Instead, use "/", which is more accurate anyway and works just as well.
2008-02-24 16:37:11 -05:00
Joey Hess d14bde197e * Disable taint checking for all builds as people keep complaining about it,
and since all versions of perl seem to be hopelessly broken.
2008-02-24 15:42:43 -05:00
Joey Hess 1de1fb15a0 * camelcase: Convert to use new linkify and scan hooks rather than the old
hack.
2008-02-11 23:04:19 -05:00
Joey Hess 4763514861 * Add the linkify and scan hooks. These hooks can be used to implement
custom, first-class types of wikilinks.
* Move standard wikilink implementation to a new wikilink plugin, which
  will of course be enabled by default.
2008-02-11 22:48:27 -05:00
Joey Hess 1510725aef * Danish translation update from Jonas Smedegaard. Closes: #465152 2008-02-10 19:05:33 -05:00
Joey Hess 1eeb683f1a releasing version 2.31 2008-02-10 01:11:48 -05:00
Joey Hess 9d54cc4659 implement aggregate_locking design
Now aggregation will not lock the wiki. Any changes made during aggregaton are
merged in with the changed state accumulated while aggregating. A separate
lock file prevents multiple concurrent aggregators. Garbage collection
of orphaned guids is much improved. loadstate() is only called once
per process, so tricky support for reloading wiki state is not needed.

(Tested fairly thuroughly.)
2008-02-03 16:48:26 -05:00
Joey Hess ac58aa804e update po files 2008-02-03 15:02:34 -05:00
Joey Hess b3290c64ca announce no more mail notifications on this wiki 2008-01-29 18:48:01 -05:00
Joey Hess 3803266b8f merged the recentchanges branch
misc fixes
2008-01-29 17:50:11 -05:00
Joey Hess 64a8c828b8 * meta: Add pagespec functions to match against title, author, authorurl,
license, and copyright. This can be used to create custom RecentChanges.
* meta: To support the pagespec functions, metadata about pages has to be
  retained as pagestate.
* Fix encoding bug when pagestate values contained spaces.
2008-01-29 17:16:51 -05:00
Joey Hess 8b31c53366 added configuration for recentchanges
I kept it to a simple global configuration, rather than using the
preprocessor directive for recentchanges, because that had chicken and egg
problems and seemed overcomplicated. This should work reasonably well,
though it would be good to add some more metadata so that more customised
recentchanges pages can be made.
2008-01-29 15:51:32 -05:00
Joey Hess cabd5140c4 add code to delete old change pages 2008-01-29 15:22:23 -05:00
Joey Hess 85eb1abc61 typo 2008-01-29 04:45:54 -05:00
Joey Hess 01461d3537 releasing version 2.20 2008-01-10 14:58:47 -05:00
Joey Hess 141d363888 In preferences, allow the subscriptions and email fields to be cleared 2008-01-09 17:59:56 -05:00
Joey Hess 2b9ce0129b * mdwn: When htmlizing text, if it's a single line with no newline,
remove the enclosing paragraph and newline markdown wraps it in.
  This allows removing several hacks around this markdown behavior from
  other plugins that htmlize fragements of pages.
2008-01-09 14:35:23 -05:00
Joey Hess 57ff2ecaed * template: Remove bogus htmlize pass added in 2.16.
* template: Htmlize template variables, but also provide a raw version
  via `<TMPL_VAR raw_variable>`.
2008-01-09 14:17:25 -05:00
Joey Hess 8e1b4c00f6 update po 2008-01-09 02:42:58 -05:00
Joey Hess c487b847e2 * Improved the canedit hook interface, allowing a callback function to be
returned (and not run in some cases) rather than the plugins directly
  forcing a user to log in.
* opendiscussion: allow editing of the toplevel discussion page,
  and, indirectly, allow creating new discussion pages.
2008-01-07 16:34:13 -05:00
Joey Hess e5ecdba4c3 releasing version 2.18 2008-01-05 02:26:24 -05:00
Joey Hess 41234a3f0f round days old message 2008-01-02 23:38:45 -05:00
Joey Hess 6b8a7a6bee releasing version 2.17 2007-12-30 15:04:25 -05:00
Joey Hess f0f52e602d * aggregate: Fix stupid mistake introduced when converting it to use
the needsbuild hook. This resulted in feeds not being removed when pages
  were updated, and probably other bugs.
* aggregate: Avoid uninitialised value warning when removing a feed that
  has an expired guid.
2007-12-30 14:49:25 -05:00
Joey Hess c2afda7f90 * img: Allow the link parameter to point to an exterior url. 2007-12-28 16:14:43 -05:00
Victor Moral f002759e69 Here you have the updated version of the spanish translation for
ikiwiki.
2007-12-20 12:25:21 -05:00
Joey Hess 0a26c630eb releasing version 2.16 2007-12-18 19:50:40 -05:00
Joey Hess dd0b844477 further improve the .. regexp 2007-12-17 13:53:51 -05:00
Joey Hess 90bce7d139 * Don't refuse to render files with ".." in their name. (Anchor the regexp.) 2007-12-17 13:37:19 -05:00
Joey Hess f40c6928f4 * Re-organise dependencies and recommends now that recommends are installed
by default.
2007-12-16 17:16:56 -05:00
Joey Hess 58f1ef0784 * git: Correct display of multiline commit messages in recentchanges. 2007-12-16 16:52:39 -05:00
Joey Hess c3fed25ad4 * brokenlinks: Don't list the same link multiple times. (%links might
contain multiple copies of the same link)
2007-12-16 16:42:18 -05:00
Joey Hess 96817b0032 * meta: Drop support for "meta link", since supporting this for internal
links required meta to be run during scan, which complicated its data
  storage, since it had to clear data stored during the scan pass to avoid
  duplicating it during the normal preprocessing pass.
* If you used "meta link", you should switch to either "meta openid" (for
  openid delegations), or tags (for internal, invisible links). I assume
  that nobody really used "meta link" for external, non-openid links, since
  the htmlscrubber ate those. (Tell me differently and I'll consider bringing
  back that support.)
* meta: Improved data storage.
* meta: Drop the hackish filter hook that was used to clear
  stored data before preprocessing, this hack was ugly, and broken (cf:
  liw's disappearing openids).
* aggregate: Convert filter hook to a needsbuild hook.
2007-12-16 15:56:09 -05:00
Joey Hess 10a2895b3b * shortcut: Expand %S to the raw input text, not url-encoded. 2007-12-12 16:50:29 -05:00
Joey Hess c8cb931890 reorg 2007-12-09 00:05:07 -05:00
Joey Hess 5023f2301d * The calendar plugin stores state about when it needs to be updated,
and forces rebuilds of the pages that contain calendars. So
  running ikiwiki --refresh at midnight is now enough, no need for a full
  wiki rebuild each midnight.
* calendar: Work around block html parsing bug in markdown 1.0.1 by
  enclosing the calendar in an extra div.
2007-12-08 23:54:34 -05:00
Joey Hess 5959a32f97 real redir cycle detection 2007-12-08 19:39:32 -05:00
Joey Hess fd6d85aa79 * Added a version plugin that saves state about what's using it, to force
pages to rebuild when ikiwiki's version changes.
2007-12-08 18:33:08 -05:00
Joey Hess 055179cb4c * Finally implemented a simple per-page data storage mechanism for plugins,
via the %pagestate hash.
* Use pagestate in meta to detect potential redir loops.
2007-12-08 17:40:50 -05:00
Joey Hess 2fbca21390 updates 2007-12-08 16:19:39 -05:00
Joey Hess 7960031135 MAJOR basewiki reorg
Including redir pages for the moved basewiki pages. These will be removed in
a future release.
2007-12-08 15:59:08 -05:00
Joey Hess 7b125b45b0 update 2007-12-08 15:36:34 -05:00
Joey Hess 06d77d1756 releasing version 2.15 2007-12-01 11:51:34 -05:00
Joey Hess c3805557f1 * Improve workaround for perl bug #376329. Rather than double-encoding,
which has been reported to cause encoding problems (though I haven't
  reproduced them), just catch a failure of markdown, and retry.
  (The crazy perl bug magically disappears on the retry.)
  Closes: #449379
2007-11-27 16:36:37 -05:00
Joey Hess e15e3202eb releasing version 2.14 2007-11-26 15:30:44 -05:00
Joey Hess 6ccd9313d2 * More compact output for the brokenlinks plugin. 2007-11-17 16:16:34 -05:00
Joey Hess cb80809aec * Add wrappergroup config option, which can be used to cause wrappers
to be created owned by some group other than the default. Useful
  then there's a shared repository with access controlled by a group,
  to let ikiwiki run setgid to that group.
* ikiwiki-mass-rebuild: Run build with the user in all their groups.
2007-11-14 09:27:11 -05:00
Joey Hess 264a82a435 * inline: Add timeformat parameter to control how the ctime of
inlined pages is displayed. Closes: #451019
2007-11-13 16:14:48 -05:00
Joey Hess 9d7d82bc61 releasing version 2.12 2007-11-12 14:40:24 -05:00
Joey Hess af6208f76a update ignores 2007-11-08 15:26:31 -05:00
Joey Hess 9d1978b2cd response 2007-11-06 15:19:50 -05:00
Joey Hess 1a3cc7af02 releasing version 2.11 2007-10-26 03:31:54 -04:00
joey 64292dde42 releasing version 2.10 2007-10-21 01:17:14 +00:00
joey 4ee04161eb * Danish translation from Jonas Smedegaard. Closes: #446952 2007-10-16 21:54:31 +00:00
joey a69973a8eb update 2007-10-10 16:26:07 +00:00
joey b86f9b8409 * Don't allow whitespace in link text in a wikilink. This was still
allowed by the regexp in one case though not documented to work, and
  was ambiguous with preprocessor directives.
2007-09-24 16:50:49 +00:00
joey 9d75d3005b * map: Render empty nodes on the way to subpages whose parent pages
are not included in the map.
* map: Fix valid html issue.
2007-09-21 17:54:58 +00:00
joey 0935e380c5 * tag: Add taglink preprocessor directive, supporting visible tag links.
* map: Fully specify paths to links to avoid issues when the bestlink
  didn't point to the correct page.
2007-09-20 19:23:43 +00:00
joey d1999f0357 * Add taglink preprocessor directive, supporting visible tag links.
Closes: #443344
2007-09-20 18:59:27 +00:00
joey c41941fcc8 releasing version 2.8 2007-09-17 01:36:26 +00:00
joey 9dc796737f bugfixes 2007-09-15 00:23:08 +00:00
joey 906dcfd518 * meta: Support license and copyright information. The information will
be shown in the page footer. HTML will also be inserted that should
  support the rel=license microformat as well as the HTML spec's
  rel=copyright.
2007-09-14 18:11:10 +00:00
joey 95199c5b04 * inline: add feedonly option, set feedonly=yes to get only the feed button
but not inline the pages.
2007-09-13 22:23:32 +00:00
joey 2de411ac86 * Exclude external plugin from syntax check since it uses a module that is
not in the build depends. Closes: #441171
2007-09-07 17:06:42 +00:00
joey 18ed1a3bd6 * Updated Spanish translation from Victor Moral. 2007-09-04 17:31:00 +00:00
joey ef43bff1ca * Correct generation of RFC 3339 format times for atom/rss feeds. Always use
gmtime for these since a time zone is not specified.
2007-09-02 19:29:40 +00:00
joey c73e0b78f9 use --style default for get_ctime too 2007-08-29 03:02:41 +00:00
joey 5b8e1cc369 thank goodness for test suites 2007-08-29 02:09:43 +00:00
joey 4142c02f73 * Tables containing links with a link text were misparsed, because the "|"
in the wikilink looked like a table field separator. Avoid this ambiguity
  by linkifying the data before parsing it as a table.
* Turn on allow_loose_quotes in the table plugin's Text::CSV object,
  so that links from wikilinks don't confuse the parser.
2007-08-28 23:06:24 +00:00
joey 9c5f4761d8 * Support for looking in multiple directories for underlay files.
* Plugins can add new directories to the search path with the add_underlay
  function.
* Split out smiley underlay files into a separate underlay, so if the plugin
  isn't used, the wiki isn't bloated with all those files.
2007-08-28 01:59:01 +00:00
joey a036817125 releasing version 2.6.1 2007-08-26 18:08:45 +00:00
joey 96674ea72e response 2007-08-24 21:02:19 +00:00
joey 2c5fbe844b * Call the formbuilder hook for the edit page.
* Call decode_form_utf8 before running formbuilder_setup hooks.
* Add editdiff plugin contributed by Jeremie Koenig.
* Fix it to not leak path info.
2007-08-22 21:06:13 +00:00
joey a9b7f01ec8 * Add color parameter to postsparkline. Closes: #438900 2007-08-20 18:57:21 +00:00
joey c5ad5c8276 * Various minor fixes and stylistic improvements suggested by Perl::Critic. 2007-08-15 08:08:32 +00:00
joey 69065b8e79 * Fix bug in deletion/move during edit code introduced in 1.44. Need to take
the underlaydir into account.
2007-08-14 19:44:59 +00:00
joey b4dafe467b * Change yet again how unhandled and escaped preprocessor directives are
re-output onto the page. Hopefully I finally got it right..
2007-08-13 17:35:14 +00:00
joey 506bcbac04 * Fix --libdir to work at the command line.
* Plugins can now be written as standalone external programs, which can
  be written in any language that can do XML::RPC.
2007-08-13 03:07:31 +00:00
joey 3ef2f4b529 * Updated French translation from Cyril Brulebois. Closes: #437181 2007-08-11 21:25:28 +00:00
joey b72780e70b * Add sessioncgi hook.
* Updated Spanish translation from Victor Moral.
2007-08-10 18:05:04 +00:00
joey 46a80d9cbe * Move blog form code out of CGI.pm and into the inline plugin. 2007-08-05 22:07:32 +00:00
joey 09b0a3b73f * Add rel=tag attribute to tag links, supporting that microformat, as well
as allowing them to be styled specially. Thanks, NicolasLimare.
2007-08-05 20:48:13 +00:00
joey 6a1e462cdd releasing version 2.5 2007-07-27 02:03:14 +00:00
joey 72c95e8434 * Fix re-rendering of pages when a linked to page goes away. This was broken
in version 1.50 with the addition of %destsources. Thanks, Ethan
  Glasser-Camp.
2007-07-26 19:41:04 +00:00
joey 8b3b200017 make it an infobox instead 2007-07-25 05:04:47 +00:00
joey 4de235a385 * Make the map plugin notice when pages in the map are deleted and update
it.
2007-07-25 01:04:56 +00:00
joey c92ab9cddd * Wrap the editpage template in the standard misctemplate, this allows the
pagetemplate hook to work for that page.
* Above change fixes the favicon plugin to work on edit pages.
2007-07-16 05:24:31 +00:00
joey 40261f2f9d releasing version 2.4 2007-07-15 23:43:16 +00:00
joey eabe03fb5b * Fix links to stylesheets when usedirs is enabled. 2007-07-13 20:19:34 +00:00
joey a8fa52080d * Allow simple alphanumeric style attribute values in the htmlscrubber. This
should be safe from javascript attacks.
2007-07-11 16:50:59 +00:00
joey e0da57358c get confused. So it's best for ikiwiki to follow the compatability
* Support building on systems that lack asprintf.
* mercurial getctime is currently broken, apparently by some change in
  mercurial version 0.9.4. Turn the failing test case into a TODO test case.
2007-07-09 00:39:55 +00:00
joey 9f7b327390 releasing version 2.3 2007-06-30 00:50:46 +00:00
joey 45e269b768 * French update from Jean-Luc Coulon. Closes: #430771 2007-06-28 17:47:25 +00:00
joey afcf0dc79e * Patch fixing various additional problems with test suite. Closes: #425891
once more.
2007-06-26 22:11:59 +00:00
joey 3bfa109971 * Allow svnpath config option to contain additional extra slashes anywhere
w/o confusing ikiwiki.
* Rcs modules are now imported, so other modules that need similar
  normalisation of configs etc can do so.
2007-06-23 12:12:59 +00:00
joey e00a8931a0 add freebsd port 2007-06-18 20:26:47 +00:00
joey aadb214220 * Fix wrapper generator and untaint code's handling of strings contining
newlines.
2007-06-03 16:24:22 +00:00
joey 78323806ee * Explode some of the more insane regexps. 2007-06-01 23:40:43 +00:00
joey 66cb6baf4e * Apply a patch from Carl Worth adding support for using globs in link()
in a PageSpec.
2007-05-30 19:54:08 +00:00
joey 8c2c8c6bea * Deal better with rebuilds that involve moving files; track and clean up the
old files.
* Change where the img plugin puts scaled images. It's better to make the
  scaled images subpages of the page that embeds them, rather than putting
  them alongside the original image, since if two pages scale the same image
  the same way, this prevents complications in dealing with two pages
  creating the same file. The move will be handled transparently, though you
  might want to rebuild your wiki to make it occur in one step.
2007-05-24 19:56:08 +00:00
joey 9fa9080f2c * Updated Spanish translation from Victor Moral. 2007-05-21 17:18:52 +00:00
joey 82ac63d798 * Change the aggregate plugin's locking strategy. Now it defers loading state
until the wiki is building and already locked, unless it's aggregating.
  When aggregating, it does not wait for the lock if it cannot get it, and
  instead exits, to prevent aggregating processes from piling up.
2007-05-21 02:52:51 +00:00
joey d3d528b5c4 * Add a test ensuring that the basewiki is self-contained and has no broken
links.
2007-05-20 01:00:21 +00:00
joey 190202dd4e * Make all templates have a footer div to ease themeing. Required template
and style sheet updates, and unless you're using customised versions,
  you'll want to rebuild wikis on upgrade to this version to avoid
  inconsistencies.
* Allow WIKINAME to to used in footers, as an example of something to put
  there.
2007-05-11 20:09:58 +00:00
joey f23ebaad2e * Apply patch from Pawel to avoid using -L in Makefile as it's not available
in older finds.
2007-05-10 18:59:02 +00:00
joey 301e2d93c4 * Updated Czech translation from Miroslav Kure. 2007-05-09 20:01:55 +00:00
joey 72c53650ad * Add the needsbuild hook. Plugins can use this to manipulate which files
ikiwiki builds when refreshing the wiki.
2007-05-09 00:48:09 +00:00
joey 10038268ad releasing version 2.00 2007-04-30 04:51:57 +00:00
joshtriplett fafaa119cf Revert passwordauth fieldset and doc to avoid 2.0 regressions; need to re-evaluate after 2.0. 2007-04-30 04:08:06 +00:00
joshtriplett 40365e1aee * Group passwordauth fields with a fieldset as well. Add a new
passwordauth page to the basewiki describing password
  authentication; like openid, it uses conditional to check which
  forms of authentication the wiki allows.  Add conditional cross-
  links between the openid and passwordauth pages, to help the user
  understand how they can log in.
2007-04-30 02:26:50 +00:00
joey e7d4a00bf0 fix 2007-04-29 22:58:27 +00:00
joey 93c6d2c340 * Use fieldsets in the preferences form to group related options together.
Especially cleans up the ordering of the admin's preferences form.
2007-04-29 21:57:25 +00:00
joey 3340087f66 releasing version 1.51 2007-04-29 04:57:39 +00:00
joey a1d9abab8c * Updated Spanish translation from Victor Moral. 2007-04-29 02:16:13 +00:00
joey 89abde117a * Updated Czech translation from Miroslav Kure. 2007-04-28 17:35:01 +00:00
joey 6bbade916e * Updated Polish translation from Pawel Tecza. 2007-04-27 20:26:54 +00:00
joey 9e2b8ed7fb revert, translation not ready yet 2007-04-27 20:26:17 +00:00
joey 1eee32c5b5 * Make pagespec_match return an object that can be stringified to tell
* Include wikiname in syslogged messages.
2007-04-27 17:48:11 +00:00
joey 8fa8bd0adb the kind of perl code that can only be written at 4:30 am
(Get a good message when a PageSpec fails due to a negated success by
creating success objects with a reason string, which morph into failure
objects when negated.)
2007-04-27 08:34:09 +00:00
joey f8a7fb227b * Make pagespec_match on failure return a value that is false, but in a
scalar context, evaluates to a reason why the match failed.
* Add testpagespec plugin, which might be useful to see why a pagespec isn't
  matching something.
2007-04-27 07:55:40 +00:00
joey 7cc6eb4ea4 * Updated Gujarati translation from Kartik Mistry. Closes: #421198 2007-04-27 05:31:15 +00:00
joey ee1ad53c4c * pagespec_match() has changed to take named parameters, to better allow
for extended pagespecs. The old calling convention will still work for
  back-compat for now.
* The calling convention for functions in the IkiWiki::PageSpec namespace
  has changed so they are passed named parameters.
* Plugin interface version increased to 2.00 since I don't anticipate any
  more interface changes before 2.0.
2007-04-27 02:55:52 +00:00
joey b14ac07025 * Add user(name) to the PageSpec for commit subscriptions. 2007-04-27 00:30:49 +00:00
joey 7ea3bfdb70 improve message 2007-04-23 19:32:21 +00:00
joey 7b01c6c07a tyo 2007-04-22 21:06:22 +00:00
joey a98a8feaec releasing version 1.50 2007-04-15 20:10:35 +00:00
joey e855e30d01 * Add feedshow parameter to inline, which can be useful for eg, removing
old posts from feeds when permalinks change.
2007-04-14 20:58:02 +00:00
joey 9b145798c7 * Patch from Tuomov to link to the directory in feeds when usedirs is in
effect. Note that this changes permalinks, so if you are already using
  usedirs you'll have to deal with that on upgrade to this version.
2007-04-14 20:46:41 +00:00
joey 01b058a285 * Add postformtext parameter to inline. 2007-04-12 04:13:55 +00:00
joey 13c7a51f1f * Optimise displaytime, trimming maybe 6% off the build time. 2007-04-10 01:49:16 +00:00
joey 06b955b84a * Add a new %destsources hash, which maps between a destination file and
the source page used to create it, ie it's the reverse of %renderedfiles.
* Use %destsources in htmllink and urlto for 20-50% speedup.
2007-04-10 01:18:03 +00:00
joey 88ffeae6ee * Add support for PROFILE=1 to the Makefile, this turns on profiling of the
wiki build using Devel::Profiler (Dprof can't handle ikiwiki).
2007-04-10 00:26:15 +00:00
joshtriplett 54a4151306 * Add a graphviz plugin.
* Suggests: graphviz
2007-04-09 09:09:02 +00:00
joey c36f5afce8 releasing version 1.49 2007-04-08 20:24:18 +00:00
joey 072d097be1 magic 0 2007-04-07 16:55:16 +00:00
joey 4de163b997 * Fix display of escaped wikilinks containing anchors. 2007-04-06 21:20:14 +00:00
joey 8fa477fa28 * Fix smiley plugin to scan smileys.mdwn after it's updated, which fixes
a bug caused by committing changes to smilies.mdwn.
2007-04-06 20:36:29 +00:00
joey ff1044375c update 2007-04-06 17:52:37 +00:00
joey f5a2ba0164 * Updated French translation from JLC. Closes: #417982 2007-04-06 17:14:23 +00:00
joey d25e91e127 * Fix tags to page names that contain special characters. 2007-04-04 21:08:01 +00:00
joey aee4621bae * Fix a bug in the img plugin that caused thumbnailed files to not be
* Make the OpenID library a reccommendation of the Debian package, rather
  than just a suggests, since OpenID is enabled by default.
2007-04-04 00:40:57 +00:00
joey bf9e8bc900 * Fix a big in the img plugin that caused thumbnailed files to not be
tracked properly.
2007-04-01 20:53:03 +00:00
joey 7910c2c7f6 use urlto; htmlpage is no longer appropriate here 2007-04-01 20:21:35 +00:00
joey a2cfdaaec5 * Hide excess backlinks and expand using CSS trick; control quantiy via
the numbacklinks setting.
2007-03-31 08:48:10 +00:00
joey d73eb7d9b2 * Add a templates page to the basewiki. It will automatically list all
available templates. Rename the old templates page to wikitemplates.
* Include the note template in the basewiki.
* Add a popup template in the basewiki. CSS based on some by Martin Krafft.
* Make the note, popup, and plugin templates detect missing variables and be
  self-documenting, listing the available variables.
2007-03-31 06:55:12 +00:00
joey e0cff15163 releasing version 1.48 2007-03-28 17:52:19 +00:00