-ikiwiki (2.12) UNRELEASED; urgency=low
+ikiwiki (2.40) UNRELEASED; urgency=low
+ [ Josh Triplett ]
+ * Add new preprocessor directive syntax¸ using a '!' prefix. Add a
+ prefix_directives option to the setup file to turn this syntax on;
+ currently defaults to false, for backward compatibility. Support
+ optional '!' prefix even with prefix_directives off, and use that in
+ the underlay to support either setting of prefix_directives. Add NEWS
+ entry with migration information.
+
+ -- Josh Triplett <josh@freedesktop.org> Sat, 09 Feb 2008 23:01:19 -0800
+
+ikiwiki (2.31) unstable; urgency=low
+
+ [ Joey Hess ]
+ * Revert preservation of input file modification times in output files,
+ since this leads to too many problems with web caching, especially with
+ inlined pages. Properly solving this would involve tracking every page
+ that contributes to a page's content and using the youngest of them all,
+ as well as special cases for things like the version plugin, and it's just
+ too complex to do.
+ * aggregate: Forking a child broke the one state that mattered: Forcing
+ the aggregating page to be rebuilt. Fix this.
+ * cgi hooks are now run before ikiwiki state is loaded.
+ * This allows locking the wiki before loading state, which avoids some
+ tricky locking code when saving a web edit.
+ * poll: This plugin turns out to have edited pages w/o doing any locking.
+ Oops. Convert it from a cgi to a sessioncgi hook, which will work
+ much better.
+ * recentchanges: Improve handling of links on the very static changes pages
+ by thunking to the CGI, which can redirect to the page, or allow it to be
+ created if it doesn't exist.
+ * recentchanges: Exipre all *._change pages, even if the directory
+ they're in has changed.
+ * aggregate: Lots of changes; aggregation can now run without locking the
+ wiki, and there is a separate aggregatelock to prevent multiple concurrent
+ aggregation runs.
+ * monotone changes by Brian May:
+ - On commits, replace "mtn sync" bidirectional with "mtn push" single
+ direction. No need to pull changes when doing a commit. mtn sync
+ is still called in rcs_update.
+ - Support for viewing differences via patches using viewmtn.
+ * inline: When previewing, still call will_render on rss/atom files,
+ just avoid actually writing the files. This is necessary because ikiwiki
+ saves state after a preview (in case it actually *did* write files),
+ and if will_render isn't called its security checks will get upset
+ when the page is saved. Thanks to Edward Betts for his help tracking this
+ tricky bug down.
+ * inline: Add new `allowrss` and `allowatom` config options. These can be
+ used if you want a wiki that doesn't default to generating rss or atom
+ feeds, but that does allow them to be turned on for specific blogs.
+ * Don't die if running with --getctime and rcs_getctime throws an error.
+ There are several cases (recentchanges files, aggregated files)
+ where some source files are not in revision control.
+ * Page templates can now use CTIME to show when the page was created.
+
+ [ Josh Triplett ]
+ * README.Debian: Mention user wikilists.
+
+ -- Joey Hess <joeyh@debian.org> Sat, 09 Feb 2008 23:09:45 -0500
+
+ikiwiki (2.30) unstable; urgency=low
+
+ [ Joey Hess ]
+ * Old versions of git-init don't support --git-dir or GIT_DIR with
+ --bare. Change ikiwiki-makerepo to use a method that should work with
+ those older versions too.
+ * aggregate: Don't let feeds set creation times for pages in the future.
+ * Add full parser for git diff-tree output (Brian Downing)
+ * aggregate: Fork a child process to handle the aggregation. This simplifies
+ the code, since that process can change internal state as needed, and
+ it will automatically be cleaned up for the parent process, which proceeds
+ to render the changes.
+
+ [ Josh Triplett ]
+ * Add trailing comma to commented-out umask in sample ikiwiki.setup, so
+ that uncommenting it does not break the setup file.
+
+ [ Joey Hess ]
+ * inline: The template can check for FIRST and LAST, which will be
+ set for the first and last inlined page. Useful for templates that build
+ tables and the like.
+ * prettydate,ddate: Don't ignore time formats passed to displaytime
+ function.
+ * Pages with extensions starting with "_" are internal-use, and will
+ not be rendered or web-edited, or matched by normal pagespecs.
+ * Add "internal()" pagespec that matches internal-use pages.
+ * RecentChanges is now a static html page, that's updated whenever a commit
+ is made to the wiki. It's built as a blog using inline, so it can have
+ an rss feed that users can subscribe to.
+ * Removed support for sending commit notification mails. Along with it went
+ the svnrepo and notify settings, though both will be ignored if left in
+ setup files. Also gone with it is the "user()" pagespec.
+ * Add refresh hook.
+ * 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.
+ * Add support for bzr, written by Jelmer Vernooij. Thanks also to bma for
+ his independent work on bzr support.
+ * Copyright file updates.
+
+ -- Joey Hess <joeyh@debian.org> Sat, 02 Feb 2008 17:41:57 -0500
+
+ikiwiki (2.20) unstable; urgency=low
+
+ * inline: Add copyright/license info on a per-post basis to atom
+ feeds if available. (rss doesn't allow such info on a per-post basis)
+ * Also include overall copyright/license and author info in atom feeds if
+ available.
+ * meta: Allow copyright/license metadata to contain arbitrary markup.
+ * Call preprocessor hooks in void context during the scan pass. This allows
+ the hook to determine if it's just scanning, and avoid expensive
+ operations.
+ * img: Detect scan mode and avoid generating and writing the image file
+ during it, for a 2x speedup.
+ * meta: Run in scan mode again (more intelligently) and re-add support for
+ meta link.
+ * Fix support for the case where metadata appears after an inline directive
+ that needs to use it. This was broken in version 2.16.
+ * template: Remove bogus htmlize pass added in 2.16.
+ * template: Htmlize template variables, but also provide a raw version
+ via `<TMPL_VAR raw_variable>`.
+ * When htmlizing text, if the input is a single line with no newline,
+ and the htmlizer (such as markdown and textile) generates a html
+ paragraph, remove it. This allows removing several hacks from other
+ plugins that htmlize fragements of pages.
+ * In preferences, allow the subscriptions and email fields to be cleared.
+ * teximg: Fix to support the same formula on multiple pages.
+
+ -- Joey Hess <joeyh@debian.org> Thu, 10 Jan 2008 14:52:57 -0500
+
+ikiwiki (2.19) unstable; urgency=low
+
+ * Only try postsignin if no other action matched. Fixes a bug where the
+ user goes back from the signin screen and does something else.
+ * Improve behavior when trying to sign in with no cookies.
+ * 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.
+ * Add a prereq on Data::Dumper 2.11 or better, needed to dump q// objects.
+ * htmlscrubber: Further work around #365971 by adding tags for 'br/', 'hr/'
+ and 'p/'.
+ * aggregate: Include copyright statements from rss feed as meta copyright
+ directives.
+ * aggregate: Yet another state saving fix (sigh).
+ * aggregate: Add hack to support feeds with invalidly escaped html entities.
+
+ -- Joey Hess <joeyh@debian.org> Tue, 08 Jan 2008 20:43:18 -0500
+
+ikiwiki (2.18) unstable; urgency=low
+
+ * Split error messages for failures to drop real uid and gid.
+ * Retry dropping uid and gid, possibly this will help with the "Resource
+ temporarily unavailable" failures I've experienced under xen.
+ * Stop testing Encode::is_utf8 in decode_form_utf8: That doesn't work.
+ * decode_form_utf8 only fixed the utf-8 encoding for fields that were
+ registered at the time it was called, which was before the
+ formbuilder_setup hook. Fields added by the hook didn't get decoded.
+ But it can't be put after the hook either, since plugins using the hook
+ need to be able to use form values. To fix this dilemma, it's been changed
+ to a decode_cgi_utf8, which is called on the cgi query object, before the
+ form is set up, and decodes *all* cgi parameters.
+ * aggregate: Only save state if it was already loaded. This didn't used to
+ matter, but after recent changes, state is not always loaded, and saving
+ would kill it.
+ * table: Fix dependency tracking for external data files. Closes: #458387
+
+ -- Joey Hess <joeyh@debian.org> Sat, 05 Jan 2008 02:15:18 -0500
+
+ikiwiki (2.17) unstable; urgency=low
+
+ * Improved parentlinks special case for index pages.
+ * redir: Support for specifying anchors.
+ * img: Avoid nesting images when linking to another image. Closes: #457780
+ * img: Allow the link parameter to point to an exterior url.
+ * conditional: Improve regexp testing for simple uses of pagespecs
+ that match only the page using the directive, adding 'included()'
+ and supporting negated pagespecs and added whitespace.
+ * map: Fix handling of common prefix to handle the case where it's
+ in a subdirectory. Patch by Larry Clapp.
+ * 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 feeds sometimes being forgotten about.
+ * aggregate: Avoid uninitialised value warning when removing a feed that
+ has an expired guid.
+
+ -- Joey Hess <joeyh@debian.org> Sun, 30 Dec 2007 14:57:44 -0500
+
+ikiwiki (2.16) unstable; urgency=low
+
+ * Major basewiki reorganisation. Most pages moved into ikiwiki/ subdirectory
+ to avoid polluting the main namespace, and some were further renamed.
+ * meta: Add redir support, based on a patch by Thomas Schwinge.
+ * Redirs added for moved basewiki pages. These will be removed in a future
+ release.
+ * Remove .otl file from sandbox to avoid build ugliness. Closes: #454181
+ * Finally implemented a simple per-page data storage mechanism for plugins,
+ via the %pagestate hash.
+ * Use pagestate in meta to detect potential redir loops.
+ * Added a version plugin that saves state about what's using it, to force
+ pages to rebuild when ikiwiki's version changes.
+ * 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.
+ * Fix file pruning code to work if ikiwiki is run with "." as the srcdir.
+ * Add an edittemplate plugin, allowing registering template pages, that
+ provide default content for new pages created using the web frontend.
+ * Change formbuilder hook to not be responsible for displaying a form,
+ so that more than one plugin can use this hook.
+ I believe this is a safe change, since only passwordauth uses this hook.
+ (If some other plugin already used it, it would have broken passwordauth!)
+ * Ensure that web edited pages always end in a newline.
+ * Avoid unnecessary stat calls to get mtime when rendering pages, use
+ cached value.
+ * Preserve input file modification times in output files.
+ * Allow dashes in preprocessor directive commands, and shortcuts.
+ * Htmlize parameters passed to the template preprocessor directive before
+ inserting them into the html template. This ensures that markdown
+ acts on them, even if the value is expanded inside a block-level html
+ element in the html template. Closes: #454058
+ * Use a div in the note template rather than a span.
+ * shortcut: Expand %S to the raw input text, not url-encoded.
+ * Don't increment feed numbers when an inline has no feeds. (Nis Martensen)
+ * Allow editing a page and deleting all content, while still disallowing
+ creating a new page that's entirely empty.
+ * 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.
+ * map: Don't inline images.
+ * brokenlinks: Don't list the same link multiple times. (%links might
+ contain multiple copies of the same link)
+ * git: Correct display of multiline commit messages in recentchanges.
+ * Re-organise dependencies and recommends now that recommends are installed
+ by default.
+ * Don't refuse to render files with ".." in their name. (Anchor the regexp.)
+ * Work around perl taint checking bug #411786, where perl sometimes randomly
+ sets the taint flag on untainted variables, by disabling taint checking
+ in the deb. This sucks.
+
+ -- Joey Hess <joeyh@debian.org> Tue, 18 Dec 2007 16:37:22 -0500
+
+ikiwiki (2.15) unstable; urgency=low
+
+ * Add a new ikiwiki-makerepo program, that automates setting up a repo
+ and importing existing content for svn, git, and mercurial. This makes
+ the setup process much simpler.
+ * Reorganised git documentation.
+ * Actually install the ikiwiki-update-wikilist program.
+ * 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
+ * Add umask configuration option. Closes: #443329
+
+ -- Joey Hess <joeyh@debian.org> Sat, 01 Dec 2007 11:44:01 -0500
+
+ikiwiki (2.14) unstable; urgency=high
+
+ * Let CC be used to control what compiler is used to build wrappers.
+ * Use 'cc' instead of gcc as the default compiler.
+ * Security fix: Ensure that there are no symlinks anywhere in the path
+ to the top of the srcdir. In certian unusual configurations, an attacker
+ who could commit to one of the parent directories of the srcdir could
+ use a symlink attack to cause ikiwiki to publish files elsewhere in the
+ filesystem. More details at <http://ikiwiki.info/security/#index29h2>
+
+ -- Joey Hess <joeyh@debian.org> Mon, 26 Nov 2007 15:26:06 -0500
+
+ikiwiki (2.13) unstable; urgency=low
+
+ The ikiwiki zombie army release.
+
+ * Add liblwpx-paranoidagent-perl to recommends of Debian package,
+ this is needed to do OpenID really securely.
+ * ikiwiki.setup is licensed same as the basewiki, not GPLed.
+ * inline: Add timeformat parameter to control how the ctime of
+ inlined pages is displayed. Closes: #451019
+ * 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.
+ * Correct markdown in example index page in setup. Closes: #451469
+ * Better error message when a setup file has a syntax error.
+ Closes: #451666
+ * Fix mercurial historyurl in example setup file.
+ * More compact output for the brokenlinks plugin.
+ * Allow trailing slashes after page names in wikilinks.
+ * Don't consider links to anchors on the same page to be self links.
+ Patch by Daniel Burrows. Closes: #451729
+ * When usedirs is disabled, link direct to index.html files, not to
+ directories, to improve browsing of file:// urls.
+ Patch by Daniel Burrows. Closes: #451728
+ * Allow html5 video and audio tags and their attributes in the htmlscrubber.
+ * toc: Handle html elements embedded inside a header, rather than
+ stopping collecting the header text at the first element.
+
+ -- Joey Hess <joeyh@debian.org> Sat, 24 Nov 2007 16:06:22 -0500
+
+ikiwiki (2.12) unstable; urgency=low
+
+ [ Joey Hess ]
* Fix some issues with toggles in preview mode.
* Fix an aggregate plugin expiry bug. Over time, it's possible for the same
page name to be expired and reused for several distinct guids. When this
stay the same for the duration of the function.
* Avoid using commands like git-diff and instead use "git diff".
In some configurations, only the main git command is in the path.
+ * Improve the RecentChanges display for git merges, by passing -c instead
+ of -m to git-log, and by skipping display of commits that change no
+ pages.
+ * Don't truncate git commit messages to the first line in RecentChanges,
+ show the full message.
+ * map: Recent changes caused unnecessary ul's to be inserted for items
+ that were all at the same level, fix. Closes: #449285
- -- Joey Hess <joeyh@debian.org> Wed, 31 Oct 2007 17:34:59 -0400
+ [ Josh Triplett ]
+ * Fix table plugin to not generate an unbalanced tbody tag with header=no
+ * Add xmlns attribute on html element in templates; pages can now
+ validate.
+
+ [ Joey Hess ]
+ * In the example setup file, use mode 6755 for the git post-update hook.
+ It needs to be setgid if the master repo is a shared repository, so
+ that pushes into the working copy repository happen as the same group,
+ avoiding permissions problems.
+ * The first git commit legitimately has no parents. Avoid recentchanges
+ spewing uninitialised value warnings and debug messages about it.
+ Dummying up a parent of 0000000 allows gitweb to work too.
+
+ -- Joey Hess <joeyh@debian.org> Mon, 12 Nov 2007 14:35:09 -0500
ikiwiki (2.11) unstable; urgency=low