1 |
Note worthy changes in FreeRIDE Releases |
Note worthy changes in FreeRIDE Releases |
2 |
======================================= |
======================================= |
3 |
|
|
4 |
Version: 0.0.4 |
[TODO -- write something here for first release] |
|
-------------- |
|
|
Date: Jan 31, 2002 |
|
|
Author: Rich Kilmer <rich@infoether.com> |
|
|
|
|
|
* Major changes |
|
|
* Changed the Log4R logger to become a plugin |
|
|
see: ./plugins/logger |
|
|
* Removed the log4r code from setup.rb. That file now sets |
|
|
up an in-memory logger until a persitent logger is installed. |
|
|
All log messages are queued in the memory log (limit 20). |
|
|
* Added #prune method to Slot (to delete slots) |
|
|
* Changed the term used for subscribers first param: |
|
|
was: slot.subscribe {|message, slot| ...} |
|
|
now: slot.subscribe {|event, slot| ...} |
|
|
It really always was an event (Symbol) |
|
|
* Added a manager to slots |
|
|
* Added ./config/default.xml (default properties) |
|
|
* Added plugin dependency management |
|
|
* Added plugin transition management |
|
|
* Changed plugin.rb extensively based on transitions |
|
|
* Added freeride.rb which contains module and global constants |
|
|
and requires all other freeride core files |
|
|
* Changed run.bat to require freeride.rb instead of core.rb |
|
|
* Added autostart attribute to plugin.xml to be able to disable |
|
|
plugins from loading upon startup |
|
|
* Added propagate_notifications attribute to Slot so a slot can |
|
|
block sending notifications to parent |
|
|
* Made a properties a Manager of a properties slot |
|
|
* Added lifecycle methods to the plugin modules: |
|
|
load perform load operations (require files, etc) |
|
|
start start plugin |
|
|
stop stop plugin |
|
|
unload perform any (possible) unload operations |
|
|
Note: Plugins MUST issue transition operations in these methods |
|
|
for the plugin to continue to load (see SimpleTest Plugin) |
|
|
* Added the ability for slots to have attributes |
|
|
set: slot.attr_<name> = value |
|
|
get: value = slot.attr_<name> |
|
|
|
|
|
|
|
|
Version: 0.0.3 |
|
|
-------------- |
|
|
Date: Jan 22, 2002 |
|
|
Author: Rich Kilmer <rich@infoether.com> |
|
|
|
|
|
* Major changes |
|
|
* Single databus (plugins are relative paths) |
|
|
* Refactored DataBus. |
|
|
* Element has been renamed Slot |
|
|
* Slots can have one of four types (per Curt Hibbs) |
|
|
data A Data slot holds a basic data object |
|
|
queue A Queue slot holds a FIFO list |
|
|
stack A Stack slot holds a LIFO list |
|
|
proc A Proc slot holds a proc/block and can be called |
|
|
* Subscriptions to slots now must accept two parameters |
|
|
message The message Symbol |
|
|
slot The slot object |
|
|
dbus["/foo/bar"].subscribe {|message, slot| ... } |
|
|
* Properties is rewritten...now sit on top of databus |
|
|
* Logger is now mounted in the databus |
|
|
* Refactored Core, Plugin and test plugins accordingly |
|
|
* Added FreeRIDE::DataBus::Adapter class to enable |
|
|
automatic update/sync of mutiple slots |
|
|
* Added RubyUnit to the redist directory |
|
|
* Added test dir w/a couple of (non-unit) tests |
|
|
|
|
|
Version: 0.0.2 |
|
|
-------------- |
|
|
Date: Jan 21, 2002 |
|
|
Author: Rich Kilmer <rich@infoether.com> |
|
|
|
|
|
* Added ./Changelog.txt (this file) |
|
|
* Moved REXML and added LOG4R to the ./redist directory. |
|
|
* Got rid of startup.rb (moved functionality into run.bat) |
|
|
* Changed the run.bat to start the core directly. |
|
|
* When ruby starts it now adds the following paths: |
|
|
. The current directory |
|
|
so A directory to hold shared libraries/DLLs for plugins (future) |
|
|
redist Redistributed libraries from 3rd parties |
|
|
* Moved setup.rb into the ./config directory |
|
|
* Moved the documentation under the ./doc and the ./doc/rdoc directory |
|
|
* Refactored the core.rb file into 4 files. This should make it easier to |
|
|
change/refactor the core components. |
|
|
core.rb - The FreeRIDE::Core class |
|
|
databus.rb - The FreeRIDE::DataBus class |
|
|
properties.rb - The FreeRIDE::Properties class |
|
|
plugin.rb - The FreeRIDE::Plugin class |
|
|
* Added support for Properties on the plugin object (as specified in the |
|
|
plugin.xml file) I plugin can now access its properties with: |
|
|
@plugin.properties["PropGroup", "Prop"] = "value" |
|
|
@plugin.properties["PropGroup", "Prop"] #=> value |
|
|
Remember after a properties change to do: |
|
|
@plugin.properties.write |
|
|
* Refactored the DataBus. Now, there is a Root element ("/") that can |
|
|
be subscribed to. The Navigation Module is no longer necessary and |
|
|
its functionality is merged into the Element class. |
|
|
* DataBus "publications" are now propagated to the parent Element so if you |
|
|
publish to /foo/bar all subscribers of /foo/bar get notified as well as |
|
|
subscribers of /foo and /. |
|
|
* Added a logger to the core using Log4R. Its accessible from each plugin as: |
|
|
@plugin.log.info "Information message". |
|
|
The log file is configured in the core properties.xml file (./config/properties.xml) |
|
|
Default is ./config/freeride.log |
|
|
|
|
|
Version: 0.0.1 |
|
|
-------------- |
|
|
Date: Jan 18, 2002 |
|
|
Author: Rich Kilmer <rich@infoether.com> |
|
|
|
|
|
* First Release. |
|
|
* Basic plugin concepts implemented |
|