I2P Address: [http://git.idk.i2p]

Skip to content
Snippets Groups Projects
history.txt 221 KiB
Newer Older
zzz's avatar
zzz committed
2008-11-13 zzz
    * Streaming:
      - Add more info to Connection.toString() for debugging
      - Fix lifetimeMessages{Sent,Received} stats
      - Reduce RTT damping to 0.875 (was 0.9)
      - Add a stream.con.initialRTT.{in,out} stats
    * Build files:
      - Use the depend task with caching for more accurate dependencies
      - Make sure the routerconsole gets the latest router version
      - Fix addressbook repeated builds
    * HTTPClient: Add config options to pass Via, Referer,
      and User-Agent through
    * Blocklists: Fix lists with hashes only

2008-11-11 zzz
    * Streaming - Fix several bugs and improve performance
      when the initial data is larger than one MTU,
      e.g. HTTP GETs with large URLs, CGI params or cookies,
      or large HTTP POSTS:
      - Don't reject additional packets received without a
        send stream ID (i.e. sent before the SYN ACK was received)
      - Put unknown non-SYN packets on the SYN queue also
        so they won't be rejected
      - Reduce flusher delay to 250ms (was 500)
      - Flush unless window is full (was window is non-empty)
    * Streaming: Enforce a minimum MTU of 512
    * I2PTunnel: Change "interactive" max window size to 16 (was 1)
    * NetDb: Fix a deadlock caused by last checkin

zzz's avatar
-9  
zzz committed
2008-11-09 zzz
    * build.xml: Build speedups:
      - Don't distclean in the updaterRouter target
      - Don't make prepUpdate and prepupdateSmall depend
        on distclean
      - Don't make susimail build always clean
      - Make pkg depend on distclean to be sure
      - Clean out more routerconsole and susidns files in 'ant clean'
      - i2ptunnel, routerconsole, susidns:
        Only build WEB-INF when necessary
      - systray: Only build jar when necessary
      - Don't build i2psnark standalone for the updater target
    * configclients.jsp: Provide a link when starting a webapp
    * configtunnels.jsp:
      - Code cleanup
      - Add 4-hop option
      - Remove +/- 0-2 option
    * javadoc: Add some more package.html files
    * I2PTunnelHTTPServer: Put the requestor's dest hash
      in the request headers
    * Jetty: Add a I2PRequestLog class to log request dest hash
    * NetDb: Don't drop routerInfos if we have connectivity
      issues or other problems
    * NTCP: Lower idle timeout to 10m (was 15m)
    * Routerconsole: Replace wtf msg w/ something nicer
    * Tunnel BuildHandler: add config router.participantOnly,
      set to true to refuse OBEP and IBGW roles, should
      reduce connections significantly if set.

zzz's avatar
zzz committed
2008-11-02 zzz
    * Certificates:
      - Add a signed Certificate type
      - Add a main() to PrivateKeyFile to generate
        Destinations with various Certificate types
      - Add a VerifiedDestination class to check Certificates
        of various types
      - Add a HashCash library from http://www.nettgryppa.com/code/
        (no distribution restrictions)
      - Allow non-null Certificates in addressbook
    * I2PTunnel: Move some wayward stats to the I2PTunnel group
    * NamingServices: Implement caching in the abstract class
    * NewsFetcher: Fix last updated time
    * Streaming: Increase MTU to 1730 (was 960);
      see ConnectionOptions.java for analysis
    * Throttle: Reduce default max tunnels to 2000 (was 2500)
    * clients.config: Disable SAM and BOB by default for new installs

2008-10-26 zzz
zzz's avatar
zzz committed
    * config.jsp: Add more help
    * peers.jsp: Clean up 'Listening on' formatting
    * profiles.jsp: Don't override locale number format
    * netdb.jsp: Indicate if hidden
    * summary.jsp: Indicate if hidden
    * i2ptunnel/edit.jsp: Disable word wrap in textarea
    * Blocklist: Change logging from ERROR to WARN
    * FloodfillMonitor:
       - Fix ff count (we forgot ourselves)
       - Don't become ff if hidden
    * HandleFloodfillDatabaseLookupMessageJob:
      Send back your routerinfo with the DSRM if not ff to
      spread the word that you aren't ff anymore
    * I2Ping:
       - Add -n count option
       - Add rtt output
       - Enhance help
       - Fix option handling
    * More findbugs cleanups
    * NetDb:
       - Fix behavior when router.isHidden=true
       - Delay StartExplorersJob for 10m at startup
       - Update dbLookup profile stats in FloodOnlySearchJob
         and FloodfillVerifyStoreJob
       - Fix response time store in profile in SearchJob
    * Stats:
       - Remove unused tunnel.buildSuccess and tunnel.buildFailure
       - Remove tunnel.buildRequestTime and 5m rate stats from
         netDb, effective in next release
    * UDP:
       - Don't do peer tests when hidden
       - Don't offer to introduce when hidden
       - Don't continually rebuild routerInfo when hidden
       - Don't continually rebuild routerInfo when
         i2np.udp.internalPort is set but i2np.udp.port is not
       - Remove some unused functions

zzz's avatar
zzz committed
2008-10-20 zzz
    * configclients.jsp: Handle clients with no args
    * index.jsp: Add readme_nl.html (thanks mathiasdm!),
      readme_sv.html (thanks hottuna!)
    * Big findbugs cleanup
    * Client: Prevent a race causing session reconnect
    * FloodfillMonitor:
       - Don't become ff if clock skew is high
       - Rebuild routerinfo immediately when ff status changes
    * FloodOnlySearchJob: Recover better if the floodfills
      you know are no longer floodfill or are gone
    * Installer: Bump min JRE to 1.5
    * ShellCommand: Fix main()

2008-10-14 zzz
    * index.jsp: Add multilanguage support for readme.html;
      add readme_de.html (thanks devzero!)
    * configupdate.jsp, configadvanced.jsp:
      Disable word wrap in textareas
    * install*.txt: Update for 1.5
    * summary.jsp: Remove failing peer count

2008-10-10 zzz
    * Profiles: Reduce reject penalty in
      capacity calculation to avoid a congestion collapse
    * Throttle: Change reject to BANDWIDTH from CRIT on shutdown
      for improved anonymity
    * Tunnels: Implement random discard to enforce share limit
    * Tunnel Tests: Add time for outbound delay, to avoid
      congestion collapse
    * UDPPacketReader: Adjust logging
    * build files: Change to source=1.5, target=1.5
    * configpeer.jsp: Table cleanup
    * i2psnark: Change default tunnel length from 1+1 to 2+0
    * peers.jsp: Change <,> to in,out for UDP

2008-10-09 sponge
    * Update version to -3
    * BOB database threadlocking fixes

sponge's avatar
sponge committed
2008-10-08 sponge
    * Update version to -2
    * Bugfixes and additions to BOB

sponge's avatar
sponge committed
2008-10-07 sponge
    * Bugfixes and additions to streaming.
    * Added SimpleStore class in utils.
    * Fixed SimpleTimer class to allow exit.
    * BOB (Basic Open Bridge) added.

* 2008-10-05  0.6.4 released

2008-10-05 Complication
    * Update versions, package release

zzz's avatar
zzz committed
2008-09-29 zzz
    * i2psnark: Add codevoid link, remove mastertracker

2008-09-23 zzz
    * config.jsp: Add some reachability help
    * configpeer.jsp: Add blocklist info
    * help.jsp: Add link to German FAQ
    * tunnels.jsp: Fix inactive participating count
    * SearchReplyJob: Don't look up references to shitlisted peers
    * TunnelPeerSelector: Avoid a peer for 20s after a reject or timeout

2008-09-20 zzz
    * NetDb: Fix the totally broken "check new routers against blocklist"
      code from 3 checkins ago
    * tunnels.jsp: Sort participating tunnels by usage, display rate

zzz's avatar
zzz committed
2008-09-19 zzz
    * Tunnels:
      - Add missing message accounting for inbound gateways,
        we were underestimating participating traffic because of it,
        and the tunnels were classified "inactive"
      - Add participating tunnel role on tunnels.jsp

zzz's avatar
zzz committed
2008-09-18 zzz
    * Throttle:
      - Correctly check inbound and outbound total bw limits separately
      - Fix up and actually use the tunnel.participatingMessageCount stat,
        favor it if lower than the total bw stat, so that
        client traffic isn't included for throttle decisions
      - Reduce min message count from 60 to 40
    * Tunnel Dispatcher:
      - Add tunnel.participatingBandwidth stat
      - Remove all 3h and 24h stats

2008-09-15 zzz
    * FloodOnlySearchJob:
      - Ask non-floodfill peers if we don't know any floodfills
      - Lookup hashes in the DatabaseSearchReplyMessage if we
        don't know enough floodfills
    * NetDb: Check new routers against blocklist
    * Router: Shutdown clients first
    * Throttle:
      - Use 60s rather than 10m tunnel.participatingMessageCount stat
      - Fix a summary bar message
    * Tunnel Dispatcher: Update tunnel.participatingMessageCount
      every 20s, rather than at tunnel expiration, to maintain
      a more current stat
    * Tunnel Pool:
      - Prevent excess zero-hop tunnels
      - Always wait before looping in BuildExecutor
    * configlogging.jsp: Increase box width
    * logs.jsp: Remove unused connection log, cut wrapper log output in half

2008-09-12 zzz
    * Blocklist: Fix a log message format
    * HarvesterJob: Don't instantiate if disabled
    * i2psnark:
      - Add config i2psnark.linkPrefix to enable access to completed
        torrents from a different machine - examples:
           i2psnark.linkPrefix=file://///localserver/path/to/files/
           i2psnark.linkPrefix=http://localwebserver/path/
        (Stop i2psnark, add to i2psnark.config, restart)
      - Remove Galen and NickyB trackers
    * NetDb: Add netDb.exploreKeySet stat
    * netdb.jsp: Add parameter ?r=xxxxxx to view a single routerinfo,
      and ?r=. to view our own; change links on other pages too
    * Transport: Make 0.0.0.0/8 and 169.254.0.0/16 private

2008-09-06 zzz
    * EepGet command line: Fix byte counts after a failed resume
    * NTCP: Mark unreachable on outbound connection timeout
    * Shitlist: Fix partial shitlisting (still unused though)
    * Summary Bar: Warn if firewalled and floodfill
    * Throttle: Combine current and last bw measurement,
      reduce default max tunnels to 2500 (was 3000)
    * Tunnel BuildHandler: Logging cleanup
    * UpdateHandler: Cleanup, clarify failure message
    * DataHelper: Prepare for 999 day uptime :)

2008-08-29 zzz
    * Tunnel BuildExecutor: Debug cleanup
    * Profiles: Penalize capacity when tunnel build request times out
    * Shutdown: Call the shutdown hooks before the router shutdown
      rather than after
    * Stats: Remove tunnel.Bps.* stats when the tunnel pool is closed

2008-08-27 zzz
    * Floodfill Peer Selector: Prefer already-connected floodfill
      peer for direct RouterInfo stores, to mimimize floodfill
      connections
    * Peer Profiles: Classify connected peers as "active",
      which will help improve the fast pool
    * Transport Manager: Add isEstablished(Hash)
    * NTCP: Reduce max idle time from 20m to 15m
    * NetDb stats: Post-0.6.3 clean up

* 2008-08-24  0.6.3 released

2008-08-24 Complication
    * Update versions, package release

2008-08-20 zzz
    * Blocklists: Handle blank lines and \r\n in blocklist.txt
    * NTCP: Add connection limit, set by i2np.ntcp.maxConnections,
      default is 500 (very high for now)
    * Persistent data store: Increase write limit from 300 to 600
      so floodfill routers don't get backed up
2008-08-13 zzz
    * i2psnark: Fix OOM vulnerability by checking incoming message length
      (thanks devzero!)

zzz's avatar
zzz committed
2008-08-04 zzz
    * Floodfill Peer Selector:
      - Avoid peers whose netdb is old, or have a recent failed store,
        or are forever-shitlisted

zzz's avatar
zzz committed
2008-07-30 zzz
    * Blocklists:
      - New, disabled by default, except for blocking of
        forever-shitlisted peers. See source for instructions
        and file format.
    * Transport - Reject peers from inbound connections:
      - Check IP against blocklist
      - Check router hash against forever-shitlist, then block IP

zzz's avatar
-9  
zzz committed
2008-07-16 zzz
    * configpeer.jsp: New
    * i2psnark: Open completed files read-only the first time
    * profiles.jsp: Show bonuses, link to configpeer.jsp
    * PRNG: Move logging from wrapper to router log
    * SSU:
        Don't proactively reconnect until 30m idle, so
        we don't lose introducer tags prematurely

2008-07-16 Oldaris
    * Imports cleanup

zzz's avatar
zzz committed
2008-07-07 zzz
    * i2psnark:
      - Repair corrupted files with wrong length rather than die
      - Register shutdown hook to properly shutdown torrents when
        the router shuts down, hopefully will reduce corruption
      - Add Galen tracker
zzz's avatar
-9  
zzz committed
      - Add a note about how to change directory
zzz's avatar
zzz committed
    * HTTP Proxy: Don't show jump links for unknown jump hosts
    * KeyManager:
      - Don't write router key backup when leaseSet keys are updated
      - Synchronize to prevent concurrent writes (thanks Galen!)
      - Backup keys every 7 days instead of every 5 minutes
    * LoadTestManager: Don't instantiate, it's disabled 
    * Router console: Flag placeholder pages as noncacheable
    * Streaming lib:
      - Change some logging from WARN to INFO
      - Clean up toString()
    * SSU:
      - Try to pick better introducers by checking shitlist,
        wasUnreachable list, failing list, and idle times
      - To keep introducer connections up and valid,
        periodically send a "ping" (a data packet with no data and no acks)
        to everybody that has been an introducer in the last two hours
      - Add a stat udp.receiveRelayRequestBadTag, make udp.receiveRelayRequest only for good ones
      - Remove some 60s and 5m stats, leave only the 10m ones
      - Narrow the range for the retransmit time after an allocation fail
      - Adjust some logging

zzz's avatar
zzz committed
2008-06-30 zzz
    * configstats.jsp: Fix NPE when no stats checked (thanks nothome27!)
    * i2psnark:
      - Fix NPE caused by race (thanks echelon!)
      - Add mastertracker, remove de-ebook
    * NTCP:
      - Try to fix 100% CPU, caused perhaps by JVM NIO bug...
      - Fix failsafe stats
    * PersistentDataStore: More leaseSet code cleanup
    * SimpleTimer: Change congestion message from error to warn

2008-06-24 zzz
    * FloodfillMonitorJob: Change range from 5-7 to 4-6
    * NTCP: Remove getIsInbound(), duplicate of isInbound()
    * PersistentDataStore: Don't try to remove nonexistent leaseSet files
    * Router console: add placeholder pages for i2psnark, i2ptunnel,
      susidns, and susimail for use when the .wars are not running
    * Streaming lib: Increase max window size to 128

2008-06-22 welterde
    * Optimize I2PDatagramDissector

2008-06-20 zzz
zzz's avatar
zzz committed
    * configclients.jsp: Add start button for clients and webapps.
    * PRNG: Add two stats
    * Summary bar:
      - Display Warning for TCP private IP address
      - Display PRNG stats
    * OutNetMessage: Change cache logging from WARN to INFO

2008-06-17 zzz
    * Comm System: Add new STATUS_HOSED for use when UDP bind fails
    * Summary bar: Display helpful errror message when UDP bind fails
    * UDP: Don't bid when UDP bind fails
    * configclients.jsp: Implement saves for clients and webapps.

2008-06-16 zzz
    * UDP: Prevent 100% CPU when UDP bind fails;
      change bind fail message from ERROR to CRIT
    * Refactor LoadClientAppsJob.java, move some functions to new
      ClientAppConfig.java, to make them easily available to
      new configclients.jsp
    * RouterConsoleRunner: Use a new config file, webapps.config,
      to control which .wars in webapps/ get run. Apps are enabled
      by default; disable by (e.g.) webapps.syndie.startOnLoad=false
      Config file is written if it does not exist.
      Implement methods for use by new configclients.jsp.
    * configclients.jsp: New. For both clients and webapps.
      Saves are not yet implemented.

2008-06-10 zzz
    * Floodfill: Add new FloodfillMonitorJob, which tracks active
      floodfills, and automatically enables/disables floodfill on
      Class O routers to maintain 5-7 total active floodfills
    * NetDb Stats:
      - Remove several more stats
      - Don't publish bw stats in first hour of uptime
      - Publish floodfill stats even if other stats are disabled
      - Changes not effective until 0.6.2.1 to provide cover.
    * Throttle: Use BANDWIDTH rather than CRIT as the rejection reason at
      startup, so peers don't list us as failing.
    * graphs.jsp: Fix a bug where it tries to display the combined
      bandwidth graph when it isn't available

zzz's avatar
zzz committed
2008-06-09 zzz
    * Propagate i2.i2p.i2p-0.6.2.1-pre branch to i2p.i2p

zzz's avatar
zzz committed
2008-06-09 zzz
    * Reachability: Restrict peers with no SSU address at all from inbound tunnels
    * News:
      - Add display of last updated and last checked time
        on index.jsp and configupdate.jsp
      - Add a function to get update version (unused for now)
    * config.jsp: Add another warning

2008-06-07 zzz
    * NetDb: Tweak some logging on lease problems
    * Shitlist:
      - Add shitlistForever() and isShitlistedForever(), unused for now
      - Sort the HTML output by router hash
    * netdb.jsp:
      - Sort the lease HTML output by dest hash, local first
      - Sort the router HTML output by router hash

zzz's avatar
zzz committed
2008-06-06 zzz
    * LeaseSet:
      - Sort the leases by expiration date in TunnelPool.locked_buildNewLeaseSet()
        to make later LeaseSet comparisons reliable. This cleans up the code too.
      - Fix broken old vs. new LeaseSet comparison
        in ClientConnectionRunner.requestLeaseSet(),
        so that we only sign and publish a new LeaseSet when it's really new.
        Should reduce outbound overhead both in LeaseSet publishing and LeaseSet bundling,
        and floodfill router load, since locked_buildNewLeaseSet() generates
        the same LeaseSet as before quite frequently, often just seconds apart.

zzz's avatar
zzz committed
2008-06-05 zzz
    * LeaseSet - code cleanup:
      - Add exception to enforce max # of leases = 6, should be plenty
      - Rewrite TunnelPool.locked_buildNewLeaseSet() so it doesn't add lots of
        leases and then immediately remove them again, triggering
        the new leaseSet size exception
      - Remove the now unused LeaseSet.removeLease(lease) and
        LeaseSet.removeLease(index)
      - Store first and last expiration for efficiency
    * Peer Profiles - Preparation for using bonuses:
      - Use CapacityBonus rather than ReachablilityBonus in the Capacity calculation
      - Persist CapacityBonus rather than ReachabilityBonus
      - Include SpeedBonus in the Speed calculation
      - Prevent negative values in Speed and Capacity when using bonuses
      - Clean up SpeedCalculator.java
    * HTTP Proxy error pages: Don't say eepsites are 'temporarily' down since we don't know
    * Add some config files for a future small distribution
    * configtunnels.jsp: Add warnings for <= 0 and >= 4 hop configurations

zzz's avatar
zzz committed
2008-06-01 zzz
    * Client Apps: Add new parameter for clients.config,
        clientApp.x.startOnLoad=false, to disable loading
        (for SAM for example). Defaults to true of course.
    * Logging: Move common WARN output to DEBUG so we can ask users to
        set the default log level to WARN without massive spewage
    * ProfileOrganizer: Restrict !isSelectable() (i.e. shitlisted) peers from the High Capacity tier,
      not just the Fast tier, since we don't use them for tunnels anyway
    * SAM: Add some compiler flexibility to two obscure makefiles
    * i2psnark: Change displayed peer idents to match that shown by bytemonsoon
      (sponge's suggestion)
    * summary bar:
      - Hide ident, provide a tooltip and a link
      - Add a warning if you are firewalled and class O

zzz's avatar
zzz committed
2008-06-07 Complication
    * Fix version in news.xml so it could be published

* 2008-06-07  0.6.2 released

2008-06-07 Complication
    * Write announcement and prepare for release

2008-05-29 zzz
zzz's avatar
zzz committed
    * Fix up initialNews.xml

2008-05-27 zzz
    * Transport:
      - NTCP and UDP: Don't bid to connect to private IP addresses, mark unreachable
      - UDP: Don't bid when IP address missing, mark unreachable

2008-05-26 zzz
    * Throttle: Set a default router.maxParticipatingTunnels = 3000 (was none)
    * Stats: Add a fake uptime if not publishing stats, to get participating tunnels
    * build.xml:
      - Add an updaterSmall target which includes only the essentials
      - Add an updaterRouter target which includes only i2p.jar and router.jar
      - Clean up the build file some 
      - Remove empty eepsite/ and subdirs from i2pupdate.zip
    * configtunnels.jsp: Add warning
    * i2psnark: Catch a bencode exception (bad peer from tracker) earlier
    * i2psnark-standalone: Fix exception http://forum.i2p/viewtopic.php?p=12217

2008-05-22 welterde
    * Change jetty download location in build script

zzz's avatar
zzz committed
2008-05-20 zzz
    * Reachability:
      - Call the previously unused profile.tunnelTestFailed()
        (redefined to include a probability argument)
        and severely downgrade a peer's capacity upon failures,
        depending on tunnel length and direction.
        This will help push unreachable and malicious peers
        out of the High Capacity tier.
      - Put recent fail rate on profiles.jsp
    * ProfileOrganizer: Logging cleanup
    * eepsite_index.html: Update add-host and jump links
    * HTTP Proxy: Remove trevorreznik jump server from list

dev's avatar
dev committed
2008-05-20 welterde
    * implemented PrivateKeyFile

2008-05-18 zzz
    * Throttle: Reject tunnels for first 20m uptime (was 10m)
    * TunnelPeerSelectors:
       - Re-enable strict ordering of peers,
         based on XOR distance from a random hash
       - Restrict peers with uptime < 90m from tunnels (was 2h),
         which is really 60m due to rounding in netDb publishing.
    * i2psnark:
       - Limit max pipelined requests from a single peer to 128KB
         (was unlimited; i2p-bt default is 5 * 64KB)
       - Increase max uploaders per torrent to 6 (was 4)
       - Reduce max connections per torrent to 16 (was 24) to increase
         unchoke time and reduce memory consumption
       - Strictly enforce max connections per torrent
       - Choke more gradually when over BW limit
    * help.jsp: Add a link to the FAQ
    * peers.jsp: Fix UDP direction indicators
    * hosts.txt: Add update.postman.i2p

zzz's avatar
zzz committed
2008-05-12 zzz
    * Outbound message:
      - Tweak the cache key for efficiency
    * Stats:
      - Require two udp stats when stats.full=false, caused NPE on peers.jsp
    * Summary bar:
      - Add messages when dropping tunnel requests due to load
    * Update Handler:
      - Add postman to the list
    * i2psnark:
      - Randomize the PeerCheckerTask start times to make global limiting
        work better
      - Calculate bw limits using 40s rather than 4m averages to make
        bw limiting work better
      - Change default bw limit from uplimit/3 to uplimit/2 due to
        overhead reduction from the leaseset bundling change
    * libjbigi:
      - Add documentation on dynamic build option
      - Add two speed tests to the build script
      - Clean up the build script, make it easier to build dynamic

zzz's avatar
zzz committed
2008-05-10 zzz
    * NetDb: Don't write the my.info file to disk, it isn't used for anything
    * Stats:
      - Simplify oldstats.jsp if no events in a stat
      - Fix the hosed inNetPool.droppedDeliveryStatusDelay stat
        (caused by an SSU hack)
    * Update Handler:
      - Add option to download and verify only
      - Add distinct error message if version check fails

2008-05-09 welterde
    * Add an update URL to the list

zzz's avatar
zzz committed
2008-05-07 zzz
    * Reachability:
      - Restrict peers requiring introducers from inbound tunnels,
        since it's slow and unreliable... and many of them advertise
        NTCP, which seems unlikely to work
      - Provide warning on summary bar if firewalled with inbound NTCP enabled
    * Stats: Remove the bw.[send,recv]Bps[1,15]s stats unless
      log level net.i2p.router.transport.FIFOBandwidthLimiter >= WARN
      at startup (you didn't get any data unless you set the log level anyway)
    * oldstats.jsp: Don't put 2 decimal places on integer event counts
    * Remove the Internals link from the menu bar
    * i2psnark: Extend startup delay from 1 to 3 minutes

2008-05-06 welterde
    * HTTP Proxy: Add i2jump.i2p jump service

zzz's avatar
-1  
zzz committed
2008-05-05 zzz
    * NetDb Stats: Cleanup of commented out stats
    * Outbound message:
      - Fix a couple of tunnel cache cleaning bugs
      - Cache based on source+dest pairs rather than just dest
      - Send the reply leaseSet only when necessary,
        rather than all the time (big savings in overhead)
      - Enable persistent lease selection again
      - Logging tweaks
    * Reachability:
      - Restrict <= .32 SSU-only peers from inbound tunnels,
        since they don't know if they are unreachable
      - Have SSU bid aggressively when it has less than 3 peers, so
        we can determine our IP address and do peer testing.
        Otherwise a router may never determine its IP address or reachability status.
    * Summary bar:
      - Add reachability status
      - Add participating tunnel acceptance status
    * Throttle: Reject tunnels for first 10m uptime
    * I2PTunnel: Change default outproxy to false.i2p
zzz's avatar
zzz committed
    * profiles.jsp: Add router version
zzz's avatar
-1  
zzz committed

zzz's avatar
zzz committed
* 2008-04-26  0.6.1.33 released

zzz's avatar
zzz committed
2008-04-20 zzz
    * Outbound message/Reachability:
      - Fix a bug from -19 causing the persistent lease selection
        removed in -17 to be back again
      - Use netDb-listed-unreachable instead of detected-unreachable
        for exclusion of unreachable peers from selected leases,
        as there are potential anonymity problems with using
        detected-unreachable
      - Tweak logging some more
    * NetDb stats: Remove a couple more including the inefficient stat_identities

zzz's avatar
zzz committed
2008-04-17 zzz
    * Reachability:
      - Track unreachable peers persistently
        (i.e. separately from shitlist, and not cleared when they contact us)
      - Exclude detected unreachable peers from inbound tunnels
      - Exclude detected unreachable peers from selected leases
      - Exclude detected unreachable floodfill peers from lookups
      - Show unreachable status on profiles.jsp

zzz's avatar
zzz committed
2008-04-16 zzz
    * SSU/Reachability:
      - Extend shitlist time from 4-8m to 40-60m
      - Add some shitlist logging
      - Don't shitlist twice when unreachable on all transports
      - Exclude netDb-listed unreachable peers from inbound tunnels;
        this won't help much since there are very few of these now
      - Remove 10s delay on inbound UDP connections used for the
        0.6.1.10 transition
      - Track and display UDP connection direction on peers.jsp
      - Show shitlist status in-line on profiles.jsp

2008-04-15 zzz
    * SSU Reachability/PeerTestManager:
      - Back out strict peer ordering until we fix SSU
      - Back out persistent lease selection until we fix SSU
      - Fix detection of UDP REJECT_UNSOLICITED by recording status on expiration
      - Increase known Charlie time to 10m; 3m wasn't enough
      - Don't continue retransmitting peer test if we know Charlie
      - Don't run multiple peer tests at once
      - Tighten test frequency range to 6.5-19.5m, was 0-26m

2008-04-12 zzz
    * Addressbook: Disallow '.-' and '-.' in host names
    * NTCP: Don't drop a connection unless both directions are idle;
            Fix idle time for outbound connections
    * Outbound message: Make sure cached lease is in current leaseSet
    * Stats: Put all NetworkDatabase stats in same group
    * TunnelPool: Stop building tunnels and leaseSets after client shutdown
    * i2psnark: Add locking to prevent two I2CP connections

zzz's avatar
zzz committed
2008-04-07 zzz
    * i2psnark:
      - Implement upstream bandwidth limiting
      - Fix a rare NPE at startup/shutdown
      - Really increase retries for .torrent fetch
    * profiles.jsp: Minor cleanup
    * DataHelper: Only format < 5s as ms
    * Eepget: Fix percentage output on command line eepget retries
    * Lower partipating message priority from 400 to 200
    * NTCP: Add a debug message
    * Outbound message: Minor cleanup

2008-03-30 zzz
    * ExploratoryPeerSelector: Try NonFailing even more
    * HostsTxtNamingService: Add reverse lookup support
    * Outbound message: Minor cleanup
zzz's avatar
zzz committed
    * i2psnark TrackerClient: Minor cleanup
    * checklist.txt: Minor edit
    * hosts.txt: Add perv.i2p, false.i2p, mtn.i2p2.i2p
    * i2ptunnel.config: Change CVS client to mtn
    * netdb.jsp: Show leaseSet destinations using reverse lookup
    * profiles.jsp: First cut at showing floodfill data

2008-03-27 zzz
    * Send messages for the same destination to the same inbound
      lease to reduce out-of-order delivery.
    * ExploratoryPeerSelector: Back out the floodfill peer exclusion
      for now, as it prevents speed rating of those peers

2008-03-26 zzz
    * ReseedHandler: Support multiple urls,
      add netdb.i2p2.de as a 2nd default

zzz's avatar
zzz committed
2008-03-25 zzz
    * i2psnark:
      - Add support for secondary open trackers
      - Refactor and simplify the TrackerClient code
      - Add welterde's tracker to the default list
      - Don't have eepget retry announces
      - Slow down tracker contacts if they've failed for a while
      - Add some debug support showing connections (?p=2)
    * hosts.txt: Add nickyb.i2p, tracker.welterde.i2p
zzz's avatar
zzz committed

2008-03-22 zzz
    * NewsFetcher: Fix bug causing fetch every 10m

zzz's avatar
zzz committed
2008-03-22 zzz
    * Tunnel Testing:
      - Fix counting so it really takes 4 consecutive failures
        rather than 4 total to remove a tunnel
      - Credit or blame goes to the exploratory tunnel as well
        as the tunnel being tested
      - Adjust tunnel test timeout based on tunnel length
    * ExploratoryPeerSelector: Tweak logging
    * ProfileOrganizer: Adjust integration calculation again
    * build.xml: Add to help
    * checklist.txt: Tweak
    * readme.html: Fix forum links
    * netDb: Remove tunnel.testFailedTime

zzz's avatar
zzz committed
2008-03-19 zzz
    * ExploratoryPeerSelector:
      - Exclude floodfill peers
zzz's avatar
zzz committed
      - Tweak the HighCap vs. NonFailing decision; try NonFailing
        at least a minimum % of the time
zzz's avatar
zzz committed
    * i2psnark: Increase retries for .torrent fetch
    * IRC Proxy: Prevent mIRC from sending an alternate DCC request
      containing an IP
    * readme.html: Reorder some items
    * Stats: Add some more required stats
    * Streaming lib: Fix slow start to be exponential growth,
      fix congestion avoidance to be linear growth.
      Should speed up local connections a lot, and remote
      connections a little.

2008-03-14 zzz
    * Floodfill Search:
       - Prefer heard-from, unfailing, unshitlisted floodfill peers

zzz's avatar
zzz committed
2008-03-14 zzz
zzz's avatar
zzz committed
    * ProfileOrganizer:
       - Use more recent stats to calculate integration
zzz's avatar
zzz committed
       - Show that fast peers are also high-capacity on profiles.jsp
    * readme.html: Update Syndie link
    * TunnelPool: Update comments
    * netDb: Report 1-2h uptime as 90m to further frustrate tracking,
      get rid of the 60s tunnel stats
      (effective as of .33 to provide cover)

2008-03-13 zzz
zzz's avatar
zzz committed
    * Floodfill Search:
       - Fix a bug that caused a single FloodfillOnlySearchJob
         instance to be run multiple times, with unpredictable
         results
       - Select ff peers randomly to improve reliability
       - Add some bulletproofing

zzz's avatar
zzz committed
2008-03-11 zzz
    * ProfileOrganizer:
       - Don't require a peer to be high-capacity to be
         well-integrated (not used for anything right now,
         but want to get it right for possible floodfill verification)
       - Don't fall back to median for high-capacity threshold
         if the mean is higher than the median, this prevents
         frequent large high-capacity counts
       - Fix high-capacity selector that picked one too many
    * Console: put well-integrated count back in the summary

2008-03-10 zzz
    * EepGet: Fix byte count for bytesTransferred status listeners
      (fixes command line status)
    * UpdateHandler:
       - Fix byte count display
       - Display final status on router console
       - Don't allow multiple update jobs to queue up
       - Increase max retries
       - Code cleanup
       - Don't show 'check for update' button when update in progress
       - Enhance error messages
    * NetDb: Comment out published netDb stats disabled for .32

zzz's avatar
-2  
zzz committed
2008-03-08 zzz
zzz's avatar
zzz committed
    * TunnelPeerSelectors: Implement strict ordering of peers,
zzz's avatar
-2  
zzz committed
      based on XOR distance from a random hash
      separately generated for each tunnel pool

2008-03-07 zzz
    * Naming: Optimize lookups for a destkey
    * ProfileOrganizer, TunnelPoolSettings, ClientPeerSelector:
      - Prevent peers with matching IPs from joining same tunnel.
        Match 0-4 bytes of IP (0=off, 1=most restrictive, 4=least).
        Default is 2 (disallow routers in same /16).
        Set with router.defaultPool.IPRestriction=x
      - Comment out unused RebuildPeriod pool setting
      - Add random key to pool in preparation for XOR peer ordering
    * SusiMail: Add 'Create Account' link
    * TunnelDispatcher: Change a common wtf error to a warn

2008-03-05 zzz
    * Naming: Make HostsTxt the sole default NamingService
      (was Meta = PetName + HostsTxt)
    * Naming: Add two new experimental NamingServices, EepGet and Exec,
      not enabled by default -
      see source comments in core/java/src/net/i2p/client/naming
      for configuration instructions
    * i2psnark: Don't do a naming lookup for Base64 destkeys
    * i2psnark: Add a StartAll button
    * Stats: Add code to disable most stats to save memory.
      Set on configstats.jsp or set stat.full=false to disable the stats.
      (true by default for now)

complication's avatar
complication committed
2008-03-09 Complication
    * Give the Jetty build file ability to ask permission
      before downloading the Jetty archive from the web,
      and to verify its SHA1 + MD5 hashes. Adjust the main build file
      in accordance with this change.
    * Improve the release checklist.

* 2008-03-09  0.6.1.32 released

2008-03-07 zzz
    * Update news and version numbers

2008-03-01 zzz
    * Fix netdb.knownLeaseSets count reported by floodfill routers
      (was broken by -3)

2008-02-27 zzz
    * i2ptunnel: Add 3-hop option to edit.jsp to match configtunnels.jsp
    * i2psnark: Remove orion and gaytorrents from default tracker list
    * Remove orion from jump list and from eepsite_index.html
    * Jbigi: Change jbigi version to 4.2.2 in build scripts - tested by amiga
    * Capitalize OutboundMessageDistributor job name
    * TunnelPool: Add a warning if all tunnels are backlogged

2008-02-26 zzz
    * Reintroduce NTCP backlog pushback, with switch back to
      previous tunnel when no longer backlogged
    * Catch an nio exception in an NTCP logging statement if loglevel is WARN
    * IRC Proxy: terminate all messages with \r\n (thanks TrivialPursuit!)

2008-02-21 zzz
    * Raise inbound default bandwidth to 32KBps
    * Fix config.jsp that showed 0KBps share bandwidth by default

zzz's avatar
-5  
zzz committed
2008-02-19 zzz
    * Addressbook: Disallow '--' in host names except in IDN,
      add some reserved host names
    * I2PTunnel: Clarify edit form
    * NetDb: Remove many stats from netDb, effective as of .32
    * profiles.jsp: Display capabilities
    * Tunnels: Enforce max tunnel length of 8, catch an index error
      http://forum.i2p/viewtopic.php?t=2561

2008-02-16 zzz
    * Fix race in TunnelDispatcher which caused
      participating tunnel count to seesaw -
      should increase network capacity
    * Leave participating tunnels in 10s batches for efficiency
    * Update participating tunnel ratestat when leaving a tunnel too,
      to generate a smoother graph
    * Fix tunnel.participatingMessageCount stat to include all
      participating tunnels, not just outbound endpoints
    * Simplify Expire Tunnel job name

2008-02-13 zzz
    * PersistentDataStore: Write out 300 records every 10 min
      rather than 1 every 10 sec;
      Don't store leasesets to disk or read them in
    * Combine rates for pools with the same length setting
      in the new tunnel build algorithm
    * Clarify a log message in the UpdateHandler

2008-02-13 zzz
    * Make graphs clickable to get larger graphs
    * Change SimpleTimer CRIT to a WARN, increase threshold
    * Checklist update

zzz's avatar
-5  
zzz committed
2008-02-11 welterde
    * Fix an NPE in UDP http://forum.i2p/viewtopic.php?t=2545

2008-02-10 zzz
    * Add new tunnel build algorithm (preliminary)
    * Change NTCP backlogged message from error to warning
    * Checklist updates

* 2008-02-10  0.6.1.31 released

2008-02-10 Complication
    * Update news and version numbers

2008-02-06 zzz
    * build.xml: Add some apps to javadoc
    * checklist.txt: Add some things
    * news.xml: make links relative
    * runplain.sh: Add some comments
    * wrapper.config: Add some comments

complication's avatar
complication committed
2008-02-05 Complication
    * Change the dates too (sorry for such forgetfulness!)

complication's avatar
complication committed
2008-02-04 Complication
    * Also use the new key for checking, and add it into news.xml
zzz's avatar
zzz committed

complication's avatar
complication committed
2008-02-04 Complication
    * Added my release signing key into TrustedUpdate.java

2008-01-31 zzz
    * NewsFetcher: Change fetch failed from error to warning
    * installer: Fix URL and "email"
    * checklist.txt: New release checklist

zzz's avatar
zzz committed
2008-01-29 zzz
    * Addressbook: Change default subscription
    * ConfigUpdateHandler: Change default news URL
    * initialNews.xml: Update version to .31
    * news.xml: More updates
    * hosts.txt: Add i2p-projekt.i2p
    * readme.html: More URL updates
    * SusiDNS: Change references to default subscription

zzz's avatar
zzz committed
2008-01-28 zzz
    * news.xml: Updates, still preliminary
    * ReseedHandler: Change default URL
    * i2ptunnel.config: Change default outproxies
    * readme.html: Change *.i2p.net URLs
    * help.jsp: Change *.i2p.net URLs
    * eepsite_index.html: Change stats.i2p addressbook subscription URL
    * hosts.txt: Add krabs.i2p, true.i2p, www.i2p2.i2p

* 2008-01-28  0.6.1.30-20 converted from CVS to MTN
zzz's avatar
zzz committed

2008-01-08 zzz
    * addressbook: Limit size of subscribed hosts.txt,
        don't save old etag or last-modified data
    * EepGet: Add some logging,
        enforce size limits even when size not in returned header,
        don't return old etag or last-modified data,
        don't call transferFailed listener more than once
    * Sign my update signing key
    * NewsFetcher: add last-modified support, reduce number of retries
    * Error pages: add icon and logo,
        clarify 'destination not found' and 'proxy not found' pages

zzz's avatar
zzz committed
2008-01-07 zzz
    * profiles.jsp formatting cleanup
    * NTCP: Reduce max idle time from 60m to 20m
    * NTCP: Fix idle time on connections with zero messages,
      correctly drop these connections
zzz's avatar
zzz committed

2008-01-03 zzz
    * addressbook: Do basic validation of hostnames and destkeys
    * susidns: Add support for the private addressbook,
      update the text and links somewhat
zzz's avatar
zzz committed

2008-01-02 zzz
    * Add stats.i2p to the jump list
    * Impose 20MB limit on POSTs and catch OOMs in POST
    * eepsite_index.html: add stats.i2p services
    * addressbook: log source of new keys; disallow dests > 516 bytes
    * addressbook: convert hostnames to lower case to prevent duplicates
    * susidns: generalize references to orion
zzz's avatar
zzz committed

2007-12-29 zzz
zzz's avatar
zzz committed
    * Tweak IRC inbound PONG filtering to fix xchat/BitchX lagometers
zzz's avatar
zzz committed
    * Allow commas in router.trustedUpdateKeys and router.updateURL again
zzz's avatar
zzz committed
    * Change default news host from dev.i2p.net to dev.i2p
zzz's avatar
zzz committed
    * Change jetty timeout from 30 to 60 sec (thanks sponge!)
zzz's avatar
zzz committed

2007-12-28 zzz
    * Add zzz's update signing key
complication's avatar
complication committed

2007-12-26 Complication
    * Improve reseed handler (less repetitive code,
      avoid reporting errors when less than 10% of fetches fail)
complication's avatar
complication committed

2007-12-26 Complication
    * Escape both CR, LF and CR LF line breaks in Router.saveConfig()
      and unescape them in DataHelper.loadProps() to support
      saving and loading config properties with line breaks
    * Change the update URLs textbox into a textarea like keys have,
      so different URLs go on different lines
    * Modify TrustedUpdate to provide a method which supplies a key list
      delimited with CR LF line breaks
    * Modify DEFAULT_UPDATE_URL to supply a default URL list
      delimited with CR LF line breaks
    * Modify selectUpdateURL() to handle URL lists
      delimited by any kind of line breaks
    * Start saving trusted update keys
    * Improve formatting on configupdate.jsp
zzz's avatar
zzz committed

2007-12-22 zzz
    * Add support for multiple update URLs
    * Change default for update to use i2p proxy,
      add several URLs as defaults
    * Enable trusted key form on configupdate.jsp
    * Clarify the 'destination not found' error page

2007-12-16 zzz
    * i2psnark: remove anonymitytracker from default list
zzz's avatar
zzz committed

2007-12-10 zzz
    * Fix NPE in CLI TrustedUpdate keygen
complication's avatar
complication committed

2007-12-02 Complication