formatting
[ikiwiki.git] / doc / news / version_2.40.mdwn
1 News for ikiwiki 2.40:
2
3    ikiwiki now has an new syntax for preprocessor directives, using the
4    prefix '!':
5
6         \[[!directive ...]]
7
8    This new syntax no longer relies on spaces to distinguish between
9    wikilinks and preprocessor directives.  Thus, wikilinks can use spaces
10    in their link text, and preprocessor directives without arguments (such
11    as "toc") need not use a trailing space.
12
13    To enable the new syntax, set prefix\_directives to true in your ikiwiki
14    config.  For backward compatibility with existing wikis,
15    prefix\_directives currently defaults to false.  In ikiwiki 3.0,
16    prefix\_directives will default to true, and wikis which have not yet
17    converted to the new syntax will need to set prefix\_directives to false
18    in their setup files.
19
20    To convert your wiki to the new syntax, ikiwiki provides a new script
21    ikiwiki-transition.  It will convert preprocessor directives in
22    all files given on the command line.  To convert an entire wiki:
23
24         find wikidir/ -type f -name '*.mdwn' -print0 | xargs -0 ikiwiki-transition prefix\_directives
25
26    Even with prefix\_directives disabled, ikiwiki now allows an optional '!'
27    prefix on preprocessor directives (but still requires a space).  Thus, a
28    directive which uses a '!' prefix and contains a space will work with
29    ikiwiki 2.40 and newer, regardless of the value of prefix\_directives.
30    This allows the underlay to work with all ikiwikis.
31
32 ikiwiki 2.40 released with [[toggle text="these changes"]]
33 [[toggleable text="""
34  * [ Josh Triplett ]
35    * Add new preprocessor directive syntax¸ using a '!' prefix.  Add a
36      prefix\_directives option to the setup file to turn this syntax on;
37      currently defaults to false, for backward compatibility.  Support
38      optional '!' prefix even with prefix\_directives off, and use that in
39      the underlay to support either setting of prefix\_directives.  Add NEWS
40      entry with migration information.
41  * [ Joey Hess ]
42    * Danish translation update from Jonas Smedegaard. Closes: #[465152](http://bugs.debian.org/465152)
43    * Generate XML RPC messages with the encoding set to utf-8 instead
44      of XML::RPC's default of us-ascii. Allows interoperation with
45      python's xmlrpc library, which threw invalid encoding exceptions and
46      caused the rst plugin to hang.
47    * Add the linkify and scan hooks. These hooks can be used to implement
48      custom, first-class types of wikilinks.
49    * Move standard wikilink implementation to a new link plugin, which
50      will of course be enabled by default.
51    * camelcase: Convert to use new linkify and scan hooks rather than the old
52      hack.
53    * Setting NOTAINT=1 had no effect when building ikiwiki itself, fix this.
54    * Depend on HTML::Scrubber, since the scrubber is enabled by default and
55      dies if its can't be loaded.
56    * The search plugin needs to override <base> to point to the directory
57      containing ikiwiki.cgi, but this should not change the urls to the style
58      sheets etc. Add a new forcebareurl parameter to misctemplate to allow
59      it to do that.
60    * Preview limits the page dropdown to what's selected previously
61      (as preserving the full list across preview would be tricky). Userdirs
62      were still being offered as an option there, remove them.
63    * Fix a bug where user A created a page concurrently with user B, and
64      when B previewed it would redirect B to A's new page, losing B's work.
65      Instead, don't redirect and let conflict handling resolve it.
66    * monotone: Add code to default mergerc file to run
67      \_MTN/ikiwiki-netsync-hook when a commit is merged in from the net.
68    * tla: Remove call to escapeHTML when constructing recentchanges message;
69      the html is escaped at a different level. Closes: #[466495](http://bugs.debian.org/466495)
70    * bzr, mercurial: Remove unused import of escapeHTML.
71    * Fix another preview will\_render bug. This one involved inline,
72      which forced a scan of the page to make available metadata that
73      appeared after the inline directive. Problem is that scan made it forget
74      about any other files rendered due to the page. The scan also turns out
75      to be unnecessary now, since meta persistently stores state and it's
76      always available. So it was just removed.
77    * Disable taint checking for all builds as people keep complaining about it,
78      and since all versions of perl seem to be hopelessly broken.
79    * Fix links generated by preprocessor directives when previewing.
80    * inline: When forcing urls absolute for rss feeds, skip mailto and other
81      such urls.
82    * ikiwiki-makerepo: Don't fail if the third argument ends in a slash.
83    * Allow colons in URLs after the first slash. (Adeodato Simó)"""]]