add news item for ikiwiki 3.20100501
[ikiwiki] / doc / news / version_3.20100427.mdwn
1 This version of ikiwiki has a lot of changes that you need to know about.
2
3 Now you can include customised versions of templates in the source
4 of your wiki. (For example, templates/page.tmpl.) When these templates
5 are changed, ikiwiki will automatically rebuild pages that use them.
6
7 Allowing untrusted users to upload attachments with the ".tmpl"
8 extension is not recommended, as that allows anyone to change
9 a wiki's templates.
10
11 The --getctime switch is renamed to --gettimes, and it also gets the 
12 file modification time. And it's a lot faster (when using git). But
13 the really important change is, you don't have to remember to use this
14 switch. Now ikiwiki will do it when it needs to.
15
16 At last, the "tagged()" pagespec only matches tags, not regular wikilinks.
17 If your wiki accidentially relied on the old, buggy behavior, you might
18 need to change its pagespecs to use "link()".
19
20 Many of your wishes have been answered: Now tag pages can automatically be
21 created when new tags are used. This feature is enabled by default if you
22 have configured a tagbase. It can be turned on or off using the
23 `tag_autocreate` setting.
24
25 These changes may also affect some users:
26
27 * The `title_natural` sort method (as used by the inline directive, etc)
28   has been moved to the new sortnaturally plugin, which is not enabled
29   by default since it requires the Sort::Naturally perl module.
30
31 * `TMPL_INCLUDE` is no longer supported in any template used by ikiwiki.
32   It used to be allowed in certian templates, but not in others.
33
34 * The `add_templates` option has been removed from the underlay plugin.
35   If you used this option, you can instead use templates/ subdirectories
36   inside underlay directories added by the `add_underlays` option.
37
38 Due to the above and other changes, all wikis need to be rebuilt on
39 upgrade to this version. If you listed your wiki in /etc/ikiwiki/wikilist
40 this will be done automatically when the Debian package is upgraded. Or
41 use ikiwiki-mass-rebuild to force a rebuild.
42
43 ikiwiki 3.20100427 released with [[!toggle text="these changes"]]
44 [[!toggleable text="""
45  * [ Joey Hess ]
46    * tag: Automatic creation of tag pages can now be enabled using
47      the tag\_autocreate setting. (David Riebenbauer)
48    * Customised templates can now be included in the source of wikis
49      (and also in underlays), and dependencies on them are tracked.
50    * TMPL\_INCLUDE is no longer supported in any template.
51    * underlay: Removed the add\_templates option.
52    * Add template\_depends function to plugin API.
53    * bzr: Fix bzr log parsing to work with bzr 2.0. (liw)
54    * comments: Fix missing entity encoding in title.
55    * txt: Add a special case for robots.txt.
56  * [ Simon McVittie ]
57    * Add support for link types, and make the the tagged() pagespec only
58      match tags, not regular links (a bugfix).
59    * Rebuild wikis on upgrade to this version to get tag link types recorded
60      correctly.
61    * Revamp sorting system; allow new sort methods to be added by plugins,
62      and add a "sortspec" syntax that can combine, reverse, etc sort methods.
63    * meta: Add `meta(author)`, `meta(title)` etc sortspecs to allow sorting
64      by metadata.
65    * meta: Add optional sortas parameter to author and title meta directives.
66      This can be used to get names sorted by last name without displaying
67      them last name first.
68    * sortnaturally: New plugin; the title\_natural sort method has moved here.
69    * meta: store fields consistently unescaped, and escape on use.
70      (A wiki rebuild is also needed due to this change.)
71  * [ Joey Hess ]
72    * Update dependency for git-core to git transition.
73    * po: Check that translated underlay directories exist before using them
74      for master language.
75    * po: Configuring the same language as master and slave confuses processing;
76      so filter out such a misconfiguration.
77    * calendar: Add archive\_pagespec, which is used by ikiwiki-calendar to
78      specify which pages to include on the calendar archive pages.
79      (The pagespec can still also be specified on the ikiwiki-calendar command
80      line.)
81    * pagestats: Class parameter can be used to override default class for
82      custom styling.
83    * pagestats: Use style=list to get a list of tags, scaled by use like
84      in a tag cloud. This is useful to put in a sidebar.
85    * Rework example blog front page.
86    * CSS and templates for sidebar changed to use a class, not an id.
87    * sidebar: Now a sidebar directive can be used to override the sidebar
88      shown on a page.
89    * Enable calendar and sidebar in auto-blog.setup.
90    * sidebar: Add global\_sidebars setting.
91    * conditional: Fix bug that forced "all" mode off by default.
92    * calendarmonth.tmpl: The month calendar is now put in a sidebar.
93    * calendar: Improved display of arrows.
94    * Rename --getctime to --gettime. (The old name still works for
95      backwards compatibility.)
96    * --gettime now also looks up last modification time.
97    * Automatically run --gettime the first time ikiwiki is run on
98      a given srcdir. (Use --no-gettime to disable.)
99    * Add rcs\_getmtime to plugin API; currently only implemented
100      for git and svn.
101    * Optimise --gettime for git, so it's appropriately screamingly
102      fast. (This could be done for most other backends too.)
103    * However, --gettime for git no longer follows renames. That would
104      be slow, and whether a renamed wiki page is the same page is really
105      an iffy thing.
106    * Use above to fix up timestamps on docwiki, as well as ensure that
107      timestamps on basewiki files shipped in the deb are sane.
108    * autoindex: Switch to using %wikistate instead of abusing
109      $pagestate{index}.
110    * bzr: Support rcs\_getmtime, and fix rcs\_getctime implementation
111      (Jelmer Vernooij)
112    * Quite a lot of new optimisations, and one major fix to a recent
113      performance regression.
114    * Moved javascript files under the ikiwiki/ directory, to avoid cluttering
115      the top of the web root. This is another things that requires a wiki
116      rebuild on upgrade to this version.
117    * Fix removal of rendered files in rebuild mode.
118    * Add page() PageSpec, which is like glob() but matches only pages,
119      not other files."""]]