Commit Graph

1584 Commits (d2c91d1a6b17fcf2c1c19d4c80d7147eef2b35fa)

Author SHA1 Message Date
Joey Hess 3bb00d142a Optimize away most expensive file prune calls, when refreshing
Benchmarking refresh of a a wiki with 25 thousand pages showed
file_pruned() using most of the time. But, when refreshing, ikiwiki already
knows about nearly all the files. So we can skip calling file_pruned() for
those it knows about. While tricky to do, this sped up a refresh (that
otherwise does no work) by 10-50%.
2009-10-08 20:27:56 -04:00
Joey Hess 5e236f5d25 add use_pagespec and deptype functions 2009-10-08 17:53:20 -04:00
Joey Hess 4002d7c1a4 add influence info to match_*
Also update docs, test suite.
2009-10-07 20:31:13 -04:00
Joey Hess a5d825f286 linkmap: does need presence deps
Otherwise, removal of a page with no links will not be noticed,
since no links will change.
2009-10-06 19:28:52 -04:00
Joey Hess af85f62d6f linkmap: Use a combination of presence and link dependencies.
This makes the map be regenerated much less frequently, so larger maps are
more practical to use now.
2009-10-06 17:47:10 -04:00
Joey Hess a4df28f42a add rebuild handing 2009-10-05 16:51:33 -04:00
Joey Hess f1864a64ee typo 2009-10-05 16:48:15 -04:00
Joey Hess c21f9e7093 pagestats: Use a combination of precense and link dependencies.
This makes it more efficient.

It also fixes the same bug that I fixed in orphans recently,
that only changes to the set of displayed pages were considered (or amoung),
which missed changes to links on other pages to those.

Probably this bug was never noticed because pagestats is most often put
on a blog type page, which gets updated anyway when posts change,
and thus the tag cloud was updated.
2009-10-05 15:44:26 -04:00
Joey Hess c869398e2b typo 2009-10-05 15:43:37 -04:00
Joey Hess 7123178732 oprhans: Use a combination of precense and link dependencies.
This makes it more efficient.

It also fixes a longstanding bug, where if only a small set of pages were
considered by orphans, changes to links on other pages failed to cause an
update.
2009-10-05 15:14:18 -04:00
Joey Hess 846026b20b update 2009-10-05 15:08:57 -04:00
Joey Hess d0f116478c update 2009-10-04 20:34:43 -04:00
Joey Hess b4c8cc9072 update 2009-10-04 17:38:10 -04:00
Joey Hess 7982c3c177 postsparkline and progress: also contentless dependencies 2009-10-04 16:16:50 -04:00
Joey Hess a6689f9c7a calendar: all dependencies are contentless 2009-10-04 16:05:41 -04:00
Joey Hess e529c561f5 inline: Use a contentless dependency in quick mode. 2009-10-04 16:03:01 -04:00
Joey Hess 2fbfcd16e6 map: Use a contentless dependency unless show= is specified.
This makes simple maps efficient enough that they can be used on sidebars!
2009-10-04 15:46:23 -04:00
Joey Hess 49b71d0615 update 2009-10-03 15:38:18 -04:00
Joey Hess ffa73790b5 Fix a bug that could lead to duplicate links being recorded for tags.
Here I was bitten by perl's aliasing of foreach variables
to the loop array contents, and match_link accidentially changed
the contents of %links.

In Jon's testcase, a tag added an absolute link, which was
made relative by the above bug, and then the link was added
again in preprocess, and turned into a duplicate.
2009-10-03 14:16:28 -04:00
Joey Hess 0c6648f02c mirrorlist: Display nothing if list is empty. 2009-10-02 12:37:53 -04:00
Joey Hess ac8ecdcf68 Support RPC::XML 0.69's incompatable object instantiation method. 2009-09-29 13:35:30 -04:00
Joey Hess 3525a6b7f2 toggle, relativedate: Support templates that add attributes to the body tag. 2009-09-28 16:21:03 -04:00
Joey Hess 7cb620d0e8 img: Fix dependency code for full size images.
I had assumed that an image shown full size did not need add_depends, since
a change would not need a change to the displaying page.

But this is not true if the image is modified and its size changes. Then
the page needs to update its img tag to reflect the current size.
2009-09-27 20:57:27 -04:00
Joey Hess f42215cb65 img: Correct bug in image size calculation code.
If an image was resized smaller, with width and height specified to values
that did not fit its aspect ratio, the image tag with/height were not
adjusted to the actual size imagemagick chooses.

This was broken by 03449610d6.

To fix it right, it unfortunatly needs to always read the src image now,
in order to determine if the image is being displayed larger, or resized
smaller. When resized smaller, it then always uses the size of the
thumbnail, while for larger it calculates the size.

(Only way to get rid of this sometimes extra image read would be to change
it to not allow displaying images larger.)
2009-09-27 20:53:02 -04:00
Joey Hess 2acaa15830 parentlinks: Add has_parentlinks template parameter to allow styling the toplevel index differently etc. 2009-09-27 18:29:16 -04:00
Joey Hess 095a385c99 releasing version 3.14159265 2009-09-24 19:04:42 -04:00
Joey Hess 01a9a12bbf auto.setup, auto-blog.setup: Fix sanitization of entered wikiname. Closes: #547378 2009-09-23 13:46:32 -04:00
Joey Hess 87c3370e04 note french is complete 2009-09-13 19:33:19 -04:00
Joey Hess 65bf8a278f typo 2009-09-11 18:44:53 -04:00
Joey Hess 324c1fae33 changelog and license 2009-09-11 18:32:44 -04:00
Joey Hess 245147312d Updated Czech translation from Miroslav Kure. Closes: #546223 2009-09-11 14:46:03 -04:00
Joey Hess 06c712a7f0 update 2009-09-10 17:07:21 -04:00
Joey Hess 3b8673dbb2 add libfile-chdir-perl to build depends
This is needed for the cvs plugin to load, which is needed for the setup
file to include config stanzas for that plugin.
2009-09-10 16:42:35 -04:00
Joey Hess f2f3fe8a18 changelog 2009-09-10 16:34:45 -04:00
Joey Hess 3ebd4e0b45 Add genwrapper hook, that can be used to add code into the C wrapper. 2009-09-10 14:04:46 -04:00
Joey Hess 98ed7cb1d7 Fix parsing web commits from ipv6 addresses.
I weakended the regexp, so this matches ipv6 addresses too. It does not
ensure that the address is valid, but that should not matter here.

Note that addresses ending in "::" are not matched, so eg, the unspecified
address will not match -- but should never appear here anyway.
2009-09-10 13:32:13 -04:00
Joey Hess 2a99ebf276 underlay: Also allow configuring additional directories to search for template files in. 2009-09-08 17:27:37 -04:00
Joey Hess 55474f44d9 Expand banned_users; it can now include PageSpecs, which allows banning by IP address. 2009-09-08 15:17:39 -04:00
Joey Hess 81b9321e61 Add French basewiki translation from the Debian French l10n team, including Philippe Batailler, Alexandre Dupas, and Steve Petruzzello. 2009-09-02 15:04:27 -04:00
Joey Hess 8aeac3b666 CVE 2009-08-30 17:48:14 -04:00
Joey Hess 7823eb7c93 finalize release 2009-08-30 15:29:08 -04:00
Josh Triplett 9f75d3b1f3 teximg: Make TeX handle preventing unsafe things; remove insufficient blacklist
TeX has configuration options that prevent unsafe things like shell
escapes and insecure file reads/writes.  Turn all of them on.

teximg's regex-based blacklist does not suffice.  For instance:

[[!teximg code="""
\catcode`\%=0
%input{/etc/passwd}
"""]]

Remove the blacklist, since the TeX configuration options seal off the
underlying mechanisms more safely, and the blacklist blocks other TeX
commands that can prove useful.
2009-08-28 23:18:07 -07:00
Joey Hess 03449610d6 img: Don't generate new verison of image if it is scaled to be larger in either dimension.
Although imagemagick handles even really large sizes sanely, using a page
file, doing so would just waste time and disk space, since the browser
can be told to resize it larger.
2009-08-28 23:31:53 -04:00
Joey Hess 4e3a2a370c changelpg 2009-08-28 15:11:21 -04:00
Joey Hess cc6000f0b9 both changes picked 2009-08-28 07:34:09 -04:00
Joey Hess 29e1c8e033 Czech basewiki enabled 2009-08-28 06:13:47 -04:00
Joey Hess 0c1a71896d htmltidy: Return an error message if tidy fails. Closes: #543722
On second^Wthird^Wfourth thought, putting the message into the page seems
better than using stderr.
2009-08-27 16:27:57 -04:00
Joey Hess 18e4fa6539 fix merged 2009-08-27 15:54:44 -04:00
Joey Hess f8ad1bfec4 fix cherry-picked 2009-08-27 15:50:43 -04:00
Joey Hess 4e70f2f0d2 htmltidy: Print a warning message if tidy fails. Closes: #543722 2009-08-26 13:24:51 -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 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 df9d39698f Italian program translation from Luca Bruno. 2009-08-20 12:29:19 -04:00
Joey Hess 9b799ccc85 po: Fixed to run rcs_add ralative to srcdir. 2009-08-19 14:05:59 -04:00
Joey Hess 65bf1dab5f Updated French program translation from Philippe Batailler. Closes: #542036 2009-08-17 12:26:51 -04:00
Joey Hess e03d5c6a7c Remove deprecated ikiwiki/blog and ikiwiki/preprocessordirective pages from the basewiki. 2009-08-16 14:32:10 -04:00
Joey Hess 5d8bfe9f37 changelog 2009-08-16 13:49:56 -04:00
Joey Hess 54c2e05ccf Add basic styling of po plugin's languages list. 2009-08-15 16:33:54 -04:00
Joey Hess 04760df381 Allow building ikiwiki on systems w/o po4a -- building of the translated underlays will be skipped in this case. 2009-08-15 14:10:39 -04:00
Joey Hess c258160725 review of ready branch 2009-08-15 13:59:04 -04:00
Joey Hess 82bb3af579 optimise brokenlinks by gathering the data when calculating backlinks
During backlink calulation, all links are examined and broken links can
be detected for free, so store a list of broken links and have brokenlinks
use it.

Exposing the %brokenlinks structure is a bit ugly, but the speedup seems
worth it: Around 1 second for wikis the size of the doc wiki that use
brokenlinks.
2009-08-14 01:11:53 -04:00
Joey Hess 830c9e59b2 Add discussionpage configuration setting
By adding this setting, we get both more configurability, and a minor
optimisation too, since gettext does not need to be called continually
to get the Discussion value.
2009-08-13 21:41:33 -04:00
Joey Hess 6f4e9f38b8 version po4a build-dep to 0.34
0.35 is much better, but 0.34 is the minimum version that will work
2009-08-12 16:15:59 -04:00
Joey Hess 04014e4775 inline: Avoid use of my $_ as it fails with older perls. Closes: #541215 2009-08-12 12:33:02 -04:00
Joey Hess b4d7dfcbe1 po: Detect if nowrapi18n can't be passed to po4a, and warn about the old version, but continue. Closes: #541205 2009-08-12 12:26:07 -04:00
Joey Hess fc5c5df60e releasing version 3.141592 2009-08-11 16:24:28 -04:00
Joey Hess 8364adcfb7 releasing version 3.15 2009-08-11 15:19:19 -04:00
Joey Hess c0c1e05dab finish merging getsource 2009-08-08 12:32:39 -04:00
Joey Hess 79312b2754 Merge commit 'smcv/ready/getsource'
Conflicts:
	debian/changelog
2009-08-08 12:22:10 -04:00
Simon McVittie f5322fa912 Mark todo/source_link as done 2009-08-01 12:31:53 +01:00
Joey Hess 3710b1710e inline: Add pagenames parameter that can be used to list a set of pages to inline, in a specific order, without using a PageSpec. (smcv) 2009-07-31 10:30:36 +02:00
Joey Hess d24f8b5c37 map: Avoid emitting an unclosed ul element if the map is empty. (harishcm) 2009-07-31 10:25:23 +02:00
Joey Hess 9168dc2e28 bug closures and changelog since smcv's ready branch didn't include them
Which would really make my merging rock if they did in the future.</hint>
2009-07-31 10:16:18 +02:00
Joey Hess 9d96250fc5 img: Fix adding of dependency from page to the image.
This was impressively broken. add_depends was being called with params
backwards, and on parameter was set to the name of the generated
file, which isn't in the source.

Now updates to images will update the page that contains them, thus
updating them. This is unncessary for fullsize images, so skipped.
2009-07-27 22:22:26 +02:00
Joey Hess 9122c6ce5d add po4a to build-deps 2009-07-23 15:28:26 +02:00
Joey Hess e61d04463e update 2009-07-20 08:09:27 +02:00
Joey Hess 87486a1699 po/underlay/* should be BSD licensed, like the rest of the underlays 2009-07-20 07:37:06 +02:00
Joey Hess a7b813182d build translated underlays for use with non-English wikis 2009-07-20 07:20:13 +02:00
Joey Hess d00211524b unreleased 2009-07-19 14:56:10 +02:00
Joey Hess f08bd11f42 rename 2009-07-19 14:54:15 +02:00
Joey Hess ec965fc92c Merge branch 'master' into po
Conflicts:
	debian/changelog
2009-07-19 12:36:01 +02:00
Joey Hess 8f971999c6 releasing version 3.14159 2009-07-16 14:44:17 -04:00
Joey Hess b9f4708f68 Move OpenID pretty-printing from openid plugin to core (smcv) 2009-07-11 15:56:02 -04:00
Joey Hess b1b7a2100f img: Pass the align parameter through to the generated img tag. 2009-07-11 00:33:19 -04:00
Joey Hess 0c6a47e9e4 svn: Fix rcs_rename to properly scope call to dirname. 2009-07-08 13:13:23 -04:00
Joey Hess feae031a80 highlight: Fix utf-8 encoding bug. Closes: #535028 2009-07-07 16:31:18 -04:00
Simon McVittie ea4686a565 Update IkiWiki::openiduser to work with Net::OpenID 2.x
openiduser previously used a constructor that no longer works in 2.x.
However, all we actually want is the (undocumented) DisplayOfURL function
that is invoked by the display method, so try to use that.
(cherry picked from commit c3dd0ff5c7c10743107f203a5b456fdcd1b171df)
2009-07-07 13:38:04 -04:00
Joey Hess 7cba8bd375 Updated French debconf templates translation. Closes: #535103 2009-06-29 14:51:49 -04:00
Joey Hess d25c4acfdb img: Fix extra double quote with alt text. (smcv) 2009-06-16 15:09:49 -04:00
Joey Hess 6ead2573e9 releasing version 3.141 2009-06-13 14:40:36 -04:00
Joey Hess 9151346687 aggregate: Avoid resetting ctime when an item md5 changes.
Besides being wrong to do, this could lead to the wrong item
being expired, as follows: If B is added and at the same time
A is changed, then A's ctime may be set to the current time,
while B's is set to its creation time. Thus the new item, A,
is incorrectly removed as older.

(This interacted especially badly with the bug fixed by
90b4d079605b72bb50d1da41402d994960e10937.)
2009-06-12 19:31:23 -04:00
Joey Hess 90b4d07960 aggregate: Fix storing of changed md5.
The aggregate state merge code neglected to merge changes to the md5
field of an item. Therefore, if an item's md5 changed after initial
aggregation, it would be updated, and rewritten, each time thereafter.
This was wasteful and indirectly led to some expire problems.
2009-06-12 19:24:47 -04:00
Joey Hess dd15cc426f Updated French translation. Closes: #532654 2009-06-10 13:58:59 -04:00
Joey Hess 48a5f9f2d8 Disable the Preferences link if no plugin with an auth hook is enabled. 2009-06-09 15:39:00 -04:00
Joey Hess bf55a7fbb1 meta: Add openid delegate parameter to allow delegating only openid or openid2. 2009-06-08 21:40:06 -04:00
Joey Hess 5418385336 Optimise use of gettext, and avoid ugly warnings if Locale::gettext is not available.
The test suite was emitting a lot of ugly gettext warnings;
setting LC_ALL didn't solve the problem for all locale setups
(since ikiwiki remaps it to LANG, and ikiwiki didn't know about
the C locale).

People also seem generally annoyed by the messages when
Locale::Gettext is not installed, and I suspect will be
generally happier if it just silently doesn't localize.

The optimisation came about when I noticed that the gettext
sub was doing rather a lot of work each call just to see
if localisation is needed. We can avoid that work by caching,
and the best thing to cache is a version of the gettext sub
that does exactly the right thing.

This was slightly complicated by the locale setting,
which might need to override the original locale (or lack
thereof) after gettext has been called. So it needs to invalidate
the cache in that case. It used to do it via a global variable,
which I am happy to have also gotten rid of.
2009-06-08 18:33:54 -04:00
intrigeri 86edd73d16 Merge commit 'upstream/master' into pub/po
Conflicts:

	debian/changelog
	debian/control

Signed-off-by: intrigeri <intrigeri@boum.org>
2009-06-06 14:03:40 +02:00
Joey Hess e40d2a6b2b goto: Support being passed a page title that is not a valid page name, to support several cases including mercurial's long user names on the RecentChanges page, and urls with spaces being handled by the 404 plugin. 2009-06-06 02:36:40 -04:00
Joey Hess e8d8386e52 pagecount: Fix broken optimisation for * pagespec. 2009-06-05 18:04:39 -04:00
Joey Hess 0293ae8e3d Setup automator: Check that each plugin added to the generated setup file can be loaded and that its config is ok. If a plugin fails for any reason, disable it in the generated file. Closes: 532001 2009-06-05 16:58:06 -04:00