* 2012-07-30 0.9.1 released 2012-07-28 str4d * Console: theme fixes 2012-07-26 kytv * Update geoip.txt based on Maxmind GeoLite Country database from 2012-07-04 * Finnish, French, German, Spanish and Swedish translation updates from TX 2012-07-26 sponge * BOB Fix static references to Log 2012-07-24 sponge * BOB reset spin flag to enable restart from zap command 2012-07-24 str4d * Summary bar: disable fallback iframe in summary.jsi (so when JS is disabled the summary bar will not refresh at all) * Home page: - Replaced 16x16 icons with 32x32 ones - Updated icon for git.repo.i2p - Moved RestartStatus back above LocalDestinations 2012-07-24 zzz * LookaheadInputStream: Fix bug causing gunzip fails, esp. on Android * Router: Don't create router.ping file on Android * SSLEepGet: Fix on Android (ticket #668) 2012-07-21 zzz * i2psnark: Remove dark theme * Reseed: Add new cert for cowpuncher * SSU: Remove exception creation (ticket #665) 2012-07-21 str4d * Home page: unlinked the iframed pages for i2psnark and susimail (the pages /webmail and /torrents still exist, but the console links to the apps directly instead for now) 2012-07-19 str4d * Home page: replaced itoopie with an eepsite icon (c/o dr|z3d) for eepsites with no icon of their own. * i2psnark: - New light theme (c/o dr|z3d) which integrates with console light theme - Moved table heading text into tooltips to reduce visual clutter 2012-07-18 str4d * Home page: Added id3nt.i2p and git.repo.i2p 2012-07-18 zzz * Home page: Add colombo-bt.i2p, remove keys.i2p * i2psnark: Clear rate stats when restarting torrent 2012-07-16 str4d * console: work towards better integration - Wrapped the bundled apps in iFrames (with a link in the page header to open the app in a new tab): - i2ptunnel - i2psnark - susimail - susidns - Theme improvements - Added theme support to susimail and susidns - "susimail.theme=foo" in susimail.config - "theme=foo" on susidns config page - Extensive work on dark console theme (dr|z3d) - Improved integration of i2ptunnel in iframe - General improvements - New dark themes for i2psnark, susimail and susidns which integrate well with dark console theme (dr|z3d) - Tweaks to other themes (console and i2psnark) to work with the various structural changes (dr|z3d) - Added per-theme favicons - Updated IE shim to fix some issues - Summary bar improvements - Updated every console page to use Ajax for the summary bar - Falls back to iFrame if JS disabled - Ajax refresh time is adjustable - The summary bar is now customizable; sections can be added, removed and reordered as desired - Added/updated tooltips - Added a new summary bar section to show news headings when the main news display is hidden - Changes to structure of /home to bring it in line with rest of console * i2psnark - Reworked the torrent info/file manager page to improve the layout 2012-07-15 zzz * XORComparator: Reduce object churn (Ticket #658) 2012-07-12 kytv * Translations from Transifex: - Add new Greek translation - Dutch translation update 2012-07-01 zzz * i2psnark: - Don't send a keepalive to a peer we are going to disconnect - Disconnect peer when idle a long time - PeerCheckerTask cleanup - Static ref cleanup - Don't show a downloaded torrent file as "seeding" - Better torrent file download icon 2012-06-29 zzz * HTTP Proxy: Change the error code for unknown host from 404 to 500 * SimpleTimer: Fix logging * Streaming: - Allow at least 3 packets and up to half the window to be active resends instead of just 1, to reduce stall time after a packet drop - Increase fast retransmit threshold back to 3 to reduce retransmissions - Don't fast retransmit if we recently retransmitted it already - Allow double the window as long as gaps are less than the window - Don't set the MSS in a resent packet (saves 2 bytes) - Remove redundant calls to updateAcks() - Update activity timer when resending a packet - Reset unackedPacketsReceived counter at all places where acks are sent so it isn't wrong - Fix some places where the activeResends count could become wrong - Prevent storm of CLOSE packets - Never resend the whole packet in ackImmediately(), just send an ack - Cancel flusher timer in MessageOutputStream when closed - Move some createRateStats to ConnectionManager to reduce repeated calls - Cleanups, javadocs, logging, volatile, finals * Update: Increase eepget timeouts 2012-06-24 zzz * ElGamalAESEngine: Fix bad size estimate when tags are included, resulting in trailing zeros after the padding in the unencrypted data * i2psnark: Don't create a new PeerCoordinator after restart, as the TrackerClient holds on to the old one and that causes it to not get peers. Possibly fixes ticket #563. * I2PTunnel: Fix NPE on shared client creation, thx kytv * Transport: Add Ethiopia to hidden mode list 2012-06-21 zzz * I2CP: Make separate message ID counters per-destination, use atomic, increase max (could have caused "local loopback" problems) * IRC Client: Don't flush output unless out of input, so the streaming messages don't get split up unnecessarily * OCMOSJ, ElG, Streaming: log tweaks * TunnelInfo: Change msg counter from long to int * TunnelPeerSelectors: Minor refactoring to store context * TunnelPool: Fix bug where a tunnel was marked as reused when it wasn't * TunnelPoolManager: Use one ClientPeerSelector for all pools 2012-06-20 zzz * I2PSession: - Greatly simplify the VerifyUsage timers - Constructor cleanup 2012-06-19 zzz * i2psnark: - Hide buttons while stopping all * Socks: Pass remote port through * Streaming: - Listen only on local port if set - Listen only for streaming protocol if configured (new option) - Javadocs re: ports 2012-06-18 zzz * i2psnark: - Improve torrent shutdown handling to maximize chance of announces getting to tracker - Thread task to open tunnel and improve UI feedback while open is pending - Clean up delete-torrent messages - Remove redundant shutdown hook - Avoid NPE in PEX message handling - Log tweaks 2012-06-15 zzz * I2PSocketEepGet: Use specified port * I2PTunnel: - Don't strip port from an I2P URL - More client options cleanups - Options changes now propagate to running socket managers and sessions, and through to the router - Better parsing of jump server URLs * NetDB: Only publish stats every so often, to improve anonymity while preserving the ability to monitor the network (effective next release) * SocketManager: - Simplify factory, use 4-arg constructor, make fields final, deprecate 0-arg constructor - Improve how options are updated - Javadocs 2012-06-13 zzz * I2PSocketEepGet: Set port to 80 * I2PTunnel: - Pass port through HTTP client proxy - HTTP server proxy sets host header to the value of "spoofedhost.xx" option for port xx - Set client options more efficiently * i2psnark: Possible fix for piece-after-choke * Streaming: - Channel cleanups and comments - New I2PSocketAddress 2012-06-11 zzz * i2psnark: - Display torrent file downloads in torrent area - Sort magnets and downloads first - Fix sorting problem when torrent dir is a symlink - Reduce max file idle time - Reduce TrackerClient threads - Reduce delay between peer adds for faster startup - Thread the announces and reduce timeout when stopping * NativeBigInteger: Workaround for Raspberry Pi to load the correct lib * Router: Don't let shutdown tasks hang the shutdown (tickets #564, #566) 2012-06-08 zzz * i2psnark: - Move private tracker config from create box to torrent config - Refactor private and open tracker configuration - Add private indication on details page * netdb.jsp: Don't show our info on summary page 2012-06-04 zzz * i2psnark: Take tracker out of opentracker list when removed 2012-06-03 kytv * Translation updates: - Add Hungarian language from Transifex (thanks AdminLMH!) - Italian language updates from Transifex (thanks ColumboBT) 2012-06-02 zzz * i2psnark: Improve opentracker configuration * Job Queue: Add failsafe check 2012-06-01 zzz * Console: Tab the netdb and profile pages * i2psnark: Fix partially-complete torrent not announcing * NetDB: Reduce flood redundancy from 8x to 6x 2012-05-31 zzz * i2psnark: - Add per-hour conn limit - Blacklist peer after two bad handshakes - Reduce connect timeout - Close connection immediately if bad protocol - Stop adding peers when we hit the limit - Lower limit for outbound connections so we give new peers a better chance in large swarms 2012-05-30 zzz * Graphs: Reduce log EOF error to warn * i2psnark: - Increase max upload (ticket #645) - Increase per-minute conn limit from 6 to 8 - Improve rarest-first behavior - Handle URI encoding, UTF-8, and multiple trackers in magnet links * Timestamper: - Move from core to router, leave stub in core so it doesn't break compatibility. This removes a thread in app context and prevents any app context from running NTP; external clients must use the time received from the router. - Increase query interval 2012-05-28 kytv * i2prouter: Add support so that 'i2prouter install' will work in ArchLinux * jbigi/jcpuid scripts: Improve support for ArchLinux 2012-05-25 kytv * German, Italian, Spanish, and Swedish translation updates from Transifex 2012-05-23 zzz * i2psnark: - Fixes when complete except for skipped files (ticket #447) status in UI, don't connect outbound, disconnect seeds when done - Custom tracker map AIOOBE fix - More classes pkg private * jobs.jsp: Add more queue diagnostics 2012-05-22 zzz * i2psnark: - Refactor tracker map - Prevent torrent shutdown when changing file priority to skip - Fix deadlock when changing file priorities * RoutingKeyModifier: Update after large clock shift 2012-05-20 zzz * Console: Add full file path to thread dump message * i2psnark: - Create sparse files at torrent creation and delay "ballooning" until first write (ticket #641, #447) - Redo clear messages button - Concurrent message queue * Profiles: reduce same-country bonus * RoutingKeyModifier: Several changes to ensure the routing key is correctly changed just after midnight. 2012-05-19 zzz * i2psnark: - Store received chunks in temp files - Don't allocate from heap for unneeded chunks - Remove peer count restriction for torrents with large pieces - Use priorities and rarest calculations to sort partials - Preserve p parameter in clear messages link 2012-05-13 zzz * Console: Add X-Frame-Options to headers, disable with routerconsole.disableXFrame=true * 2012-05-02 0.9 released