Commit Graph

10990 Commits (13b525d8eab91e197b8f356c3efb9719513c5983)

Author SHA1 Message Date
Joey Hess 7dd9b65db4 don't use pagespec_match_list
This should be more efficient than pagespec_match_list since it short-circuits
after the first match is found.

The other problem with using pagespec_match_list here is it may throw an
error if a bad or failing pagespec somehow got into the dependencies.
2009-08-25 17:54:36 -04:00
Joey Hess 2ef6b15973 changelog and news file, also make postinst rebuild on upgrade 2009-08-25 17:27:32 -04:00
Joey Hess b3d65aee18 Merge commit 'remotes/smcv/ready/remove-pagespec-merge' 2009-08-25 17:21:19 -04:00
Joey Hess 3548b6214f Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info 2009-08-25 17:18:39 -04:00
Simon McVittie aeea77e5c4 reply 2009-08-25 22:18:52 +01:00
Joey Hess 5bcdc39999 Revert "Allow add_depends to take an arrayref"
This reverts commit e4cd168ebe.

There was no benefit to this change.
2009-08-25 17:11:29 -04:00
Joey Hess fc445f6b70 Merge commit 'smcv/ready/optimize-depends' 2009-08-25 17:09:52 -04:00
Joey Hess 99626615ff Fix example blog's tags/life to not have a broken PageSpec. Closes: #543510 2009-08-25 13:39:33 -04:00
Joey Hess 134a25d163 better analysis of why the depends keep growing 2009-08-24 22:10:12 -04:00
Joey Hess 96936899da at this point I'm down to deciding which specific commits to merge and
which were dead ends
2009-08-24 21:54:22 -04:00
Simon McVittie 68fd245add Respond with benchmarks and an updated branch 2009-08-25 00:45:28 +01:00
Simon McVittie 848bb66c37 Indicate that pagespec_merge() is no longer needed (much rejoicing?) 2009-08-25 00:31:40 +01:00
Simon McVittie 1ea8580a5f Remove now-unused function pagespec_merge
Now that dependencies are a list of pagespecs with an implicit "or"
operation, there's no need to try to merge pagespecs under normal use.

ikiwiki-transition contains the only use of the function, so move
it there rather than deleting it entirely (it's used to concatenate all
admins' lists of locked pages).
2009-08-25 00:31:40 +01:00
Simon McVittie bc6e50a075 Mark "should optimise pagespecs" as done 2009-08-25 00:31:25 +01:00
Simon McVittie df8ab3406d use pagespec_match_list 2009-08-25 00:31:24 +01:00
Simon McVittie 275dd5c4ea IkiWiki::pagename: memoize results
This relies for its correctness on %config, %hooks and pagetype() not
changing.
2009-08-25 00:31:24 +01:00
Simon McVittie e4cd168ebe Allow add_depends to take an arrayref 2009-08-25 00:31:24 +01:00
Simon McVittie 7227c2debf Use a hash to de-duplicate dependencies 2009-08-25 00:31:16 +01:00
Simon McVittie 2cf26fd709 Don't bother to save {depends} to the index
As per Joey's review.
2009-08-24 23:18:19 +01:00
Simon McVittie b6fcb1cb0e calendar, inline, map: don't pre-join dependencies
The new dependency handling works better (eliminates more duplicates) if
dependencies are split up. On the same wiki mentioned in the previous
commit, this saves about a second (i.e. 4%) on the same test.
2009-08-24 23:18:16 +01:00
Simon McVittie fe4f176f72 Optimize the dependencies list
On a large wiki you can spend a lot of time reading through large lists
of dependencies to see whether files need to be rebuilt (album, with its
one-page-per-photo arrangement, suffers particularly badly from this).

The dependency list is currently a single pagespec, but it's not used like
a normal pagespec - in practice, it's a list of pagespecs joined with the
"or" operator.

Accordingly, change it to be stored as a list of pagespecs. On a wiki
with many tagged photo albums, this reduces the time to refresh after
`touch tags/*.mdwn` from about 31 to 25 seconds.

Getting the benefit of this change on an existing wiki requires a rebuild.
2009-08-24 23:18:10 +01:00
Joey Hess cc665380e3 move undownloadable item to discussion page 2009-08-24 15:57:10 -04:00
Joey Hess 6b97e8f0ee close as wontfix 2009-08-24 15:52:56 -04:00
Joey Hess 68b6926420 fixed via getsource plugin 2009-08-24 15:51:05 -04:00
Joey Hess 43db8269a0 response 2009-08-24 15:47:24 -04:00
Joey Hess 004d460d9c fix link 2009-08-24 14:09:58 -04:00
Joey Hess f5187ed0b5 clarify and add link 2009-08-24 14:08:20 -04:00
Joey Hess 05c1730064 Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info 2009-08-24 14:05:11 -04:00
http://schmonz.livejournal.com/ 8d504e6b3d response 2009-08-24 04:20:31 -04:00
http://www.cse.unsw.edu.au/~willu/ a27861c512 Comment on another possible solution to the use case. 2009-08-24 03:13:25 -04:00
Amitai Schlair 80ca685385 why I needed this, in case it's useful to someone else 2009-08-23 23:27:53 -04:00
Amitai Schlair 5da229aa51 Instead of passing the args through the wrapper so the CVS plugin
can evaluate them, check them in the wrapper right off the bat.
This doesn't prevent the deadlock in web commits that need to cvs
add directories, but I'm committing so Joey can take a look if he
wants.
2009-08-23 18:25:02 -04:00
Amitai Schlair 18a7b65094 response 2009-08-23 18:15:56 -04:00
http://schmonz.livejournal.com/ b43c250014 use a map instead 2009-08-23 17:54:38 -04:00
Joey Hess 156625ebac update config file snippet to use current git_wrapper name 2009-08-23 16:27:18 -04:00
Amitai Schlair 607534cecc Explain that command must run unattended, and lose the debug statement. 2009-08-23 15:43:18 -04:00
Amitai Schlair 0d5a8bc3f0 new rsync plugin 2009-08-23 15:41:29 -04:00
Amitai Schlair 844169c9b0 I'm not redefining any subs after all, don't prevent those warnings. 2009-08-23 15:21:39 -04:00
Amitai Schlair 3d6bc6e1b7 Add rsync plugin, though the only rsync-specific thing about it is the
assumption that uploading an entire site is efficient.
2009-08-23 15:18:41 -04:00
http://rtfb.myopenid.com/ 16b0e47548 Added closing parenthesis 2009-08-23 11:40:44 -04:00
Joey Hess 59527de767 uh oh 2009-08-22 14:29:18 -04:00
http://xn--andreaskrger-llb.myopenid.com/ e51f099ed1 2009-08-22 06:25:12 -04:00
http://xn--andreaskrger-llb.myopenid.com/ 78213cf838 2009-08-22 06:07:38 -04:00
Amitai Schlair 2acc71849d no more wrapper wrapper 2009-08-22 03:52:45 -04:00
Amitai Schlair 5bdcd4d57b Oops, use the more recent (and less brittle) directory test. 2009-08-22 02:22:36 -04:00
Amitai Schlair 8f15311597 No more wrapper wrapper. 2009-08-22 02:05:59 -04:00
Amitai Schlair 7849d675a3 response 2009-08-22 02:02:34 -04:00
Amitai Schlair 524de4db26 Pass along wrapper args to ikiwiki, then handle the "cvs add dir"
case with a getopt hook directly in my plugin. If the wrapper change
is safe, we won't need a wrapper wrapper.
2009-08-22 01:25:41 -04:00
Amitai Schlair 5c0e56d149 Put old unixauth plugin under git control. Needs some serious attention. 2009-08-21 22:51:12 -04:00
Joey Hess 73e562edc8 response 2009-08-21 16:09:26 -04:00