changes for release 1.4.0
diff --git a/weinre.build/build.properties b/weinre.build/build.properties
index 3c0a0f1..caf374a 100644
--- a/weinre.build/build.properties
+++ b/weinre.build/build.properties
@@ -8,7 +8,7 @@
 #-----------------------------------------------------------
 # weinre version
 #-----------------------------------------------------------
-WEINRE_VERSION: 1.3.0
+WEINRE_VERSION: 1.4.0
 
 #-----------------------------------------------------------
 # some common locations used in the ant scripts
diff --git a/weinre.build/new-release-notes.md b/weinre.build/new-release-notes.md
index 476e2d0..937c66f 100644
--- a/weinre.build/new-release-notes.md
+++ b/weinre.build/new-release-notes.md
@@ -5,7 +5,9 @@
 
 - update the `WEINRE_VERSION` variable in `weinre.build/build.properties` as appropriate
 
-- add changelog to `weinre.doc/ChangeLog.body.html`, built with `weinre.build/scripts/changelog.sh`
+- add changelog to `weinre.doc/ChangeLog.body.html`, built with
+
+    weinre.build/scripts/changelog.sh [previous-version]
 
 - fix other doc as necessary
 
diff --git a/weinre.doc/ChangeLog.body.html b/weinre.doc/ChangeLog.body.html
index c4f52ac..9acd72a 100644
--- a/weinre.doc/ChangeLog.body.html
+++ b/weinre.doc/ChangeLog.body.html
@@ -6,6 +6,25 @@
 -->
 
 <!-- ======================================================================= -->
+<h2>2011/04/09 - version 1.4.0</h2>
+<ul>
+<li> better calculation of object's class name. closes <a href="https://github.com/pmuellr/weinre/issues/41">issue 41</a>.
+<li> initial set of changes in for extensions. closes <a href="https://github.com/pmuellr/weinre/issues/8">issue 8</a>.
+<li> added json2.js to the mix; part of issue <a href="https://github.com/pmuellr/weinre/issues/45">issue 45</a>.
+<li> works with recent scooj release.  closes <a href="https://github.com/pmuellr/weinre/issues/52">issue 52</a>.
+<li> add non-authenticated multi-user support.  closes <a href="https://github.com/pmuellr/weinre/issues/50">issue 50</a>.
+See <a href="MultiUser.html">the MultiUser doc page</a> for more information.
+</ul>
+
+<p>issues closed:
+<ul>
+<li> <a href="https://github.com/pmuellr/weinre/issues/8">issue 8</a> - enable extensions
+<li> <a href="https://github.com/pmuellr/weinre/issues/41">issue 41</a> - in JSC, inspected object's class is always "object"
+<li> <a href="https://github.com/pmuellr/weinre/issues/50">issue 50</a> - add non-authenticated multi-user support
+<li> <a href="https://github.com/pmuellr/weinre/issues/52">issue 52</a> - react to recent modjewel / scooj changes
+</ul>
+
+<!-- ======================================================================= -->
 <h2>2011/04/05 - version 1.3.0</h2>
 <ul>
 <li> style editing now enabled in Elements panel
diff --git a/weinre.doc/Home.body.html b/weinre.doc/Home.body.html
index 79c0896..73e4219 100644
--- a/weinre.doc/Home.body.html
+++ b/weinre.doc/Home.body.html
@@ -104,6 +104,13 @@
 Later versions of those things are also hopefully supported,
 but let us know.
 
+<h3>Platforms not supported</h3>
+
+<ul>
+<li>iOS 3.1.3 or earlier
+<li>webOS 1.45 or earlier
+</ul>
+
 <h3>Libraries not supported</h3>
 
 <ul>
@@ -114,7 +121,8 @@
 version of Prototype.js.
 </ul>
 
-<h3>Debug client - the browser where the debugger user interface runs</h3>
+<h3>Platforms supported - debug client</h3>
+<p>The browser where the debugger user interface runs.
 
 <ul>
 <li>weinre Mac application - Mac OS X 10.6 64-bit
@@ -122,12 +130,14 @@
 <li>Apple Safari 5.x 
 </ul>
 
-<h3>Debug target - the browser with the page you are debugging</h3>
+<h3>Platforms supported - debug target</h3>
+<p>The browser with the page you are debugging.
 
 <ul>
 <li>Android 2.2 Browser application
 <li>Android 2.2 w/PhoneGap 0.9.2
 <li>iOS 4.2.x Mobile Safari application
 <li>BlackBerry v6.x simulator
+<li>webOS 2.x (unspecified version)
 </ul>
 
diff --git a/weinre.server/src/weinre/server/ExtensionManager.java b/weinre.server/src/weinre/server/ExtensionManager.java
index f050904..3977e86 100644
--- a/weinre.server/src/weinre/server/ExtensionManager.java
+++ b/weinre.server/src/weinre/server/ExtensionManager.java
@@ -31,6 +31,8 @@
     
     //---------------------------------------------------------------
     static public String[] getExtensions() {
+        if (null == weinreExtDir) return extensions;
+        
         if (weinreExtDate != weinreExtDir.lastModified()) {
             initExtensions();
         }
@@ -41,6 +43,8 @@
     //---------------------------------------------------------------
     // path: /client/extensions/weinre-ext-sample/extension.html
     static public Resource getResource(String path) throws MalformedURLException {
+        if (null == weinreExtDir) return null;
+        
         File resourceFile = new File(weinreExtDir, path.substring(18));
         if (!resourceFile.exists()) return null;
         
@@ -55,6 +59,8 @@
     //---------------------------------------------------------------
     static private void initExtensions() {
         
+        extensions = EMPTY_STRING_ARRAY;
+            
         weinreHomeDir = new File(System.getProperty("user.home"), ".weinre");
         if (!weinreHomeDir.isDirectory()) {
             Main.info("extensions not enabled: ~/.weinre is not a directory");
@@ -68,8 +74,6 @@
             return;
         }
         
-        extensions = EMPTY_STRING_ARRAY;
-            
         List<String> extensionList = new ArrayList<String>();
         
         String[] entries = weinreExtDir.list();