about summary refs log tree commit homepage
path: root/doc/site/src
diff options
context:
space:
mode:
Diffstat (limited to 'doc/site/src')
-rw-r--r--doc/site/src/default.template14
-rw-r--r--doc/site/src/docs/gem_plugin.page51
-rw-r--r--doc/site/src/faq.page2
-rw-r--r--doc/site/src/images/config_tool_snap.pngbin0 -> 38023 bytes
-rw-r--r--doc/site/src/news.page51
5 files changed, 117 insertions, 1 deletions
diff --git a/doc/site/src/default.template b/doc/site/src/default.template
index 37fbbce..9ce3f06 100644
--- a/doc/site/src/default.template
+++ b/doc/site/src/default.template
@@ -46,6 +46,20 @@
         <h4>NEWS</h4>
 
         <dl>
+          <dt>Mar-12-2006</dt>
+          <dd>
+            <h5><a href="{relocatable: news.html}">Mongrel 0.3.10 -- Big Release Day</a></h5>
+
+            <p>I normally do lots of little releases rather than large big ones, but this
+              release involved lots of little touches all over the entire code base.  It
+              now has a ton of features and should have the best Rails support yet.  It's
+              even got <b>GemPlugins</b> to a leve that anyone can use it.  Read the
+              news for the full scoop.
+            </p>
+              <a href="http://rubyforge.org/frs/?group_id=1306" title="Downloads">Download</a>
+              <a href="{relocatable: news.html}"><img src="{relocatable: images/li4.gif}" alt="more" /><br /></a></p>
+          </dd>
+
           <dt>Mar-06-2006</dt>
           <dd>
             <h5><a href="{relocatable: news.html}">Mongrel 0.3.9 -- Gem Based Plugins</a></h5>
diff --git a/doc/site/src/docs/gem_plugin.page b/doc/site/src/docs/gem_plugin.page
index 346f7b7..40586bf 100644
--- a/doc/site/src/docs/gem_plugin.page
+++ b/doc/site/src/docs/gem_plugin.page
@@ -17,6 +17,57 @@ new commands.
 such as "mongrel_rails dostuff".  Handlers and
 Filters are on their way.
 
+h2.  Why Plugins for Mongrel?
+
+If you've ever used other systems that have plugins you'll find there are
+several painful parts to writing your own plugin:
+
+* You don't have their developer tools so it takes forever to get started.
+* You don't know how to structure the project or even where to start.
+* Once you get it built you have to figure out how to register and install it.
+* When you want to update it you have to somehow get the update out to users.
+* You have to manage dependencies between your plugin and other plugins.
+* Including and using your own resources (images, html files, etc.) or config files
+  is really painful.  Not sure why this is but it's really annoying.
+
+Most people solve many of the problems by the "sourdough method".  They
+take a plugin that currently works, copy it, and base their plugin
+on the prototype.  This works great until you want to do something
+original or until you find out the original author did something wrong.
+
+GemPlugin solves this problem by relying on the regular RubyGems
+package management system to give you:
+
+* A simple way to package, distribute, manage, and update your Mongrel plugins.
+* Dynamic loading based on the gem dependencies and not on specific configurations.
+* Segregated extensions for Mongrel in case you want a different license than LGPL.
+* All the capabilities of RubyGems.  GemPlugin doesn't mess with them at all.
+* A little generator that starts your project off right similar to how Rails generators work.
+* The ability to package resources (images, configs, etc.) with your gem and then load them
+  dynamically no matter where the gem eventually gets installed.
+
+In the end GemPlugins are just RubyGems that get loaded a special way
+so they are activated right away.  The only extra thing is a bit of
+"magic" that puts plugins into a nice little namespace outside of
+the usual Ruby module and class hierarchy.
+
+The advantage for Mongrel is that people can write their own
+plugins and distribute them easily without anything more complex
+than what all Ruby developers already have:  RubyGems.
+
+h2.  How They Work
+
+Mongrel plugins (a.k.a. GemPlugins) are really very simple.  Basically
+when you use the GemPlugin API you tell it what kind of dependencies
+will trigger a gem to be loaded.  GemPlugin then goes through all of
+the installed gems and loads any that meet the dependency description.
+Then your plugin just registers itself in the right "plugin category"
+and everything starts working.  The user of your plugin won't have to
+do too much unless you want to give them additional configuration.
+
+The best way to understand this is to actually build a plugin
+and watch it work.
+
 
 h2.  Your First Plugin
 
diff --git a/doc/site/src/faq.page b/doc/site/src/faq.page
index 1c55d50..9bcab42 100644
--- a/doc/site/src/faq.page
+++ b/doc/site/src/faq.page
@@ -83,7 +83,7 @@ h3. Q: How did you make this site?
 The site was actually incredibly easy to create.  I simply went to "OSWD":http://openwebdesign.org/
 and found a design that fit what I wanted for the site.  I then went to "Flickr":http://flickr.com/
 and found pictures of various animals that were licensed under the
-"Creative Commons":http://openwebdesign.org/ license.  Once I chopped the images up, worked them
+"Creative Commons":http://creativecommons.org/ license.  Once I chopped the images up, worked them
 into the design structure, and wrote an initial set of content I was done.
 
 The tool I use to generate the site is called "webgen":http://webgen.rubyforge.org/ which
diff --git a/doc/site/src/images/config_tool_snap.png b/doc/site/src/images/config_tool_snap.png
new file mode 100644
index 0000000..05e1b14
--- /dev/null
+++ b/doc/site/src/images/config_tool_snap.png
Binary files differ
diff --git a/doc/site/src/news.page b/doc/site/src/news.page
index a95a426..caee7ac 100644
--- a/doc/site/src/news.page
+++ b/doc/site/src/news.page
@@ -7,6 +7,57 @@ ordering: 2
 
 h1. Latest News
 
+h2. Mar-12:   Mongrel 0.3.10 -- Big Release Day
+
+This release is a bigger release than those in the
+past but it was necessary as it touched many little
+parts of the code base and includes a more complete
+GemPlugin functionality.  This release features the
+following changes:
+
+* GemPlugin now supports including and easily finding resources and config files
+  you package with your gems.
+* GemPlugin loading doesn't use any deprecated RubyGems APIs.
+* GemPlugin comes with a generator called *gpgen* that will make it easy to start off
+  a plugin project.
+* A complete document on "Writing A Mongrel Plugin":/docs/gem_plugin.html that
+  also explains how they work.
+* The "Mongrel Config Tool":/images/config_tool_snap.png that demonstrates
+  building a useful command for controlling a Mongrel server.
+** It uses a "Camping":http://camping.rubyforge.org/ to present an interface.
+** Demonstrates combining Camping handlers with Mongrel handlers.
+** Shows how to use the new GemPlugin resources API to include ERB templates, images,
+   and CSS stylesheets which are loaded out of the gem (no external install needed).
+* Restructuring of the project source a bit to support testing all the
+  default plugins and to make building much easier.
+* Properly loads any gems that depend on Rails (including GemPlugins) until the
+  very last minute after Rails is loaded and configured.
+* A slight hack courtesy of Sean Treadway which jacks up the default server
+  listen queue from 5 to 1024.  This should work on all platforms where
+  available and should improve concurrency for everyone.
+* A more complete and useful Camping postamble that makes it the same size
+  as the WEBrick one.  Also makes sure that Camping handlers and Mongrel
+  handlers can live in peace together.
+
+There's also a bunch of bug fixes:
+
+* Should work well with edge rails now and tries to be very nice.
+* It holds of Rails configuration until the absolute latest time to
+  avoid having the daemonize call from closing log files Rails opens.
+* Tweaks to the API docs in various places and cleaned out dead code.
+* Lots of fixes to the build.  If you get the source and are on Unix
+  you can just do "rake install" to install the whole thing via gems.
+
+This release has been tested on Linux, OSX, and FreeBSD with only
+light testing on Win32.  I'll be making the 0.3.11 release Win32
+specific so that the config tool can be useful for those folks too.
+
+Otherwise this is a large release so please grab it and test like
+mad.
+
+"Download 0.3.10":http://rubyforge.org/frs/?group_id=1306
+
+
 h2.  Mar-06:  Mongrel 0.3.9 -- Gem Based Plugins
 
 This release features the beginning of a plugin system based