Author: toad
Date: 2007-09-08 19:33:26 +0000 (Sat, 08 Sep 2007)
New Revision: 15074

Modified:
   trunk/freenet/src/freenet/node/Version.java
Log:
1060: (Partly because of UPnP and plugins, partly because of accidentally 
deploying a trunk build)
Plugin management code:
- Support unloading IP detector plugins, port forwarding plugins. So unloading 
JSTUN or UPnP will no longer silently leave them running and therefore break 
later load attempts.
- Fix FileUtil.writeTo (make the tempfile in the target dir so rename works) -> 
fix <plugin name># loading. Try 5 times to get the jar even if loaded using 
<plugin name>#.
- Significant refactoring. Fix various bugs at the same time.
- Simpler, faster, smaller code.
- Less nested locking, other synchronization fixes/changes/additions, remove 
unnecessary internal polling for set() in PluginHandler.
- Move some code around.
- Stop using Thread's to identify plugins (even the threadless ones!). Don't 
create a Thread unless we really need one; they're probably quite heavy.
- PluginStarter should know its PluginInfoWrapper
- Javadocs
- Threadless plugins were not being removed properly - terminate() wasn't being 
called.
- Wait up to 60 seconds for threaded plugins to finish after asking them to 
exit.
- Indicate stopping plugins on plugins page.
- Unregister plugin from web interface etc when asked to kill it, only remove 
from the plugin list after completely finished exiting.
- Register for callbacks just after start for threadless plugins to avoid NPEs 
caused by not having the PluginRespirator yet. Register just before with 
threaded plugins for the same reason - will occasionally get NPEs if the plugin 
needs the PR and doesn't explicitly check.
- Logging, indenting.
Trivial optimisations:
- Remove unnecessary double buffering in FileUtil.writeTo.
Web interface:
- Close HTTP connection after sending an error because of a throwable in a 
plugin - we don't know whether it already tried to send something.
XMLSpider:
- Delete some dead code
UPnP:
- Don't hold the lock while doing expensive operations.

Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2007-09-08 19:27:50 UTC (rev 
15073)
+++ trunk/freenet/src/freenet/node/Version.java 2007-09-08 19:33:26 UTC (rev 
15074)
@@ -24,7 +24,7 @@
        public static final String protocolVersion = "1.0";

        /** The build number of the current revision */
-       private static final int buildNumber = 1059;
+       private static final int buildNumber = 1060;

        /** Oldest build of Fred we will talk to */
        private static final int oldLastGoodBuild = 1056;


Reply via email to