Skip to content
commandline edited this page Sep 13, 2010 · 25 revisions

0.23.3 – critical fix

There was a serious regression in the new glob support that I completely missed. The symptom was that flashbake would consider paths that were valid in 0.22 to be unknown. Some attempted to fix this on their own by changing the hot files in .flashbake to full, absolute paths. While this appeared to work, it interfered with the git commit, so flashbake would fail to commit without giving any sign of a problem.

The fix enhances the sanity checks to catch any hot files that are mistakenly pointing outside of the project directory. So as not to interfere with people’s attempts to fix this problem on their own, flashbake also now should handle both full file paths and paths relative to the project directory correctly.

Thanks to Cory, Ben and a few others whose emails I cannot locate in my email, at the moment.

0.23.2

3/9/2009 – bug fixes, mostly to get UpTime plugin running again

0.23.1

3/5/2009 – compatibility fix for Python 2.4, added last played to Banshee plugin

0.23

3/5/2009 – glob support, new plugins, bug fixes

Simple globs are now supported. ? matches any single character in a filename, * matches any number of characters. [] can be used for sets of characters, like [0-9] will match all digits, zero through nine. Glob support will break Python 2.4 compatibility, do not upgrade (yet) if you are using anything older than 2.5. I’ll release a patch for 2.4 and earlier “soon”.

Thanks to Ben Snider, there are now stock plugins for Twitter and Identica in the flashbake.plugins.microblog module. There is also a new plugin specifically for Banshee, the music player, in flashbake.plugins.music. I’ll add other music players as I have time. The Plugins page has been updated.

There is now support for a shared control file, ~/.flashbake/config. This file, if present, will get read first, then the project specific version. There are a few gotchas, however, to this central file. If you name a plugin both in the central file and the project file, it will get run twice. Plugin options will use the project file value if they are duplicated (I think). You can put hot files into the central file but they will be evaulated against the project directory so probably won’t be very useful if you have more than one project. You still must have a project specifiec .flashbake file, anyway.

garthrk also contributed some fixes, in particular for a nasty infinite loop problem on OS X. I have fixed some other some issues too, in particular making debug messages clearer.

0.22.2

2/27/2009 – Bug fix

Clearer error when the user has not run “git init” in the project directory. Also fixed a gaffe in setup.py so that setuptools now installs the dependencies.

0.22.1

2/27/2009 – Bug fix

Fixed the unknown plugin error so it correctly tells you the value with which it had trouble.

0.22

2/26/2009 – Plugins

This version completes the move to the setuptools module for installation which should simplify the install, removing the need to install the dependencies by hand. See the Installation page for the latest info.

Plugin support is ready for plugin consumption. Plugins should extend flashbake.plugins.AbstractMessagePlugin, see the Plugins page for more details on the protocol. The names and options for the stock plugins have also changed, see the Plugin page for these details too.

The feed plugin should now work with Atom as well as RSS. It uses the feedparser module so should work on many more feeds than the original code did.

This version adds support for a shared control file, ~.flashbake/config. If present, this file will be read and then the project’s .flashbake file will be read and added to it.

This version fixes an issue with running under Python 2.4.

0.21

2/23/2009 – Re-license

See the License page for the reasoning. The only thing that is different in this version is the license. This is to help make it clearer which perpetual license applies to which versions.

0.20

2/21/2009 – Many fixes.

  • The control file is now named “.flashbake”. “.control” will still work but is deprecated. Eventually, I will drop support for “.control”.
  • Stock plugins, see the Plugins page for information on how to configure. If you do not have a “plugins:” line in “.flashbake”, all of the stock plugins will be enabled. This is for backwards compatibility. A future version will drop this and complain when no plugins are configured.
  • “notice_to:” is now optional. Leave it out of “.flashbake” to disable email notices.
  • Figuring out the timezone on a Mac should work, please help me test. This will make the flashbake.plugins.timezone and flashbake.plugins.weather plugins work on OS X.

This version now has a dependency on the Python enum package, see the Installation page.

I have not started on Windows compatibility, yet, though I have several volunteers to help me test.

I am still working on the protocol for third party plugins, that should come soon.

I am also thinking about how to better detect the status of the network, though the offline message has been clarified in this release.

0.19

2/12/2009 – First public version, available as an installable Python project. This version has been tested on Linux and OS X with Python 2.5.2. Certain parts of it will not work on Windows. If anyone is interested in a Windows compatible version, let me know and I’ll see what I can do. This version has no external dependencies other than git. It does not use the git-python package though I am looking into that for a future release.

Once installed, you can run “flashbake —help” for information on how to run it. The project directory mentioned in the help must be a git repository and must have an additional .control file. It should give clear feedback on errors when you are running it.
Future Releases

The next big feature for flashbake is support for plugins. The four bits of information that make up the commit message (time zone, weather, uptime and rss items) are currently set up as stock plugins. I am working on the validation logic for vetting third party plugins and deciding on how to locate them. This would allow anyone who is comfortable hacking in Python to build their own plugins and to mix and match to generate their own customized, automated commit message.

Clone this wiki locally