Commit graph

37 commits

Author SHA1 Message Date
Jimmy Zelinskie
c0c3eda290 config: make reaping configurable
This allows for configurable reaping rates and changes the default to
what many public trackers use in the wild.
2015-09-18 01:27:27 -04:00
Justin Li
da46ef8c8a tracker: Return announcing peer if there are no others to avoid an empty peers field 2015-02-28 00:56:45 -05:00
Justin Li
87c68f1973 2015 2015-01-01 12:02:25 -05:00
Jimmy Zelinskie
d46beb0f7d Remove unkeyed composite literals.
This was done to keep in accordance with `go vet`.
2014-10-28 12:26:37 -04:00
Jimmy Zelinskie
b910fdabf5 Organize peers by subnet.
This commit restructures PeerMaps to be a map from Subnet to
PeerID to Peer. This reduces the complexity require to gather peers from
the same subnet.
2014-09-23 23:00:50 -04:00
Jimmy Zelinskie
1d9b2bc322 First step towards removing Tracker Driver.
This feature isn't worth maintaining and if anyone needs to scale beyond
memory on a single box, we can evaluate it then.
2014-08-13 17:45:34 -04:00
Jimmy Zelinskie
fc18028796 Fix Purge reporting all peers as Seeders
PeerMaps now are constructed with a boolean value that tells the map
whether they are hosting seeders or leechers.
2014-08-05 06:57:48 -04:00
Jimmy Zelinskie
3cb286fb40 Introduce thread-safe PeerMap 2014-08-04 06:15:08 -04:00
Justin Li
d610b4ebb0 Address easy golint comments 2014-08-01 16:16:38 -04:00
Jimmy Zelinskie
ffb3c57181 move whitelist into cfg 2014-07-25 16:58:26 -04:00
Justin Li
8369bbbcd8 Allow configuring if a peer may have 2 IPs 2014-07-23 13:36:31 -04:00
Justin Li
f2cc5188dd Amend announce test to include an instance of the started event 2014-07-23 01:39:20 -04:00
Justin Li
b99e5e0c36 Add compact announce tests 2014-07-23 00:55:57 -04:00
Justin Li
af57763882 Commit some staged changes 2014-07-21 10:53:26 -04:00
Justin Li
cd0a3436b7 Add IPv6 peers to the subnet tests 2014-07-17 14:38:01 -04:00
Justin Li
664b365061 Refactor announce test helpers 2014-07-17 14:28:55 -04:00
Justin Li
794657274a Add tests for subnet preference 2014-07-17 14:14:29 -04:00
Justin Li
199496bfa6 Move backend to root level, combine announce tests, rename files 2014-07-17 01:26:34 -04:00
Justin Li
e219176e8b More thorough peer purging test, and tidy some style things 2014-07-16 20:17:10 -04:00
Justin Li
a2e14f79c2 Add peer purging test, and ensure the purging routine runs whenever a tracker is created 2014-07-16 20:08:03 -04:00
Justin Li
e29fb21edb Only prune torrents if they have no peers 2014-07-16 14:11:01 -04:00
Justin Li
5f4f63cc44 Fix go vet suggestions 2014-07-16 14:00:45 -04:00
Justin Li
84e1c169c0 Add tests for torrent purging 2014-07-16 13:53:42 -04:00
Justin Li
5ccb42a0c7 Make private announce test more complete and fix brittle peer order 2014-07-15 22:44:20 -04:00
Justin Li
9adf9a114c More test cleanup 2014-07-15 22:19:44 -04:00
Justin Li
586b6852de Refactor more, add scrape tests 2014-07-15 21:07:33 -04:00
Justin Li
bec70e9759 Refactor peer dict creation in the announce test 2014-07-15 20:50:33 -04:00
Justin Li
c36974d515 Use bencode.List over []interface{} 2014-07-15 20:45:18 -04:00
Justin Li
019c87182e Add public announce tests and refactor 2014-07-15 20:38:17 -04:00
Justin Li
850cedf7ec Use the bencode package to avoid hardcoded test strings 2014-07-15 19:35:18 -04:00
Jimmy Zelinskie
d2ba9fb9f7 repurpose drivers from mock to no-op and memory 2014-07-15 00:22:04 -04:00
Jimmy Zelinskie
292c15e519 responses are bencode.Dict; Closes #29. 2014-07-11 22:15:51 -04:00
Jimmy Zelinskie
e2af935b83 disambiguate routing 2014-07-09 01:34:34 -04:00
Jimmy Zelinskie
f656133a6f Tracker.Conn API made more RESTful 2014-07-08 05:58:00 -04:00
Jimmy Zelinskie
99ac8f77c8 Tracker.Conn interface update to better fit API 2014-07-07 22:44:27 -04:00
Justin Li
e08f745f6c Happy uber-belated new year! 2014-07-06 17:56:54 -04:00
Jimmy Zelinskie
6d5290d85e transition to httprouter 2014-07-01 21:40:29 -04:00