1PLs Company - Payday Loans USA
 

<< Back to Steve's mod_virgule page

Google Summer of Code

See the mod_virgule project page for Google SoC 2007 ideas

mod_virgule ToDo list

There have been a lot of suggestions, feature requests, and bug reports lately. To try to keep track of them, I'm consolidating them all on this page. I've divided them into two categories: maintenance (bugs, performance, etc) and features.

I think our main goal should be to move mod_virgule toward being a general-purpose, high-performance, Web 2.0 enabled, community website manager for Apache. There are still several outstanding items that prevent the average user from simply downloading and installing mod_virgule on a modern Linux distro without modifying the C code. These items are marked with an asterisk (*).

If there's a feature you'd like to see added to mod_virgule or a bug you think needs to be fixed, let me know and I'll add it to the list.

mod_virgule ToDo list - updated 2008 April 15

Crossed out items have been completed in the current version

Bugs and other maintenance

  • Get source into a subversion archive
  • * Load config at initialization rather than on every hit
  • * Need paging mechanism for person page
  • segfaults caused by function name collisions
  • Random file loss
  • UTF-8 encoding segfaults in trust metric
  • Hits on non-existent user accounts should return 404 so search engines will stop asking
  • Hits on non-existent diary entries should return 404 so search engines will stop asking
  • Hits on non-existent project entries should return 404 so search engines will stop asking
  • Update all XML templates to raw="yes" page mode
  • Tmetric cache should be loaded once per Apache child rather than once per hit
  • * Make "Suggest a story" use admin email from config.xml
  • * Make "Forgot password" from: use admin email from config.xml
  • Forgot password form should record IP and info of requester
  • Blog edit post function should preserve feed tags in syndicated entries
  • Prevent link spam on person pages (anchors removed)
  • Prevent link spam in blog pages by observers (no follows added)
  • /tmetric returns 1+MB that cron sends to /dev/null
  • Diary ranking causes heavy performance hit
  • Clean up cruft in tmetric.c virgule_tmetric_get()
  • rating.c rating_crank_all() should use tmetric cache
  • Update readme: /css dir needs to be in VirgulePass directive
  • Aggregator should store unique IDs for feed items
  • Time storage and manipulation needs to use a normalized format
  • Normalize timestamps generated for RSS feeds to UTC (virgule_diary_rss_export and rss_render_from_xml)
  • Add a time/date stamp to certifications
  • Group /tmetric/, /foo.html, and other admin pages into /admin/ path
  • Nightly account maintenance to repair or report cert anomolies in profiles
  • Entity handling of URLs is broken for diary.xml links (e.g. /person/schoen/diary.xml)
  • CSS clears needed to prevent floated image overlaps in recentlog
  • "extra junk" warning should be replaced with proper 404 pages
  • profile FOAF link should not be included on profiles of untrusted users
  • profile RSS link should not be included on profiles of untrusted users
  • autodiscovery rel links for FOAF should not be included for untrusted users
  • autodiscovery rel links for blog should not be included for untrusted users
  • local blog feed URL should return a 404 for untrusted users
  • profile FOAF URL should return a 404 for untrusted users
  • autodiscovery rel links for blog should not be included for users with no posts
  • local blog feed URL should return a 404 for blog with no posts
  • Signup process should not allow password = username
  • mod_virgule segfaults (down to about 1 per 8k hits in my version)
  • A distinct file area is needed for page templates to simplify theming
  • segfaults caused by memory allocation issues (mostly fixed in my version)
  • Update blog post HTML; include user-specific classes like planet sites
  • When multiple sitemap tags per page are used, only one is rendered
  • clean diary rankings for deleted users from files in /eigen/local
  • Need nofollow relations on all observer links
  • FOAF should not include mbox_sha1sum when there's no email address
  • Determine if virgule_iso_to_time_t can be replaced by virgule_virgule_to_time_t
  • Need safer, more complete handling of POSTs (see code in mod_perl)
  • Pages should be served as UTF-8 (partially fixed in my version)
  • Forms need to require UTF-8 data (partially fixed in my version)
  • Forms generated from schemas lack input type fields. Fixing this may be non-trivial
  • Some of the nice_ functions corrupt UTF-8 encoded strings
  • Improve HTML sanitisation
  • Trust metric processing impacts site performance (improved in my version)
  • Accidental double posting is possible in article replies (maybe fixed now?)
  • Combine redundent code used in various recent* functions?
  • Update readme: document URLs (e.g. /foo.html, /tmetric/, etc.)
  • Change all xmlDoc->xmlRootNode to xmlDocGetRootElement(xmlDoc)
  • Check all usages of xmlNewChild() vs xmlNewTextChild()
  • virgule_add_recent max values should be configurable
  • Normalize code comments to doxygen format
  • Wrap="hard" in blog textarea makes posting preformatted code difficult
  • Replace haphazard URL usage with a consistent scheme throughout site
  • Login should autorefresh to the account page (or someplace)
  • GPL/Apache License issues (need exception clause like mod_spin or switch to GPL V3)
  • Rewrite comment/reply code to allow more flexible use (e.g. on blog posts or profiles)
  • Rewrite of project code; needs to be scalable, searchable, configurable
  • virgule_acct_dbkey needs specifiable subpool to prevent memory leaks
  • use standard APR hash functions instead of hashtable.c?
  • virgule_diary_[store|update]_feed_item() should purge nasty HTML (ads, scripts, etc.)
  • autodiscovery rel links for aggregated blogs should point to original blog feed
  • local blog feed link should return a 404 for aggregated blogs
  • add alternate code for builds where APR_HAS_THREADS 0 (see mod_spin.c for example)
  • The hard-coded data schemas should be replaced with configurable XML files
  • Stanardize the blog permalink character (currently »)
  • Non-standard user names should be properly escaped or quoted in graph.dot output

Features requested

  • * Apache 2.x support
  • * libxml2 support
  • * Replace hard-coded article pages with user-configurable XML template
  • * Add site admin email to config.xml
  • * Replace hard-coded diary pages with user-configurable XML template
  • * Replace hard-coded person pages with user-configurable XML template
  • * Replace hard-coded project pages with user-configurable XML template
  • * Replace hard-coded page header with user-configurable XML template
  • Allow users to populate their diary FROM an RSS/Atom feed
  • Add RSS parser
  • Add RDF Site Summary parser
  • Add Atom parser?
  • Add a general purpose file/rss include tag
  • Add database delete functions
  • Need a 'delete user account' function
  • Add account creation date to user profiles
  • Move all RSS feeds to v2.0
  • Add FOAF file to profile pages
  • Add some user/cert stats
  • Articles should editable by author for limited time
  • Add social bookmarking links to articles
  • Add configurable list of story editors (needed for robots.net)
  • Generalize social bookmarking code for use in blogs, profiles, and projects
  • Visual indication of new certs on user profile
  • List of article postings in user profile
  • Add static URLs for blog entries
  • Add trust ratings to FOAF using Group Class
  • Add user profile field(s) for specifying an RDF ID (re:TimBL)
  • Add owl:sameAs tag to FOAF based on alternate RDF ID(s)
  • Add OpenID client/server support
  • Generate Atom feeds
  • Add "user" relationship for projects
  • Consider "former developer" (or "former" modifier) relationship for projects
  • Generate DOAP RDF files for native projects
  • Sync remotely hosted projects to remote DOAP files when available
  • Add iCal parser
  • Add general event ping framework
  • Add technorati ping for article page and blogs
  • Add google ping
  • Add PingtheSemanticWeb.com ping for FOAF, DOAP, and blogs
  • Add a delete diary entry feature for users
  • Add a story queue where editors can pre-post stories
  • Add an XML tag to render a nice table of cert levels and meanings
  • Add a more/older link to recentlog (see planet lisp for ideas)
  • Add code to allow use of SQL database
  • Add comment/reply link to blog postings
  • Users should be able to change their password
  • Users should be able to change their username
  • Users should be able to configure their time zone
  • Field for GPG public key on user account page
  • Field for GPG signature (needed to sign FOAF file)
  • Fields for IM IDs on account profile
  • Fields for GEO location and map widget on profile
  • Add RSS feed for recentlog
  • Replies should editable by author for limited time
  • Add tags for article and blog postings (xFolk? rel-tag? wordnet/wordnet-rdf? other standards?)
  • Add support for machine tags (e.g. geo:) (see machinetags.org)
  • Email verification for signup process?
  • Trusted users should be allowed to post anonymous replies
  • RDF dump of user data (see ESW Wiki for examples)
  • Who's online box (should be easy, we have the data already)
  • Article/Blog import/export using Open Document Format (ODT) XML format?
  • Logging of XML-RPC requests
  • Reveal email addresses to certified users?
  • Need file-based cache for infrequently updated pages
  • Make aggregator smart enough not to ignore unchanged feeds
  • Add an aggregator error reporting mechanism for broken feeds
  • Add tag to render acceptable HTML, remove hard-coded calls
  • Date index of past blog entries on user profile pages
  • Tag clouds for user profile pages
  • Add active user definition to config file
  • Add active user stat to user stats
  • Archive user stats
  • Global maintenance flag that displays a "down for maint" page
  • Look for ways of converting syndicated relative URLs to absolute

Advogato-specific tasks


Copyright © 2008 by R. Steven Rainwater.