diff --git a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java index e5db6f6cb7d2f9952571d9b3c648b060990ab529..830b92b2a061907547f14c221bdcb1e4eef8f77a 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java +++ b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java @@ -1446,7 +1446,7 @@ public class I2PSnarkServlet extends Default { out.write(Integer.toString(times[i])); out.write("\""); if (times[i] == delay) - out.write(" selected=\"true\""); + out.write(" selected=\"selected\""); out.write(">"); if (times[i] > 0) out.write(DataHelper.formatDuration2(times[i] * 1000)); @@ -1469,15 +1469,15 @@ public class I2PSnarkServlet extends Default { /* out.write("Seed percentage: <select name=\"seedPct\" disabled=\"true\" >\n\t"); if (seedPct <= 0) - out.write("<option value=\"0\" selected=\"true\">Unlimited</option>\n\t"); + out.write("<option value=\"0\" selected=\"selected\">Unlimited</option>\n\t"); else out.write("<option value=\"0\">Unlimited</option>\n\t"); if (seedPct == 100) - out.write("<option value=\"100\" selected=\"true\">100%</option>\n\t"); + out.write("<option value=\"100\" selected=\"selected\">100%</option>\n\t"); else out.write("<option value=\"100\">100%</option>\n\t"); if (seedPct == 150) - out.write("<option value=\"150\" selected=\"true\">150%</option>\n\t"); + out.write("<option value=\"150\" selected=\"selected\">150%</option>\n\t"); else out.write("<option value=\"150\">150%</option>\n\t"); out.write("</select><br>\n"); @@ -1554,7 +1554,7 @@ public class I2PSnarkServlet extends Default { } out.write("<tr><td>"); out.write(_("I2CP options")); - out.write(": <td><textarea name=\"i2cpOpts\" cols=\"60\" rows=\"1\" wrap=\"off\" spellcheck=\"false\" >" + out.write(": <td><textarea name=\"i2cpOpts\" cols=\"60\" rows=\"1\" style=\"whitespace:nowrap\" spellcheck=\"false\" >" + opts.toString() + "</textarea><br>\n" + "<tr><td> <td><input type=\"submit\" class=\"accept\" value=\""); @@ -1715,7 +1715,7 @@ public class I2PSnarkServlet extends Default { for (int i = min; i <= max; i++) { buf.append("<option value=\"").append(i).append("\" "); if (i == now) - buf.append("selected=\"true\" "); + buf.append("selected=\"selected\" "); // constants to prevent tagging buf.append(">").append(ngettext(DUMMY1 + name, DUMMY0 + name + 's', i)); buf.append("</option>\n"); diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/WizardBean.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/WizardBean.java deleted file mode 100644 index 779df441763a96da9a1c46bf6604b6cc2ac8de70..0000000000000000000000000000000000000000 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/WizardBean.java +++ /dev/null @@ -1,25 +0,0 @@ -package net.i2p.i2ptunnel.web; - -/** - * A temporary data holder for the wizard pages - * - * Warning - This class is not part of the i2ptunnel API, and at some point - * it will be moved from the jar to the war. - * Usage by classes outside of i2ptunnel.war is deprecated. - */ -public class WizardBean extends EditBean { - private boolean _isClient; - public WizardBean() { super(); } - - /** - * Whether the tunnel being set up is a client tunnel or not. - * @since 0.8.13 - */ - public void setIsClient(String isClient) { - _isClient = Boolean.valueOf(isClient); - } - /** @since 0.8.13 */ - public boolean getIsClient() { - return _isClient; - } -} diff --git a/apps/i2ptunnel/jsp/wizard.jsp b/apps/i2ptunnel/jsp/wizard.jsp index 95699a73b46dcbb107df4254fd41bf6f507b849a..74afb65a28790f56d2a470484ad441af1ac27647 100644 --- a/apps/i2ptunnel/jsp/wizard.jsp +++ b/apps/i2ptunnel/jsp/wizard.jsp @@ -1,11 +1,15 @@ <% // NOTE: Do the header carefully so there is no whitespace before the <?xml... line + // http://www.crazysquirrel.com/computing/general/form-encoding.jspx + if (request.getCharacterEncoding() == null) + request.setCharacterEncoding("UTF-8"); + %><%@page pageEncoding="UTF-8" -%><%@page contentType="text/html" import="net.i2p.i2ptunnel.web.WizardBean" +%><%@page contentType="text/html" import="net.i2p.i2ptunnel.web.EditBean" %><?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<jsp:useBean class="net.i2p.i2ptunnel.web.WizardBean" id="wizardBean" scope="request" /> +<jsp:useBean class="net.i2p.i2ptunnel.web.EditBean" id="editBean" scope="request" /> <jsp:useBean class="net.i2p.i2ptunnel.web.Messages" id="intl" scope="request" /> <% String pageStr = request.getParameter("page"); /* Get the number of the page we came from */ @@ -50,9 +54,9 @@ <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> <link href="/themes/console/images/favicon.ico" type="image/x-icon" rel="shortcut icon" /> - <% if (wizardBean.allowCSS()) { - %><link href="<%=wizardBean.getTheme()%>default.css" rel="stylesheet" type="text/css" /> - <link href="<%=wizardBean.getTheme()%>i2ptunnel.css" rel="stylesheet" type="text/css" /> + <% if (editBean.allowCSS()) { + %><link href="<%=editBean.getTheme()%>default.css" rel="stylesheet" type="text/css" /> + <link href="<%=editBean.getTheme()%>i2ptunnel.css" rel="stylesheet" type="text/css" /> <% } %> </head> @@ -82,7 +86,7 @@ } %> <input type="hidden" name="page" value="<%=curPage%>" /> <input type="hidden" name="tunnel" value="null" /> - <input type="hidden" name="nonce" value="<%=wizardBean.getNextNonce()%>" /> + <input type="hidden" name="nonce" value="<%=editBean.getNextNonce()%>" /> </div> <div class="separator"> @@ -341,7 +345,7 @@ if ("null".equals(clientInterface)) { clientInterface = "127.0.0.1"; } - for (String ifc : wizardBean.interfaceSet()) { + for (String ifc : editBean.interfaceSet()) { out.write("<option value=\""); out.write(ifc); out.write('\"'); @@ -425,7 +429,7 @@ } %> </td></tr> <tr><td><%=intl._("Tunnel name and description")%></td><td> - <%=request.getParameter("name")%><br> + <%=request.getParameter("name")%><br /> <%=request.getParameter("description")%> </td></tr><% if (tunnelIsClient) { %> @@ -439,16 +443,16 @@ } %> <tr><td><%=intl._("Binding address and port")%></td><td><% if ((tunnelIsClient && "streamrclient".equals(tunnelType)) || (!tunnelIsClient && !"streamrserver".equals(tunnelType))) { %> - <%=request.getParameter("targetHost")%><br><% + <%=request.getParameter("targetHost")%><br /><% } if (!tunnelIsClient) { %> - <%=request.getParameter("targetPort")%><br><% + <%=request.getParameter("targetPort")%><br /><% } if (tunnelIsClient || "httpbidirserver".equals(tunnelType)) { %> - <br><%=request.getParameter("port")%><% + <br /><%=request.getParameter("port")%><% } if ((tunnelIsClient && !"streamrclient".equals(tunnelType)) || "httpbidirserver".equals(tunnelType) || "streamrserver".equals(tunnelType)) { %> - <br><%=request.getParameter("reachableBy")%><% + <br /><%=request.getParameter("reachableBy")%><% } %> </td></tr> <tr><td><%=intl._("Tunnel auto-start")%></td><td><% diff --git a/apps/routerconsole/jsp/confignet.jsp b/apps/routerconsole/jsp/confignet.jsp index 59b3f27d336121130407c1a7ba66429a39819d61..09ab0907165ab047a8f0e3d119b2e6261a9aae96 100644 --- a/apps/routerconsole/jsp/confignet.jsp +++ b/apps/routerconsole/jsp/confignet.jsp @@ -46,7 +46,7 @@ <input name ="udpHost1" type="text" size="16" value="<jsp:getProperty name="nethelper" property="udphostname" />" > <% String[] ips = nethelper.getAddresses(); if (ips.length > 0) { - out.print(intl._("or") + " <select name=\"udpHost2\"><option value=\"\" selected=\"true\">"+intl._("Select Interface")+"</option>\n"); + out.print(intl._("or") + " <select name=\"udpHost2\"><option value=\"\" selected=\"selected\">"+intl._("Select Interface")+"</option>\n"); for (int i = 0; i < ips.length; i++) { out.print("<option value=\""); out.print(ips[i]); diff --git a/core/java/src/net/i2p/CoreVersion.java b/core/java/src/net/i2p/CoreVersion.java index 50ea690685b4b8a411e43b7270b8b73bee6d01d4..788e8f363b683100ffe38746bcc531ea2b3a4fbb 100644 --- a/core/java/src/net/i2p/CoreVersion.java +++ b/core/java/src/net/i2p/CoreVersion.java @@ -16,7 +16,7 @@ package net.i2p; public class CoreVersion { /** deprecated */ public final static String ID = "Monotone"; - public final static String VERSION = "0.8.12"; + public final static String VERSION = "0.8.13"; public static void main(String args[]) { System.out.println("I2P Core version: " + VERSION); diff --git a/debian/changelog b/debian/changelog index 9956396109b605fd2c7d9a28ae4630398b8430cb..eb1ba0b62a2cb8af928f17b805caa65b40e3d759 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,15 @@ +i2p (0.8.13-1) stable; urgency=low + + * New upstream version 0.8.13 + * Packages are compressed with bzip2 + * Remove debian/patches/0005-EepGet_correct_status.patch + * Bump standards version to 3.9.3 (no changes to source needed) + * Debconf: + - New Czech language translation + - Updated German, Polish, Russian, and Ukrainian translations + + -- Kill Your TV <killyourtv@i2pmail.org> Mon, 27 Feb 2012 21:06:56 +0000 + i2p (0.8.12-2) stable; urgency=low * postinst: Don't fail if the i2psvc group doesn't exist diff --git a/debian/control b/debian/control index 31a4641f6c103dec694e9d65424447ab081bb162..6a2cc81f5ab06159c59511847da960e9cfd3467d 100644 --- a/debian/control +++ b/debian/control @@ -1,7 +1,7 @@ Source: i2p Maintainer: Kill Your TV <killyourtv@i2pmail.org> Section: net -Standards-Version: 3.9.2 +Standards-Version: 3.9.3 Priority: optional Bugs: mailto:killyourtv@i2pmail.org Homepage: http://www.i2p2.de/ diff --git a/debian/rules b/debian/rules index 07a8ffe44a836fcd1a1c7e1f1e7e1aa9bfd68af2..0bb7ebbc592dfe6e2c0ecad9edc743a6adc00706 100755 --- a/debian/rules +++ b/debian/rules @@ -68,7 +68,7 @@ build-indep: binary-arch: build-arch build-arch: # build jbigi - cd $(CURDIR)/core/c/jbigi && ./mbuild_jbigi.sh dynamic + cd $(CURDIR)/core/c/jbigi && ./build_jbigi.sh dynamic # build jcpuid cd $(CURDIR)/core/c/jcpuid && ./build.sh diff --git a/history.txt b/history.txt index 4c51037de4dd066be401e2000a1bf4a258d482f9..e3b1aae098cf2e07a74ff48f0fc753e05cd6c45a 100644 --- a/history.txt +++ b/history.txt @@ -1,3 +1,5 @@ +* 2012-02-27 0.8.13 released + 2012-02-22 kytv * Updated German, Italian, Spanish, Swedish, and Ukrainian translations from Transifex. diff --git a/installer/install.xml b/installer/install.xml index d6e802890e4b5cdddb93c0bd892c2bfb5e628ff9..b830de9ed6069661242ab0a7587387fa6cedce56 100644 --- a/installer/install.xml +++ b/installer/install.xml @@ -4,7 +4,7 @@ <info> <appname>i2p</appname> - <appversion>0.8.12</appversion> + <appversion>0.8.13</appversion> <authors> <author name="I2P" email="http://forum.i2p2.de/"/> </authors> diff --git a/installer/resources/news.xml b/installer/resources/news.xml index 324c5806448bca956810b3f2001778d1fac8dd14..b30b5a02a8ab6de418cb5c5963c91612a8fa7d97 100644 --- a/installer/resources/news.xml +++ b/installer/resources/news.xml @@ -1,15 +1,36 @@ <!-- <i2p.news date="$Date: 2012-01-06 00:00:00 $"> -<i2p.release version="0.8.12" date="2012/01/06" minVersion="0.6" /> +<i2p.release version="0.8.13" date="2012/02/27" minVersion="0.6" /> --> <div lang="en"> -<h3>2012-01-06: <b>0.8.12 <a href="http://www.i2p2.i2p/release-0.8.12.html">Released</a></b></h3> +<h3>2012-02-27: <b>0.8.13 <a href="http://www.i2p2.i2p/release-0.8.13.html">Released</a></b></h3> <p> -The 0.8.12 release fixes several serious message corruption bugs. -It also contains a redesign of the router's congestion control, and continued -optimization of CPU and memory usage. We are hopeful that these changes will -improve network performance. Upgrading is recommended. +The 0.8.13 release contains several bug fixes and a couple of new features. +We are pleased that the last release significantly improved performance, +and the network is running well despite continued rapid growth. +Upgrading is recommended. +</p><p> +This is likely to be the last release before 0.9, in which we will migrate to Jetty 6, +and introduce a simplified router console home page. Monitor the news section of +your the router console in the coming weeks for more information on the next release. +</p><p> +Starting with this release, the router will +check for and install plugin updates shortly upon restarting after a router update. +To prevent this, add the <a href="/configadvanced">advanced configuration</a> +<tt>plugins.autoUpdate=false</tt> before restarting. +There is also a new update-all button on <a href="/configclients#plugin">the client configuration page</a>. +</p><p> +Routers in certain countries will now automatically enable hidden mode for increased protection. +However, hidden mode may have lower performance or reliability, and is still a work in progress. +To disable hidden mode before restarting, add the <a href="/configadvanced">advanced configuration</a> +<tt>router.isHidden=false</tt>. +To disable hidden mode later, select <i>use all auto-detect methods</i> under <i>IP Configuration</i> on the +<a href="/confignet">network configuration page</a>. +For the list of countries see <a href="http://zzz.i2p/topics/969">this thread on zzz.i2p</a>. +The only country on the list that has more than one or two I2P users is China. +</p><p> +After you have upgraded, check out the <a href="/i2ptunnel/wizard">new tunnel creation wizard</a>. </p><p> Say hello to the volunteers on the <a href="irc://127.0.0.1:6668/i2p-help">#i2p-help IRC channel</a>. <a href="http://www.i2p2.i2p/getinvolved.html">Get involved</a>, diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index 14408f1ed4aa00437ccef8702b43aba082dea759..a411b009986dc5f1f6384384ad98aeea42885422 100644 --- a/router/java/src/net/i2p/router/RouterVersion.java +++ b/router/java/src/net/i2p/router/RouterVersion.java @@ -18,10 +18,10 @@ public class RouterVersion { /** deprecated */ public final static String ID = "Monotone"; public final static String VERSION = CoreVersion.VERSION; - public final static long BUILD = 18; + public final static long BUILD = 0; /** for example "-test" */ - public final static String EXTRA = "-rc"; + public final static String EXTRA = ""; public final static String FULL_VERSION = VERSION + "-" + BUILD + EXTRA; public static void main(String args[]) { System.out.println("I2P Router version: " + FULL_VERSION);