== Blockers ==
* can no longer save UserPreferences: Warning: "Attempt to assign property of non-object"
  (partial revert to get in work again)
* AllPages give too many pages
* WantedPages give too many pages (from interwiki map)
  (to be tested in both Pear and ADODB)
* revert of Patch 3024787 by Sébastien Le Callonnec (caused an SQL syntax error)

== Others==
* Minimizer for JS/CSS
** no "make clean" in themes
** "make clean" does not work in themes with no Javascript
** in MonoBook, IEFixes.js cannot be minimized, yuicompressor-2.4.2 gives syntax errors
* plugin Video does not work (code reverted to r7204 to make it work again)

----

short-term TODO:
* rename should check existing subpages and rename these also.
* Sidebar: merge AVL theme (internal MonoBook derivate with customizable 
  box states) with Sidebar
* clarify issues with pagenames: "," breaks PageList. Escape with "~" or "\"?
  or htmlencode forbidden chars.
* fix Wikiwys with prettyurl, link labels and killing plugin args
* WatchList (?)

TODO:
architecture:
* flush <head> before <body> to parallelize css/js requests
* Optimization: try template_lite or try simple regex replacements as before.
* Evaluate some xml syntax for plugins (as in MediaWiki): 
  <IncludePages pages=<plugin-list BackLinks/> />
  <BackLink include_self=false />
4  And/or fix PLUGIN_MARKUP_MAP aliases which break the InlineParser.
* Fix postgresql stored procedures.
* Move serialized data from page_data / version_data to seperate SQL columns.
* WikiDB hooks. (?)
* Content expansion hooks in transformer. (SearchHighlight)
* Convert RecentChanges to PageList as source for format options. 
  Generic rss, rdf handling.
* embedd basic RDF in XHTML (dc, foaf, ...) for GRDDL. 
* Do Microformats automatically? It's a stupid hack so support it only optionally.
  ToDo: for Calendar, CalendarList, FoafPlugin

new:
* stabilize WYSIWYG converters
* HtmlParser and importer plugins (word, excel, html, interwiki)
* SemanticWeb link parser+db update, plugins: SemanticSearchAdvanced, SPARQL (php5 only)
  include or support rdfapi? or write our own Sparql parser? (see pOWL OntoWiki)
* ATOM (experimentally done), TrackBack, PingBack services (take it from DokuWiki)
* finish Blog theme
* lang: mapping
* fix ENABLE_MARKUP_DIVSPAN
* WikiUser/EMailConfirm (?)
* ImportMediaWiki, ImportRdf, ImportOwl, ExportMediaWiki, ExportRdf, ExportOwl
* WikiUser/OpenID (from DokuWiki) - Status::in_work
* more meta stuff: OpenSearch, format=dc (Dublin Core)
* support missing REST interfaces (optional): action=remove => DELETE,
  action=editpage and minor updates (rating,...) => PUT.
  with fallbacks to POST
* format=mm (FreeMind) for RecentChanges, SemanticWeb's and simple PageList's. 
  See http://wikkawiki.org/FreeMind. Maybe format=mmap for the commercial MindMap.
* Spellcheck AJAX backend (see DokuWiki)
* GeSHi Highlighter plugin

fixes:
* fix pagelist nopage unification (store just key as names?)
* pcre textsearch with multiple words: order-independency
* SQL textsearch with multiple words: AND 
  (the two new failing unit tests)
* fix textsearch optimize with "word -word -word"
* format=printable (?) for non js/dom

OLDER TODO's:
Maybe (probably defer):
* CalendarList/UnfoldSubpages/Blog changes should update links to the basepage.
* Warn other editors
* http://www.movabletype.org/docs/mttrackback.html, http://umsu.de/beta-blogger/
* http://www.hixie.ch/specs/pingback/pingback, http://umsu.de/beta-blogger/
* Other languages: check page for [de:pagename] pseudo-interwiki links?
* pagerank algo: HITS http://www2002.org/CDROM/refereed/643/node1.html
  FractalNavigation (pagetrail analysis)
* fix more wikilens libs and plugins, layout improvements (header, sidebar include)
* format=rdf and a new owl PageType (similar to InterWikiMap)
  to statically define predicates used by PhpWiki:SemanticWeb
  (semantically enriched links, like interwiki links).
* SqlResult paging (finished?)
* plugin\WikiAdminSetAclSimple, Chmod
* plugin\NewUserWelcomePage.php (some better template solution)
* plugin\SearchHighlight
* logfile stuff:
*   plugin\RecentReferrers
*   WikiAccessRestrictions
* SpamAssassinIntegration

already done lately:
* PgsrcTranslation slowness (update_locale?)
* overlarge session data
* handle empty DEFAULT_LANGUAGE: proper client detection
* fix glob errors
* display login page on "$action is disallowed on this wiki for user ..."
* remove "Invalid username" warning on "sign in as" button click
* themes/blog, BlogArchivesPlugin
* test WikiPluginCached support for image maps and svg, swf, eps, ...
  defer header logic
* don't print php notices and warnings as red errors.
  just green or grey
* rewrite OldTextFormattingRules, AnciennesR%E8glesDeFormatage
  for proper importing
* PageChangeNotification other actions also (rename, remove).
  better subject on create.
* do all unit tests:
  all langs, all db backends, all pages import and export
* javascript search&replace
* pdf button when an external html2pdf app is defined
  (enabled at PhpWikiDemo)
* enhanced WikiPluginCached (static, ondemand)
* added LdapSearchPlugin 
* more PageList options

2004-11-10 20:25:13 rurban
* optimize increaseHitCount, esp. for mysql.
* prepend dirs to the include_path (phpwiki_dir for faster searches)
* Pear_DB version logic (awful but needed)
* fix broken ADODB quote
* _extract_page_data simplification

2004-11-10 16:24:58 rurban
* requires newer Pear_DB (as the internal one): quote() uses now escapeSimple for strings
* ACCESS_LOG_SQL: fix cause request not yet initialized
* WikiDB: moved SQL specific methods upwards
* new Pear_DB quoting: same as ADODB and as newer Pear_DB.
  fixes all around: WikiGroup, WikiUserNew SQL methods, SQL logging

2004-11-09 18:10:22 rurban
* revert to the wikidb ref passing. there's no memory abuse there.
* use new wikidb->_cache->_id_cache[] instead of wikidb->_iwpcache, to effectively
  store page ids with getPageLinks (GleanDescription) of all existing pages, which 
  are also needed at the rendering for linkExistingWikiWord().
  pass options to pageiterator.
  use this cache also for _get_pageid()
  This saves about 8 SELECT count per page (num all pagelinks).
* fix passing of all page fields to the pageiterator.
* fix overlarge session data which got broken with the latest ACCESS_LOG_SQL changes

1.3.11 Goals:

    * fix more sf.net bugs and patches (90%)
    * fix LDAP with USER_AUTH_POLICY=old (100%)
    * ADODB lock and transaction fixes (50%)
    * some more theme beautification, new crao and nuke theme, 
      cut or split long sidebar links somehow (100%)
    * add some basic Recommender engine to enable rating recommendations, 
      fix metadata getAvg and test it. (100%)
    * fix metadata RateIt methods and RateIt usergroups, (100%)
    * rewrite WikiGroup to be current_user independent to be able 
      to ask for group membership of any user. (100%)
    * more action=upgrade (diffs, multi-page interface) (60%)
    * finish PdfOutput plugin and button (80%)
    * add editpage javascript toolbar (100%)
    * try the php-internal soap extension, test SOAP, fix GooglePlugin+AmazonPlugin (0%)
    * iniconfig helpers (Joby?) (0%)
    * improve more plugins caching (90%)

    * change remove_page in WikiDb API, so that RecentChanges displays it.
      (just purge all revisions?)
    * rename global $Theme to $WikiTheme (Gforge nameclash) (100%)

1.4.0 Goals:

    * fix WikiAdminSetAcl (least common ACL denominator) (100%)
    * enable ACL's in the mime dumps (100%)
    * force strict PagePermissions on all plugins, which require now 
      admin and some more administrative actions (90%)
    * complete full paging support (limit=, prev/next buttons in PageList) (95%)
      fix paging in MostPopular
    * fix possibly remaining WikiGroup problems (100%)
    * fix possibly remaining RateIt problems (50%)
    * finalize PdfOutput (0%)
      external works fine
    * finalize editpage javascript toolbar (80%)
      fix search/replace bug (100%)
    * finalize SOAP support (0%)
    * better utf-8 support (50%)
