summaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/aggregate.pm
AgeCommit message (Collapse)Author
2008-09-25aggregate: Avoid uninitialized value warnings for pages with no recorded ctime.Joey Hess
I saw this in the wild, apparently a page was not present on disk, but was in the aggregate db, and not marked as expired either. Not sure how that happened, but such pages should get marked as expired since they have an effectively zero ctime.
2008-09-17fix check for nonexistant contentJoey Hess
2008-09-17store ctime for use by expiry codeJoey Hess
The expiry code does need to make sure to sort in ctime order, even if expiring by count, so it expires the right ones.
2008-09-17aggregate: Support atom feeds with only a summary element, and no content ↵Joey Hess
elements.
2008-09-17aggregate: Allow expirecount to work on the first pass. (expireage still ↵Joey Hess
needs to wait for the pages to be rendered though)
2008-08-03add plugin safe/rebuild info (part 1 of 2)Joey Hess
too many plugins.. brain exploding..
2008-07-26remove default values in getsetupJoey Hess
They were a bit confusing, since they did not actually set the default, and example values are sufficient.
2008-07-26turn booleans into questionsJoey Hess
2008-07-25added getsetup hooks for all plugins up to recentchangesJoey Hess
2008-07-14fixesJoey Hess
2008-07-14use prune to delete rendered filesJoey Hess
This handles deleting empty directories too.
2008-07-15Fix aggregateinternal migration so it skips expired entries, and deletes outputSimon McVittie
2008-07-14Merge commit 'smcv/aggregateinternal' into aggregateinternalJoey Hess
Conflicts: IkiWiki/Plugin/aggregate.pm
2008-07-15Use _aggregated as extension for internalized aggregationSimon McVittie
2008-07-14changes to debug message printingJoey Hess
2008-07-14Add aggregateinternal mode to ikiwiki-transition.Simon McVittie
Usage: 1. Update all pagespecs that use aggregated pages to use internal() 2. ikiwiki-transition aggregateinternal $srcdir $htmlext (where $srcdir and $htmlext are the srcdir and htmlext options in your .setup file) 3. Add aggregateinternal to your .setup file 4. Rebuild the wiki
2008-07-14Merge commit 'origin/master' into aggregateinternalSimon McVittie
2008-07-13switch preprocess hooks to use error functionJoey Hess
2008-07-12Make aggregated items be internal pages if --aggregateinternal is used.Simon McVittie
This addresses <http://ikiwiki.info/todo/aggregate_to_internal_pages/> in a simple way. With this approach, a flag day is required, on which all users of aggregated pages start to inline them using the internal() pagespec; after that, the aggregateinternal option can safely be switched on in the setup file (and the old aggregated pages can be deleted by hand).
2008-06-21`template` option for aggregate.pm.Bernd Zeimetz
Allows to specify the template file which is used to create the html pages.
2008-05-28When calling decode_utf8 on known-problimatic content in aggregate, ↵Joey Hess
explicitly pass 0 (FB_DEFAULT) as the second parameter. Apparently perl 5.8 needs this to avoid crashing on malformed utf-8, despite its docs saying it is the default.
2008-05-05aggregate: Add support for web-based triggering of aggregation for people ↵Joey Hess
stuck on shared hosting without cron. (Sheesh.) Enabled via the `aggregate_webtrigger` configuration optiom.
2008-04-03aggregate: Correct a mistake in the code that dummy up a guid for feeds ↵Joey Hess
lacking one.
2008-03-14load HTML::Entities at topJoey Hess
Used in several subs, not all of which load it on demand, this seems simpler.
2008-03-12no need to use HTML::Entities, as it's loaded on demand by code belowJoey Hess
2008-02-03implement aggregate_locking designJoey Hess
Now aggregation will not lock the wiki. Any changes made during aggregaton are merged in with the changed state accumulated while aggregating. A separate lock file prevents multiple concurrent aggregators. Garbage collection of orphaned guids is much improved. loadstate() is only called once per process, so tricky support for reloading wiki state is not needed. (Tested fairly thuroughly.)
2008-02-03add aggregate locking functionsJoey Hess
2008-02-03* aggregate: Revert use of forking to not save state, that was not the rightJoey Hess
approach.
2008-02-02* aggregate: Forking a child broke the one state that mattered: ForcingJoey Hess
the aggregating page to be rebuilt. Fix this.
2008-01-29merged the recentchanges branchJoey Hess
misc fixes
2008-01-29add missing test to avoid uninitialised value when a page with metadata is ↵Joey Hess
removed
2008-01-26aggregate.pm: Replace Unicode apostrophe with ASCII to unbreak buildJosh Triplett
gettext choked on a Unicode apostrophe in the aggregate plugin, which appeared in a new error message in commit 4f872b563300e4a277cac3d7ea2a999bcf75d1ff. Replace it with an ASCII apostrophe.
2008-01-24* aggregate: Fork a child process to handle the aggregation. This simplifiesJoey Hess
the code, since that process can change internal state as needed, and it will automatically be cleaned up for the parent process, which proceeds to render the changes.
2008-01-16* aggregate: Don't let feeds set creation times for pages in the future.Joey Hess
2008-01-08* aggregate: Include copyright statements from rss feed as meta copyrightJoey Hess
directives. * aggregate: Yet another state saving fix (sigh). * aggregate: Add hack to support feeds with invalidly escaped html entities.
2008-01-05* aggregate: Only save state if it was already loaded.Joey Hess
2008-01-02round days old messageJoey Hess
2007-12-30I *think* that this comment is out of date.Joey Hess
2007-12-30* aggregate: Fix stupid mistake introduced when converting it to useJoey Hess
the needsbuild hook. This resulted in feeds not being removed when pages were updated, and probably other bugs. * aggregate: Avoid uninitialised value warning when removing a feed that has an expired guid.
2007-12-16loadstate needs to be called even if no pages are being builtJoey Hess
2007-12-16* meta: Drop support for "meta link", since supporting this for internalJoey Hess
links required meta to be run during scan, which complicated its data storage, since it had to clear data stored during the scan pass to avoid duplicating it during the normal preprocessing pass. * If you used "meta link", you should switch to either "meta openid" (for openid delegations), or tags (for internal, invisible links). I assume that nobody really used "meta link" for external, non-openid links, since the htmlscrubber ate those. (Tell me differently and I'll consider bringing back that support.) * meta: Improved data storage. * meta: Drop the hackish filter hook that was used to clear stored data before preprocessing, this hack was ugly, and broken (cf: liw's disappearing openids). * aggregate: Convert filter hook to a needsbuild hook.
2007-10-30improve use of seen hashJoey Hess
2007-10-30* Fix an aggregate plugin expiry bug. Over time, it's possible for the sameJoey Hess
page name to be expired and reused for several distinct guids. When this happened, the expiry code counted each past guid that had used that page name as a currently existing page, and thus expired too many pages.
2007-07-28* Various minor bug fixes for silly mistakes in the code, thanks to thejoey
various reviewers.
2007-07-25* Add a htmlext config option, this can be used to make ikiwiki generatejoey
html files with a different extension.
2007-05-21improve messagesjoey
2007-05-21Clear state after performing aggregation, since it could hypotheticallyjoey
change after the lock is dropped, and before the lock is regained by the build process. The state will now be reloaded by the build process.
2007-05-21* Change the aggregate plugin's locking strategy. Now it defers loading statejoey
until the wiki is building and already locked, unless it's aggregating. When aggregating, it does not wait for the lock if it cannot get it, and instead exits, to prevent aggregating processes from piling up.
2007-04-27* pagespec_match() has changed to take named parameters, to better allowjoey
for extended pagespecs. The old calling convention will still work for back-compat for now. * The calling convention for functions in the IkiWiki::PageSpec namespace has changed so they are passed named parameters. * Plugin interface version increased to 2.00 since I don't anticipate any more interface changes before 2.0.
2007-04-23improve messagejoey