From db7983c846097d3ad1929250600872139e45bb78 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 23 Dec 2008 16:20:37 -0500 Subject: beginning docs for 3.0 --- debian/NEWS | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'debian/NEWS') diff --git a/debian/NEWS b/debian/NEWS index a7a145d9b..1c9763d1a 100644 --- a/debian/NEWS +++ b/debian/NEWS @@ -1,3 +1,12 @@ +ikiwiki (3.0) unstable; urgency=low + + The 3.0 release of ikiwiki changes several defaults and makes + some transitions. You will need to modify your wikis to work with + ikiwiki 3.0. A document explaining the process is available + in + + -- Joey Hess Tue, 23 Dec 2008 16:14:18 -0500 + ikiwiki (2.62) unstable; urgency=low TexImg standard preamble changed -- cgit v1.2.3 From 04f064e78aedecc234e08bd9b49ae3674cb8f7bd Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 24 Dec 2008 19:43:07 -0500 Subject: make ikiwiki-transition prefix_directives take a setup file This is easier to remeber, and less error-prone than passing it all the pages in the wiki. --- debian/NEWS | 5 +---- doc/ikiwiki-transition.mdwn | 9 ++++----- doc/plugins/write.mdwn | 2 +- doc/tips/upgrade_to_3.0.mdwn | 13 ++++--------- ikiwiki-transition | 42 ++++++++++++++++++++++++++++++++---------- 5 files changed, 42 insertions(+), 29 deletions(-) (limited to 'debian/NEWS') diff --git a/debian/NEWS b/debian/NEWS index 1c9763d1a..f9dfc3770 100644 --- a/debian/NEWS +++ b/debian/NEWS @@ -110,10 +110,7 @@ ikiwiki (2.40) unstable; urgency=low in their setup files. To convert your wiki to the new syntax, ikiwiki provides a new script - ikiwiki-transition. It will convert preprocessor directives in - all files given on the command line. To convert an entire wiki: - - find wikidir/ -type f -name '*.mdwn' -print0 | xargs -0 ikiwiki-transition prefix_directives + ikiwiki-transition. Even with prefix_directives disabled, ikiwiki now allows an optional '!' prefix on preprocessor directives (but still requires a space). Thus, a diff --git a/doc/ikiwiki-transition.mdwn b/doc/ikiwiki-transition.mdwn index 3a3529454..18836d5f5 100644 --- a/doc/ikiwiki-transition.mdwn +++ b/doc/ikiwiki-transition.mdwn @@ -12,16 +12,15 @@ ikiwiki-transition type ... change in ikiwiki syntax. It also handles other transitions not involving wiki pages. -# prefix_directives file ... +# prefix_directives your.setup -The `prefix_directives` mode converts the specified ikiwiki page from -the old preprocessor directive syntax, requiring a space, to the new -syntax, prefixed by '!'. +The `prefix_directives` mode converts all pages from the old preprocessor +directive syntax, requiring a space, to the new syntax, prefixed by '!'. Preprocessor directives which already use the new syntax will remain unchanged. -Note that if the page contains wiki links with spaces, which some +Note that if a page contains wiki links with spaces, which some older versions of ikiwiki accepted, the prefix_directives transition will treat these as preprocessor directives and convert them. diff --git a/doc/plugins/write.mdwn b/doc/plugins/write.mdwn index cb7571289..8992fad01 100644 --- a/doc/plugins/write.mdwn +++ b/doc/plugins/write.mdwn @@ -486,7 +486,7 @@ use the following hashes, using a page name as the key: destination file. * `%pagesources` contains the name of the source file for each page. -Also, the %IkiWiki::version variable contains the version number for the +Also, the `%IkiWiki::version` variable contains the version number for the ikiwiki program. ### Library functions diff --git a/doc/tips/upgrade_to_3.0.mdwn b/doc/tips/upgrade_to_3.0.mdwn index 50c420103..3a515a61f 100644 --- a/doc/tips/upgrade_to_3.0.mdwn +++ b/doc/tips/upgrade_to_3.0.mdwn @@ -23,7 +23,7 @@ your wiki is upgraded to 3.0. You can move these preferences into the setup file by running `ikiwiki-transition moveprefs your.setup` -(Make sure you have converted the setuop file to the new format first.) +(Make sure you have converted the setup file to the new format first.) ## prefix directives @@ -37,15 +37,10 @@ following to your setup file: prefix_directives => 0, -But it's not hard to convert your wiki to the new syntax. You can use -[[ikiwiki-transition]]. It will convert preprocessor directives in all -files given on the command line. To convert an entire wiki: +To convert to the new syntax, run +`ikiwiki-transition prefix_directives your.setup` - find wikidir/ -type f -name '*.mdwn' -print0 | xargs -0 ikiwiki-transition prefix_directives - -Be sure to modify the find to list all pages in the wiki if you're using -other markup than markdown. You will probably want to commit the changes -when you're done too. +(And then commit the changes it makes to pages in your srcdir.) ## GlobLists diff --git a/ikiwiki-transition b/ikiwiki-transition index 9a5dd1362..b15d9f46b 100755 --- a/ikiwiki-transition +++ b/ikiwiki-transition @@ -1,4 +1,4 @@ -#!/usr/bin/perl -i +#!/usr/bin/perl use warnings; use strict; use IkiWiki; @@ -42,11 +42,33 @@ sub handle_directive { } sub prefix_directives { - $/=undef; # process whole files at once - - while (<>) { - s{$regex}{handle_directive($1, $2, $3, $4)}eg; - print; + my $setup=shift; + if (! defined $setup) { + usage(); + } + + require IkiWiki::Setup; + require IkiWiki::Plugin::aggregate; + + %config = IkiWiki::defaultconfig(); + IkiWiki::Setup::load($setup); + IkiWiki::loadplugins(); + IkiWiki::checkconfig(); + IkiWiki::loadindex(); + + if (! %pagesources) { + error "ikiwiki has not built this wiki yet, cannot transition"; + } + + foreach my $page (values %pagesources) { + next unless defined pagetype($page) && + -f $config{srcdir}."/".$page; + my $content=readfile($config{srcdir}."/".$page); + my $oldcontent=$content; + $content=~s{$regex}{handle_directive($1, $2, $3, $4)}eg; + if ($oldcontent ne $content) { + writefile($page, $config{srcdir}, $content); + } } } @@ -109,7 +131,7 @@ sub aggregateinternal { require IkiWiki::Plugin::aggregate; %config = IkiWiki::defaultconfig(); - IkiWiki::Setup::load(); + IkiWiki::Setup::load($setup); IkiWiki::checkconfig(); IkiWiki::Plugin::aggregate::migrate_to_internal(); @@ -196,12 +218,12 @@ sub moveprefs { sub usage { print STDERR "Usage: ikiwiki-transition type ...\n"; print STDERR "Currently supported transition subcommands:\n"; - print STDERR "\tprefix_directives file ...\n"; - print STDERR "\tindexdb srcdir\n"; - print STDERR "\thashpassword srcdir\n"; + print STDERR "\tprefix_directives setupfile ...\n"; print STDERR "\taggregateinternal setupfile\n"; print STDERR "\tsetupformat setupfile\n"; print STDERR "\tmoveprefs setupfile\n"; + print STDERR "\thashpassword srcdir\n"; + print STDERR "\tindexdb srcdir\n"; exit 1; } -- cgit v1.2.3 From 5f55ee0b783fb0a7b3b1dcb63ff280bad25af364 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 24 Dec 2008 19:55:43 -0500 Subject: more 3.0 docs, changelog --- debian/NEWS | 4 ++-- debian/changelog | 19 +++++++++++++++++-- doc/roadmap.mdwn | 2 +- 3 files changed, 20 insertions(+), 5 deletions(-) (limited to 'debian/NEWS') diff --git a/debian/NEWS b/debian/NEWS index f9dfc3770..6fe70c9e4 100644 --- a/debian/NEWS +++ b/debian/NEWS @@ -1,6 +1,6 @@ -ikiwiki (3.0) unstable; urgency=low +ikiwiki (3.00) unstable; urgency=low - The 3.0 release of ikiwiki changes several defaults and makes + The 3.0 release of ikiwiki changes several defaults and finishes some transitions. You will need to modify your wikis to work with ikiwiki 3.0. A document explaining the process is available in diff --git a/debian/changelog b/debian/changelog index 2c8931735..ff1c6aa5f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,9 +1,24 @@ -ikiwiki (2.72) UNRELEASED; urgency=low +ikiwiki (3.00) UNRELEASED; urgency=low + + * Remove support for GlobLists. + * Remove support for configuring allowed attachments, locked pages, + and banned users from the admin preferences page. These can only be + controlled via the setup file now. + * ikiwiki-transition moveprefs can be used to move the above + admin preferences into a setup file. + * prefix_directives and aggregate_internal are now turned on by default. + * ikiwiki-transition prefix_directives syntax changed + * googlecalendar: removed this deprecated plugin. Use embed instead. + * Version 3.00 of the plugin API. + + -- Joey Hess Wed, 24 Dec 2008 19:49:36 -0500 + +ikiwiki (2.72) unstable; urgency=low * Avoid comments in recentchanges being broken links (smcv) * Add deprecation warning for GlobLists, which will stop working in 3.0. - -- Joey Hess Mon, 22 Dec 2008 19:02:16 -0500 + -- Joey Hess Wed, 24 Dec 2008 19:49:32 -0500 ikiwiki (2.71) unstable; urgency=low diff --git a/doc/roadmap.mdwn b/doc/roadmap.mdwn index 0f8cb00fc..83c654b5e 100644 --- a/doc/roadmap.mdwn +++ b/doc/roadmap.mdwn @@ -51,10 +51,10 @@ The highlights of the changes in version 3.0 include: [[plugins/cutpaste]], [[plugins/hnb]], [[plugins/creole]], [[plugins/txt]], [[plugins/amazon_s3]], [[plugins/pinger]], [[plugins/pingee]], [[plugins/edittemplate]] +* The RecentChanges page is compiled statically, not generated from the CGI. * Support for additional revision control systems: [[rcs/bzr]], [[rcs/monotone]] * Support for [[tips/trusted_git_push]]. -* The RecentChanges page is compiled statically, not generated from the CGI. * A new version (3.00) of the plugin API, exporting additional commonly used functions from `IkiWiki.pm`. Nearly everything in ikiwiki is now a plugin, from WikiLinks to page editing, to RecentChanges. -- cgit v1.2.3