]> Sergey Matveev's repositories - btrtrc.git/log
btrtrc.git
6 years agopeer_protocol: Improve piece decoding benchmark
Matt Joiner [Tue, 12 Sep 2017 11:32:01 +0000 (21:32 +1000)]
peer_protocol: Improve piece decoding benchmark

6 years agopeer_protocol: Add a benchmark for decoding pieces
Matt Joiner [Tue, 12 Sep 2017 11:12:56 +0000 (21:12 +1000)]
peer_protocol: Add a benchmark for decoding pieces

6 years agomse: Remove unused function
Matt Joiner [Tue, 12 Sep 2017 09:30:05 +0000 (19:30 +1000)]
mse: Remove unused function

6 years agoMerge branch 'master' into pull-writer
Matt Joiner [Tue, 12 Sep 2017 08:32:40 +0000 (18:32 +1000)]
Merge branch 'master' into pull-writer

6 years agostorage: Add TODO about handling Close errors
Matt Joiner [Tue, 12 Sep 2017 08:31:10 +0000 (18:31 +1000)]
storage: Add TODO about handling Close errors

6 years agoREADME: Improve wording around torrent as a library
Matt Joiner [Tue, 12 Sep 2017 08:30:54 +0000 (18:30 +1000)]
README: Improve wording around torrent as a library

6 years agoThe bencode README is markdown
Matt Joiner [Tue, 12 Sep 2017 08:30:06 +0000 (18:30 +1000)]
The bencode README is markdown

6 years agoMerge pull request #185 from mh-cbon/patch-1
Matt Joiner [Tue, 12 Sep 2017 08:28:35 +0000 (18:28 +1000)]
Merge pull request #185 from mh-cbon/patch-1

Update README

6 years agoRemove mention of the mobile branch from README
Matt Joiner [Tue, 12 Sep 2017 08:26:14 +0000 (18:26 +1000)]
Remove mention of the mobile branch from README

6 years agoUpdate README
mh-cbon [Tue, 5 Sep 2017 14:42:37 +0000 (16:42 +0200)]
Update README

6 years agoOptimize nextRequestState to return cancel and new requests, and reinstate requestsLo...
Matt Joiner [Sat, 2 Sep 2017 00:36:43 +0000 (10:36 +1000)]
Optimize nextRequestState to return cancel and new requests, and reinstate requestsLowWater

6 years agoWrap writerCond in tickleWriter and be more selective about using it
Matt Joiner [Fri, 1 Sep 2017 05:26:50 +0000 (15:26 +1000)]
Wrap writerCond in tickleWriter and be more selective about using it

6 years agoTestUTPRawConn: More tidying, and slow down the rate
Matt Joiner [Fri, 1 Sep 2017 05:22:08 +0000 (15:22 +1000)]
TestUTPRawConn: More tidying, and slow down the rate

6 years agoUse require in some places in TestUTPRawConn
Matt Joiner [Fri, 1 Sep 2017 05:09:10 +0000 (15:09 +1000)]
Use require in some places in TestUTPRawConn

6 years agoAvoid triggering writer cond where possible
Matt Joiner [Fri, 1 Sep 2017 02:09:41 +0000 (12:09 +1000)]
Avoid triggering writer cond where possible

6 years agoTrack buffered but not posted messages, and unify the expvar names for those counters
Matt Joiner [Fri, 1 Sep 2017 00:53:59 +0000 (10:53 +1000)]
Track buffered but not posted messages, and unify the expvar names for those counters

6 years agoRemove unused code
Matt Joiner [Fri, 1 Sep 2017 00:46:26 +0000 (10:46 +1000)]
Remove unused code

6 years agoAdd some variables to track fillBuffer effectiveness
Matt Joiner [Fri, 1 Sep 2017 00:36:43 +0000 (10:36 +1000)]
Add some variables to track fillBuffer effectiveness

6 years agocmd/torrent: Enhance debugging
Matt Joiner [Fri, 1 Sep 2017 00:35:40 +0000 (10:35 +1000)]
cmd/torrent: Enhance debugging

6 years agoGenerate requests, cancels and interest state in the connection writer
Matt Joiner [Thu, 31 Aug 2017 13:48:52 +0000 (23:48 +1000)]
Generate requests, cancels and interest state in the connection writer

6 years agoMake connection.writer pull from a buffer
Matt Joiner [Thu, 31 Aug 2017 06:26:45 +0000 (16:26 +1000)]
Make connection.writer pull from a buffer

6 years agoPanics while decoding messages in connection.mainLoopRead would trigger more panics
Matt Joiner [Thu, 31 Aug 2017 06:25:49 +0000 (16:25 +1000)]
Panics while decoding messages in connection.mainLoopRead would trigger more panics

6 years agoKeep rate limited reader reads to within the burst capacity
Matt Joiner [Thu, 31 Aug 2017 04:32:22 +0000 (14:32 +1000)]
Keep rate limited reader reads to within the burst capacity

6 years agoAdd peer_protocol.Message.MustMarshalBinary
Matt Joiner [Thu, 31 Aug 2017 04:30:53 +0000 (14:30 +1000)]
Add peer_protocol.Message.MustMarshalBinary

6 years agoSynchronize Torrent.Info
Matt Joiner [Tue, 29 Aug 2017 05:16:53 +0000 (15:16 +1000)]
Synchronize Torrent.Info

6 years agoGet torrentfs fuse test working
Matt Joiner [Tue, 29 Aug 2017 04:02:30 +0000 (14:02 +1000)]
Get torrentfs fuse test working

6 years agocmd/torrent: Include global dht starting nodes
Matt Joiner [Mon, 28 Aug 2017 10:54:37 +0000 (20:54 +1000)]
cmd/torrent: Include global dht starting nodes

6 years agoMerge branch 'fs-handle-reader'
Matt Joiner [Mon, 28 Aug 2017 07:28:05 +0000 (17:28 +1000)]
Merge branch 'fs-handle-reader'

6 years agoTry to reduce allocations in cipherReader
Matt Joiner [Mon, 28 Aug 2017 07:27:53 +0000 (17:27 +1000)]
Try to reduce allocations in cipherReader

6 years agoMaintain a torrent.Reader for each file handle
Matt Joiner [Sun, 27 Aug 2017 15:42:02 +0000 (01:42 +1000)]
Maintain a torrent.Reader for each file handle

This means that readahead will work much better. Addresses https://github.com/anacrolix/torrent/issues/182.

6 years agofs: Move file Read behaviour onto a new handle type
Matt Joiner [Sun, 27 Aug 2017 04:19:58 +0000 (14:19 +1000)]
fs: Move file Read behaviour onto a new handle type

6 years agofs/test.sh: Update torrentfs arguments and wait for info to be fetched so file isn...
Matt Joiner [Sun, 27 Aug 2017 04:03:10 +0000 (14:03 +1000)]
fs/test.sh: Update torrentfs arguments and wait for info to be fetched so file isn't found

6 years agoTestUnmountWedged: Don't deadlock if the Read fails
Matt Joiner [Sun, 27 Aug 2017 04:00:37 +0000 (14:00 +1000)]
TestUnmountWedged: Don't deadlock if the Read fails

6 years agocmd/torrentfs: Switch to tagflag and rename -torrentPath->-metainfoDir
Matt Joiner [Sun, 27 Aug 2017 02:25:51 +0000 (12:25 +1000)]
cmd/torrentfs: Switch to tagflag and rename -torrentPath->-metainfoDir

6 years agocmd/magnet-metainfo: Use tagflag
Matt Joiner [Sun, 27 Aug 2017 01:46:06 +0000 (11:46 +1000)]
cmd/magnet-metainfo: Use tagflag

6 years agoAdd CircleCI 2.0 turd
Matt Joiner [Sat, 26 Aug 2017 16:10:17 +0000 (02:10 +1000)]
Add CircleCI 2.0 turd

Adds tests for https://github.com/anacrolix/utp/issues/24, and mobile on the master branch. The UDP tracker test uses udp4 because of some bad behaviour on CircleCI.

6 years agofs: Add a test script
Matt Joiner [Sat, 26 Aug 2017 03:25:27 +0000 (13:25 +1000)]
fs: Add a test script

6 years agofs: Move fileNode stuff into its own file
Matt Joiner [Sat, 26 Aug 2017 03:25:04 +0000 (13:25 +1000)]
fs: Move fileNode stuff into its own file

6 years agoRemove unused functions
Matt Joiner [Sat, 26 Aug 2017 03:23:04 +0000 (13:23 +1000)]
Remove unused functions

6 years agoMake cmd/tracker-announce output a bit easier to consume
Matt Joiner [Sat, 26 Aug 2017 02:38:08 +0000 (12:38 +1000)]
Make cmd/tracker-announce output a bit easier to consume

6 years agoFix sync.Mutex copy by value
Matt Joiner [Fri, 25 Aug 2017 06:36:34 +0000 (16:36 +1000)]
Fix sync.Mutex copy by value

Found by go vet, per https://github.com/anacrolix/torrent/issues/179.

6 years agodht.ServerConfig.StartingNodes is now a function
Matt Joiner [Fri, 25 Aug 2017 06:28:27 +0000 (16:28 +1000)]
dht.ServerConfig.StartingNodes is now a function

Additionally cmd/torrentfs uses the global bootstrap nodes for its DHT. Aids with https://github.com/anacrolix/torrent/issues/180

6 years agoAdd some debugging routes and envpprof to cmd/magnet-metainfo
Matt Joiner [Fri, 18 Aug 2017 01:14:57 +0000 (11:14 +1000)]
Add some debugging routes and envpprof to cmd/magnet-metainfo

https://github.com/anacrolix/torrent/issues/178

6 years agoProvide default starting nodes to DHT if default torrent client config is used
Matt Joiner [Fri, 18 Aug 2017 01:14:28 +0000 (11:14 +1000)]
Provide default starting nodes to DHT if default torrent client config is used

https://github.com/anacrolix/torrent/issues/178

6 years agoTry a state-delta function for updating request state
Matt Joiner [Thu, 17 Aug 2017 15:51:02 +0000 (01:51 +1000)]
Try a state-delta function for updating request state

Also adds Torrent.networkingEnabled, though it isn't yet useful.

6 years agoRename Torrent.connHasWantedPieces->connection.peerHasWantedPieces
Matt Joiner [Thu, 17 Aug 2017 15:48:19 +0000 (01:48 +1000)]
Rename Torrent.connHasWantedPieces->connection.peerHasWantedPieces

6 years agoNo longer wanting a piece wasn't triggering an update of connection request state
Matt Joiner [Thu, 17 Aug 2017 15:44:20 +0000 (01:44 +1000)]
No longer wanting a piece wasn't triggering an update of connection request state

Pretty minor, but it would leave connections hanging in the interested state.

6 years agoTidy the next announce tracker status field
Matt Joiner [Wed, 16 Aug 2017 15:18:18 +0000 (01:18 +1000)]
Tidy the next announce tracker status field

6 years agoAccept racy result in keep alive test
Matt Joiner [Wed, 16 Aug 2017 07:05:34 +0000 (17:05 +1000)]
Accept racy result in keep alive test

6 years agoAugment dialed connection timeouts with context.Context
Matt Joiner [Wed, 16 Aug 2017 07:05:05 +0000 (17:05 +1000)]
Augment dialed connection timeouts with context.Context

Works toward a dial timeout for half open connections. https://github.com/anacrolix/torrent/issues/169

6 years agoUse net.Dialer for TCP
Matt Joiner [Wed, 16 Aug 2017 05:48:30 +0000 (15:48 +1000)]
Use net.Dialer for TCP

6 years agoUse DialContext instead of DialTimeout with utp
Matt Joiner [Wed, 16 Aug 2017 05:35:17 +0000 (15:35 +1000)]
Use DialContext instead of DialTimeout with utp

6 years agoSome tidying in Client.dialFirst
Matt Joiner [Wed, 16 Aug 2017 00:32:25 +0000 (10:32 +1000)]
Some tidying in Client.dialFirst

6 years agoRemove dht-ping from the README
Matt Joiner [Wed, 16 Aug 2017 00:28:07 +0000 (10:28 +1000)]
Remove dht-ping from the README

6 years agoDHT bootstrap is not asynchronous
Matt Joiner [Thu, 10 Aug 2017 01:18:48 +0000 (11:18 +1000)]
DHT bootstrap is not asynchronous

6 years agoFix test
Matt Joiner [Mon, 7 Aug 2017 12:11:25 +0000 (22:11 +1000)]
Fix test

6 years agoMerge branch 'master' into dht-cleanup
Matt Joiner [Mon, 7 Aug 2017 07:59:49 +0000 (17:59 +1000)]
Merge branch 'master' into dht-cleanup

6 years agoRemove dht cmds, they're added to anacrolix/dht
Matt Joiner [Thu, 20 Jul 2017 14:39:28 +0000 (00:39 +1000)]
Remove dht cmds, they're added to anacrolix/dht

6 years agoChanges for dht-cleanup
Matt Joiner [Thu, 20 Jul 2017 14:40:49 +0000 (00:40 +1000)]
Changes for dht-cleanup

6 years agoRemove dht cmds, they're added to anacrolix/dht
Matt Joiner [Thu, 20 Jul 2017 14:39:28 +0000 (00:39 +1000)]
Remove dht cmds, they're added to anacrolix/dht

6 years agoMerge pull request #167 from mlmhl/mmap
Matt Joiner [Tue, 11 Jul 2017 13:16:52 +0000 (23:16 +1000)]
Merge pull request #167 from mlmhl/mmap

bug fix: initial infoHash for mmapStoragePiece

6 years agobug fix: initial infoHash for mmapStoragePiece
mlmhl [Mon, 10 Jul 2017 11:33:39 +0000 (19:33 +0800)]
bug fix: initial infoHash for mmapStoragePiece

6 years agoFix handling of infohash as hex in Torrent.String
Matt Joiner [Sat, 1 Jul 2017 06:02:06 +0000 (16:02 +1000)]
Fix handling of infohash as hex in Torrent.String

6 years agoMove logging inside client lock, for Torrent.String
Matt Joiner [Sat, 1 Jul 2017 06:01:38 +0000 (16:01 +1000)]
Move logging inside client lock, for Torrent.String

Fixes #163

6 years agoMerge pull request #165 from mlmhl/dht
Matt Joiner [Thu, 29 Jun 2017 09:33:05 +0000 (19:33 +1000)]
Merge pull request #165 from mlmhl/dht

Do not add nodes if dht is disabled

6 years agoDo not add nodes if dht is disabled
mlmhl [Thu, 29 Jun 2017 01:49:55 +0000 (09:49 +0800)]
Do not add nodes if dht is disabled

6 years agoUse go-libutp if cgo is enabled
Matt Joiner [Fri, 16 Jun 2017 08:08:24 +0000 (18:08 +1000)]
Use go-libutp if cgo is enabled

6 years agometainfo URL list can be a string or list
Matt Joiner [Fri, 16 Jun 2017 07:07:30 +0000 (17:07 +1000)]
metainfo URL list can be a string or list

6 years agoiplist: Add TODO to allow unmapping
Matt Joiner [Sun, 11 Jun 2017 10:09:40 +0000 (20:09 +1000)]
iplist: Add TODO to allow unmapping

7 years agoMerge pull request #161 from mlmhl/event
Matt Joiner [Mon, 5 Jun 2017 10:47:58 +0000 (20:47 +1000)]
Merge pull request #161 from mlmhl/event

signal an event when torrent closed

7 years agosignal an event when torrent closed
mlmhl [Sat, 3 Jun 2017 08:42:40 +0000 (16:42 +0800)]
signal an event when torrent closed

7 years agoMerge pull request #159 from elgatito/helpers_add
Matt Joiner [Fri, 2 Jun 2017 07:04:01 +0000 (17:04 +1000)]
Merge pull request #159 from elgatito/helpers_add

added few helper functions

7 years agoadded few helper functions: t.PieceBytesMissing, r.CurrentPos, r.SetNonResponsive
Denis Kuzmenok [Fri, 2 Jun 2017 04:46:28 +0000 (07:46 +0300)]
added few helper functions: t.PieceBytesMissing, r.CurrentPos, r.SetNonResponsive

7 years agoClose implicit Client default storage on Client.Close
Matt Joiner [Thu, 1 Jun 2017 12:57:08 +0000 (22:57 +1000)]
Close implicit Client default storage on Client.Close

Fixes #158

7 years agoSkip on fusermount failure
Matt Joiner [Thu, 1 Jun 2017 05:39:44 +0000 (15:39 +1000)]
Skip on fusermount failure

7 years agoMake bolt completion DB directory if necessary
Matt Joiner [Thu, 1 Jun 2017 01:20:50 +0000 (11:20 +1000)]
Make bolt completion DB directory if necessary

7 years agoTighten FUSE test skipping
Matt Joiner [Thu, 1 Jun 2017 01:19:45 +0000 (11:19 +1000)]
Tighten FUSE test skipping

7 years agoTidy up the duplicate conn selection code
Matt Joiner [Fri, 26 May 2017 03:00:20 +0000 (13:00 +1000)]
Tidy up the duplicate conn selection code

7 years agoMove File.State lock to top of function
Matt Joiner [Fri, 26 May 2017 02:59:52 +0000 (12:59 +1000)]
Move File.State lock to top of function

7 years agoperf.Timer.Stop renamed
Matt Joiner [Fri, 26 May 2017 02:58:23 +0000 (12:58 +1000)]
perf.Timer.Stop renamed

7 years agoMerge pull request #156 from mlmhl/completion
Matt Joiner [Thu, 25 May 2017 06:39:03 +0000 (16:39 +1000)]
Merge pull request #156 from mlmhl/completion

make completion configurable

7 years agomake pieceCompletion configurable
mlmhl [Mon, 22 May 2017 02:15:48 +0000 (10:15 +0800)]
make pieceCompletion configurable

7 years agoMerge pull request #154 from mlmhl/connection
Matt Joiner [Wed, 17 May 2017 09:22:14 +0000 (19:22 +1000)]
Merge pull request #154 from mlmhl/connection

bug fix: race condition between outgoing connection and incoming conn…

7 years agobug fix: race condition between outgoing connection and incoming connection
luffyma(马林) [Wed, 10 May 2017 03:04:31 +0000 (11:04 +0800)]
bug fix: race condition between outgoing connection and incoming connection

7 years agoMerge pull request #153 from joelanford/master
Matt Joiner [Tue, 25 Apr 2017 00:39:44 +0000 (10:39 +1000)]
Merge pull request #153 from joelanford/master

Add public methods for torrent peer counts

7 years agoAdded peer count stats to TorrentStats struct
Joe Lanford [Thu, 20 Apr 2017 20:19:58 +0000 (16:19 -0400)]
Added peer count stats to TorrentStats struct

7 years agoAvoid allocating skeys for receiving encrypted handshakes
Matt Joiner [Tue, 4 Apr 2017 08:41:08 +0000 (18:41 +1000)]
Avoid allocating skeys for receiving encrypted handshakes

7 years agostorage: Fix race condition in mapPieceCompletion
Matt Joiner [Thu, 30 Mar 2017 10:38:44 +0000 (21:38 +1100)]
storage: Fix race condition in mapPieceCompletion

7 years agosortimports
Matt Joiner [Sun, 19 Mar 2017 06:04:32 +0000 (17:04 +1100)]
sortimports

7 years agostorage: Add package doc
Matt Joiner [Sat, 18 Mar 2017 02:03:02 +0000 (13:03 +1100)]
storage: Add package doc

7 years agoMerge pull request #149 from thechriswalker/torrent-storage-options
Matt Joiner [Fri, 17 Mar 2017 10:30:28 +0000 (21:30 +1100)]
Merge pull request #149 from thechriswalker/torrent-storage-options

fix `Spec.Storage` and allow per-torrent dir

7 years agofix `Spec.Storage` and allow per-torrent dir
Chris Walker [Thu, 16 Mar 2017 14:24:54 +0000 (14:24 +0000)]
fix `Spec.Storage` and allow per-torrent dir

`TorrentSpec.Storage` was not honored when calling `Client.AddTorrentSpec`
and the configured `cfg.DefaultStorage` was always used. Now if you construct
your `TorrentSpec` you can specify any `StorageImpl`

Also, the most common use case for custom storage being per-torrent paths for
FileStorage, this adds a `pathMaker` function to the File implementation that
allows customization, along with the default (always use base path) and my use
case (which seemed common enough from the Gitter chat) which is infohash based
subdirectories.

All Public methods have not changed signature, but 1 private method did, hence
the test update.

7 years agoFix a logging of metainfo.Hash
Matt Joiner [Fri, 24 Feb 2017 10:56:23 +0000 (21:56 +1100)]
Fix a logging of metainfo.Hash

7 years agoDon’t track the empty string, and ditch Torrent.announceList
Matt Joiner [Sun, 19 Feb 2017 04:57:30 +0000 (15:57 +1100)]
Don’t track the empty string, and ditch Torrent.announceList

7 years agoFix torrent status info hash hex
Matt Joiner [Thu, 16 Feb 2017 09:10:32 +0000 (20:10 +1100)]
Fix torrent status info hash hex

7 years agometainfo: Improve MetaInfo.AnnounceList handling
Matt Joiner [Wed, 15 Feb 2017 09:05:28 +0000 (20:05 +1100)]
metainfo: Improve MetaInfo.AnnounceList handling

7 years agoRevert "Quick fix for missing MetaInfo.Announce everywhere with trackers"
Matt Joiner [Wed, 15 Feb 2017 07:40:30 +0000 (18:40 +1100)]
Revert "Quick fix for missing MetaInfo.Announce everywhere with trackers"

This reverts commit b7a8d08bbf046d756e8d80744a188167e28a19de.

7 years agoUpdate README.md
Matt Joiner [Tue, 14 Feb 2017 11:42:21 +0000 (22:42 +1100)]
Update README.md

Add CircleCI shield

7 years agoQuick fix for missing MetaInfo.Announce everywhere with trackers
Matt Joiner [Mon, 13 Feb 2017 11:28:42 +0000 (22:28 +1100)]
Quick fix for missing MetaInfo.Announce everywhere with trackers

7 years agodht.Server.Announce now takes [20]byte
Matt Joiner [Tue, 7 Feb 2017 04:01:02 +0000 (15:01 +1100)]
dht.Server.Announce now takes [20]byte