forked from I2P_Developers/i2p.i2p
* Checklist updates
* Console: - Don't reset graph settings when clicking restart or shutdown on graphs page - Don't recommend guest login on trac, it's disabled - Catch and remove corrupt jrb file (ticket #1186) - Always set default language on /configui * Readme: Update links * Transports: Reduce target connection count again to reduce tunnel reject rate further
This commit is contained in:
@ -12,7 +12,7 @@ you may use:
|
||||
to configure the router.
|
||||
|
||||
If you're having trouble, swing by http://forum.i2p/, check the
|
||||
website at http://www.i2p2.de/, or get on irc://irc.freenode.net/#i2p
|
||||
website at https://geti2p.net/, or get on irc://irc.freenode.net/#i2p
|
||||
|
||||
I2P will create and store files and configuration data in the user directory
|
||||
~/.i2p/ on Linux and %APPDATA%\I2P\ on Windows. This directory is created
|
||||
|
10
README.txt
10
README.txt
@ -15,20 +15,20 @@ To build:
|
||||
ant installer-osx
|
||||
|
||||
Run 'ant' with no arguments to see other build options.
|
||||
See INSTALL.txt or http://www.i2p2.de/download.html for installation instructions.
|
||||
See INSTALL.txt or https://geti2p.net/download for installation instructions.
|
||||
|
||||
Documentation:
|
||||
http://www.i2p2.de/how
|
||||
https://geti2p.net/how
|
||||
API: run 'ant javadoc' then start at build/javadoc/index.html
|
||||
|
||||
Latest release:
|
||||
http://www.i2p2.de/download
|
||||
https://geti2p.net/download
|
||||
|
||||
To get development branch from source control:
|
||||
http://www.i2p2.de/newdevelopers
|
||||
https://geti2p.net/newdevelopers
|
||||
|
||||
FAQ:
|
||||
http://www.i2p2.de/faq
|
||||
https://geti2p.net/faq
|
||||
|
||||
Need help?
|
||||
IRC irc.freenode.net #i2p
|
||||
|
@ -103,11 +103,33 @@ public class ConfigUIHelper extends HelperBase {
|
||||
|
||||
/** todo sort by translated string */
|
||||
public String getLangSettings() {
|
||||
StringBuilder buf = new StringBuilder(512);
|
||||
String current = Messages.getLanguage(_context);
|
||||
String clang = Messages.getLanguage(_context);
|
||||
String current = clang;
|
||||
String country = Messages.getCountry(_context);
|
||||
if (country != null && country.length() > 0)
|
||||
current += '_' + country;
|
||||
// find best match
|
||||
boolean found = false;
|
||||
for (int i = 0; i < langs.length; i++) {
|
||||
if (langs[i][0].equals(current)) {
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!found) {
|
||||
if (country != null && country.length() > 0) {
|
||||
current = clang;
|
||||
for (int i = 0; i < langs.length; i++) {
|
||||
if (langs[i][0].equals(current)) {
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!found)
|
||||
current = "en";
|
||||
}
|
||||
StringBuilder buf = new StringBuilder(512);
|
||||
for (int i = 0; i < langs.length; i++) {
|
||||
// we use "lang" so it is set automagically in CSSHelper
|
||||
buf.append("<input type=\"radio\" class=\"optbox\" name=\"lang\" ");
|
||||
|
@ -351,7 +351,7 @@ public class GraphHelper extends FormHandler {
|
||||
try {
|
||||
_out.write("<br><h3>" + _("Configure Graph Display") + " [<a href=\"configstats\">" + _("Select Stats") + "</a>]</h3>");
|
||||
_out.write("<form action=\"graphs\" method=\"POST\">\n" +
|
||||
"<input type=\"hidden\" name=\"action\" value=\"foo\">\n" +
|
||||
"<input type=\"hidden\" name=\"action\" value=\"save\">\n" +
|
||||
"<input type=\"hidden\" name=\"nonce\" value=\"" + nonce + "\" >\n");
|
||||
_out.write(_("Periods") + ": <input size=\"5\" style=\"text-align: right;\" type=\"text\" name=\"periodCount\" value=\"" + _periodCount + "\"><br>\n");
|
||||
_out.write(_("Plot averages") + ": <input type=\"radio\" class=\"optbox\" name=\"showEvents\" value=\"false\" " + (_showEvents ? "" : "checked=\"checked\" ") + "> ");
|
||||
@ -380,7 +380,7 @@ public class GraphHelper extends FormHandler {
|
||||
if (persistent)
|
||||
_out.write(" checked=\"checked\"");
|
||||
_out.write(">" +
|
||||
"<hr><div class=\"formaction\"><input type=\"submit\" class=\"acceot\" value=\"" + _("Save settings and redraw graphs") + "\"></div></form>");
|
||||
"<hr><div class=\"formaction\"><input type=\"submit\" class=\"accept\" value=\"" + _("Save settings and redraw graphs") + "\"></div></form>");
|
||||
} catch (IOException ioe) {
|
||||
ioe.printStackTrace();
|
||||
}
|
||||
@ -413,6 +413,7 @@ public class GraphHelper extends FormHandler {
|
||||
*/
|
||||
@Override
|
||||
protected void processForm() {
|
||||
if ("save".equals(_action))
|
||||
saveSettings();
|
||||
}
|
||||
|
||||
|
@ -78,8 +78,17 @@ class SummaryListener implements RateSummaryListener {
|
||||
//String names[] = _sample.getDsNames();
|
||||
//System.out.println("Add " + val + " over " + eventCount + " for " + _name
|
||||
// + " [" + names[0] + ", " + names[1] + "]");
|
||||
} catch (IllegalArgumentException iae) {
|
||||
// ticket #1186
|
||||
// apparently a corrupt file, thrown from update()
|
||||
_log.error("Error adding", iae);
|
||||
String path = _isPersistent ? _db.getPath() : null;
|
||||
stopListening();
|
||||
if (path != null)
|
||||
(new File(path)).delete();
|
||||
} catch (IOException ioe) {
|
||||
_log.error("Error adding", ioe);
|
||||
stopListening();
|
||||
} catch (RrdException re) {
|
||||
// this can happen after the time slews backwards, so don't make it an error
|
||||
// org.jrobin.core.RrdException: Bad sample timestamp 1264343107. Last update time was 1264343172, at least one second step is required
|
||||
|
@ -31,7 +31,9 @@
|
||||
%><%=intl._("Please report bugs on {0} or {1}.",
|
||||
"<a href=\"http://trac.i2p2.i2p/newticket\">trac.i2p2.i2p</a>",
|
||||
"<a href=\"https://trac.i2p2.de/newticket\">trac.i2p2.de</a>")%>
|
||||
<!--
|
||||
<%=intl._("You may use the username \"guest\" and password \"guest\" if you do not wish to register.")%>
|
||||
-->
|
||||
<p><%=intl._("Please include this information in bug reports")%>:
|
||||
</p></div><div class="sorry" id="warning2">
|
||||
<h3><%=intl._("Error Details")%></h3>
|
||||
|
@ -17,7 +17,9 @@
|
||||
%><%=intl._("Please report bugs on {0} or {1}.",
|
||||
"<a href=\"http://trac.i2p2.i2p/newticket\">trac.i2p2.i2p</a>",
|
||||
"<a href=\"https://trac.i2p2.de/newticket\">trac.i2p2.de</a>")%>
|
||||
<!--
|
||||
<%=intl._("You may use the username \"guest\" and password \"guest\" if you do not wish to register.")%>
|
||||
-->
|
||||
<p><i><%=intl._("Please include this information in bug reports")%>:</i>
|
||||
<p>
|
||||
<b>I2P version:</b> <%=net.i2p.router.RouterVersion.FULL_VERSION%><br>
|
||||
|
@ -1,3 +1,12 @@
|
||||
2014-02-10 zzz
|
||||
* Console:
|
||||
- Don't reset graph settings when clicking restart or shutdown on graphs page
|
||||
- Don't recommend guest login on trac, it's disabled
|
||||
- Catch and remove corrupt jrb file (ticket #1186)
|
||||
- Always set default language on /configui
|
||||
* Transports: Reduce target connection count again to reduce
|
||||
tunnel reject rate further
|
||||
|
||||
* 2014-02-08 0.9.11 released
|
||||
|
||||
2014-02-07 zzz
|
||||
|
@ -73,17 +73,17 @@ Seed update torrents
|
||||
Notify the following people:
|
||||
All in-network update hosts
|
||||
PPA maintainer
|
||||
Google code maintainer
|
||||
news.xml maintainer
|
||||
backup news.xml maintainer
|
||||
|
||||
Website files to change:
|
||||
Sync with mtn.i2p2.i2p
|
||||
Sync with mtn.i2p-projekt.i2p
|
||||
hosts.txt if it changed (copy from i2p.i2p mtn branch)
|
||||
i2p2www/__init__.py (release number)
|
||||
i2p2www/pages/downloads/list.html (checksums)
|
||||
i2p2www/static/news/news.xml
|
||||
New release announcement - see i2p2www/blog/README for instructions
|
||||
Sync with mtn.i2p2.i2p
|
||||
Sync with mtn.i2p-projekt.i2p
|
||||
|
||||
Announce on:
|
||||
#i2p, #i2p-dev (also on freenode side)
|
||||
|
@ -18,7 +18,7 @@ public class RouterVersion {
|
||||
/** deprecated */
|
||||
public final static String ID = "Monotone";
|
||||
public final static String VERSION = CoreVersion.VERSION;
|
||||
public final static long BUILD = 0;
|
||||
public final static long BUILD = 1;
|
||||
|
||||
/** for example "-test" */
|
||||
public final static String EXTRA = "";
|
||||
|
@ -211,7 +211,7 @@ class EventPumper implements Runnable {
|
||||
int failsafeInvalid = 0;
|
||||
|
||||
// Increase allowed idle time if we are well under allowed connections, otherwise decrease
|
||||
if (_transport.haveCapacity(45))
|
||||
if (_transport.haveCapacity(33))
|
||||
_expireIdleWriteTime = Math.min(_expireIdleWriteTime + 1000, MAX_EXPIRE_IDLE_TIME);
|
||||
else
|
||||
_expireIdleWriteTime = Math.max(_expireIdleWriteTime - 3000, MIN_EXPIRE_IDLE_TIME);
|
||||
|
@ -2846,7 +2846,7 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority
|
||||
|
||||
public void timeReached() {
|
||||
// Increase allowed idle time if we are well under allowed connections, otherwise decrease
|
||||
if (haveCapacity(45)) {
|
||||
if (haveCapacity(33)) {
|
||||
long inc;
|
||||
// don't adjust too quickly if we are looping fast
|
||||
if (_lastLoopShort)
|
||||
|
Reference in New Issue
Block a user