Sat, 03 Jun 2006

Contributed plugins 1.3 released

This is the first release of the contributed plugins pack for PyBlosxom 1.3.

Here's a list of changes between contributed plugins pack 1.2.2 and 1.3:

General

  • Added release dates to CHANGELOG.txt file.
  • Fixed all logging to use the new functions in PyBlosxom 1.3.

comments

  • Adjusted the behavior so that comments are shown if "showcomments=yes" is in the querystring or if the pyblosxom request is for a specific blog entry (as opposed to a category with only one blog entry in it). In doing this, I moved the code from cb_pathinfo to cb_prepare. (Thanks to Matt Weber for the idea!)
  • Removed the "showcomments=yes" from the comment-form html code.
  • Fixes to allow the comments plugin work with Python 2.2. (Thanks Nathan!)
  • Adjusted the documentation text to make it clearer that the bit about what properties each entry needs to have applies only to developers. Added __description__ and __url__ information.
  • Fixed issues with rendering. Also removed the "if this is rss, then don't do stuff".
  • Fixed an issue where if the config.py file doesn't have blog_encoding set, the comments plugin would die.
  • Fixed a security problem where the url and author fields were not getting sanitized. (Thanks Tung Wai Yip!)
  • Unfixed the url not getting sanitized--we already remove html from it and sanitize unnecessarily adds an <a href...> </a> to it.
  • Re-added the logging code that the comments plugin uses when things go sour.
  • Added SMTP-sanitization to the email field. (Thanks David!)
  • Changed the comment reject callback so that rejection plugins can return 0 (the comment is fine), 1 (the comment is rejected) or a tuple of 1 and the error message as a string.

    For example:
    • return 0
    • return 1
    • return (1, "This comment contains a blacklisted address.")
    (Thanks Steven!)
  • Changed the format of the body of the email that the comments plugin sends the blog owner to be more informational and readable. (Thanks Alec!)

pycategories

  • Fixed a cosmetic issue where an extra / was getting added to the root url
  • Fixed a problem where the finish template was incorrectly pulling from the category_finish config property. (Thanks Rob!)
  • Fixed a problem where the totals weren't being counted correctly. (Thanks Rob!)
  • Added "_urlencoded" versions of the category variables. (Thanks Petteri!)

rst entryparser

  • Added two configurable options to the rst entryparser. The first sets the starting level for rendered heading elements. The second enables and disables the promotion of a lone top-level section title to the document title. (Thanks Jan-Wijbrand!)
  • Fixed the rst entryparser to handle metadata. (Thanks to spanezz!)

xmlrpc_metaweblog

  • Fixed _getCategories so that it returns a list of dicts rather than a list of strings. This conforms to the metaWeblogApi (http://www.xmlrpc.com/metaWeblogApi) and fixes the getCategories request. (Thanks Rob!)

If you find problems with contributed plugins, visit this page on how to contact us. "Problems" could be bugs, feature-requests, or setup issues.

Find the contributed plugin pack here (contrib.1.2.2.tar.gz).

/will (willhelm at users dot sourceforge dot net)

Sat, 01 Apr 2006

Moved from CVS to Subversion

As of this point, we've successfully moved all our code from a CVS repository to a Subversion repository. I went through the web-site and updated it to reflect the move to Subversion. I'm in the process of re-organizing some things in the repository to make them easier to deal with.

If you see any problems, let me know. Thanks!

/will (willhelm at users dot sourceforge dot net)

Mon, 13 Feb 2006

PyBlosxom 1.3.2 released

Pertinent to users:

  1. Fixes a security issue where PATH_INFO can have multiple / at the beginning. It happens on some/many web-servers. I highly encourage you to upgrade to PyBlosxom 1.3.2 if you're using PyBlosxom 1.3 or 1.3.1. (Thanks FX!)

/will (willhelm at users dot sourceforge dot net)

Tue, 07 Feb 2006

PyBlosxom 1.3.1 released

Pertinent to users:

  1. The "num_entries" property now affects the home page and category index pages. It no longer affects archive index pages.

  2. Fixed the RSS 0.9.1 feed templates. It has the correct link url and shows the entry bodies. Thanks Norbert!

  3. The version string is correct.

  4. Added support for $body_escaped .

  5. Fixed the blog encoding on the RSS 2.0 feed so that it uses the value provided in the config.py $blog_encoding variable.

  6. Fixed the Atom 1.0 story flavour to use $body_escaped instead of <![CDATA[ $body ]]>

  7. Fixed a problem with static rendering where we'd render "/index.html" and "//index.html" if the user had entries in their root category.

Pertinent to developers:

  1. If you have plugins that use the logger functions in PyBlosxom 1.2, you need to update those plugins to use the new logger functions in PyBlosxom 1.3. Read through the API for details.

  2. Moved documentation in ReadMeForPlugins.py over to the manual.

Also, I did a lot more work on the manual. I folded in the documentation from ReadMeForPlugins, added a lot more "markers" for examples, added a static rendering sample configuration, and folded in some material from my blog.

/will (willhelm at users dot sourceforge dot net)

Wed, 11 Jan 2006

PyBlosxom 1.3 released

Pertinent to users:

  1. We added a "blog_rights" property. This holds a textual description of the rights you give to others who read your blog. Leaving this blank or not filling it in will affect the RSS 2.0 and ATOM 1.0 feeds.

  2. If you set "flavourdir" in your config.py file, you have to put your flavour files in that directory tree. If you don't set "flavourdir", then PyBlosxom expects to find your flavour files in your "datadir".

    The flavour overhaul is backwards compatible with previous PyBlosxom versions. So if you want to upgrade your blog, but don't want to move your flavour files to a new directory, DON'T set your "flavourdir" property.

  3. Moved the content that was in README to CHANGELOG.

  4. You can now organize the directory hierarchy of your blog by date. For example, you could create a category for each year and put posts for that year in that year (2003, 2004, 2005, ...). Previously URLs requesting "2003", "2004", ... would get parsed as dates and would pull blog entries by mtime and not by category.

  5. Logging works now. The following configuration properties are useful for determining whether events in PyBlosxom are logged and what will get logged:

    • "log_file" - the file that PyBlosxom events will be logged to--the web-server MUST be able to write to this file.
    • "log_level" - the level of events to write to the log. options are "critical", "error", "warning", "info", and "debug"
    • "log_filter" - the list of channels that should have messages logged. if you set the log_filter and omit "root", then app-level messages are not logged.

    It's likely you'll want to set log_file and log_level and that's it. Omit log_file and logging will fall back to stderr which usually gets logged to your web-server's error log.

Pertinent to developers and plugin developers:

Nothing that I know of. Everything should work pretty much the same.

Also, I've done a lot of work on the manual which can be found here.

Many thanks to all the people who've helped out over the last 8 months or so.

/will (willhelm at users dot sourceforge dot net)