]> Sergey Matveev's repositories - btrtrc.git/log
btrtrc.git
2 years agoAllow comments in seedfile
Sergey Matveev [Fri, 2 Dec 2022 10:38:02 +0000 (13:38 +0300)]
Allow comments in seedfile

2 years agocmd/torrent only prioritizes downloads
Sergey Matveev [Fri, 2 Dec 2022 10:24:29 +0000 (13:24 +0300)]
cmd/torrent only prioritizes downloads

2 years agoShort ratio for fifos/top-seed
Sergey Matveev [Tue, 29 Nov 2022 13:11:48 +0000 (16:11 +0300)]
Short ratio for fifos/top-seed

2 years agoShortened long filenames
Sergey Matveev [Tue, 29 Nov 2022 11:21:35 +0000 (14:21 +0300)]
Shortened long filenames

2 years agoSort torrents by add time
Sergey Matveev [Tue, 29 Nov 2022 09:41:13 +0000 (12:41 +0300)]
Sort torrents by add time

2 years agoAdd currently written data for top-seed
Sergey Matveev [Mon, 28 Nov 2022 17:14:00 +0000 (20:14 +0300)]
Add currently written data for top-seed

2 years agofifos/top-seed
Sergey Matveev [Mon, 28 Nov 2022 15:26:30 +0000 (18:26 +0300)]
fifos/top-seed

2 years agoSimpler cancellation with global variables
Sergey Matveev [Mon, 28 Nov 2022 14:55:14 +0000 (17:55 +0300)]
Simpler cancellation with global variables

2 years agoDelete only expired entries from fdCache
Sergey Matveev [Mon, 28 Nov 2022 14:42:49 +0000 (17:42 +0300)]
Delete only expired entries from fdCache

2 years agoPer-file locks
Sergey Matveev [Mon, 28 Nov 2022 14:32:31 +0000 (17:32 +0300)]
Per-file locks

2 years agoLinear IO and cached FDs
Sergey Matveev [Mon, 28 Nov 2022 13:57:00 +0000 (16:57 +0300)]
Linear IO and cached FDs

2 years agoHard-code User-Agents
Sergey Matveev [Mon, 28 Nov 2022 13:13:23 +0000 (16:13 +0300)]
Hard-code User-Agents

2 years agoSimplify With ReadAt/WriteAt
Sergey Matveev [Mon, 28 Nov 2022 09:44:03 +0000 (12:44 +0300)]
Simplify With ReadAt/WriteAt

2 years agoSave .torrent with human readable name
Sergey Matveev [Mon, 28 Nov 2022 08:47:20 +0000 (11:47 +0300)]
Save .torrent with human readable name

2 years agoRemove FIFOs at quit
Sergey Matveev [Mon, 28 Nov 2022 08:31:22 +0000 (11:31 +0300)]
Remove FIFOs at quit

2 years agoFixed lame speed calculation
Sergey Matveev [Mon, 28 Nov 2022 08:21:33 +0000 (11:21 +0300)]
Fixed lame speed calculation

2 years agoseed-feed
Sergey Matveev [Mon, 28 Nov 2022 07:49:48 +0000 (10:49 +0300)]
seed-feed

2 years agoExplicitly disable IP address if not specified
Sergey Matveev [Mon, 28 Nov 2022 07:45:58 +0000 (10:45 +0300)]
Explicitly disable IP address if not specified

2 years agoWait for background jobs before finish message
Sergey Matveev [Sun, 27 Nov 2022 20:41:06 +0000 (23:41 +0300)]
Wait for background jobs before finish message

2 years agoShorter done percentage
Sergey Matveev [Sun, 27 Nov 2022 20:21:26 +0000 (23:21 +0300)]
Shorter done percentage

2 years agoFinished message
Sergey Matveev [Sun, 27 Nov 2022 19:23:35 +0000 (22:23 +0300)]
Finished message

2 years agoSpeed is in KiBs everywhere
Sergey Matveev [Sun, 27 Nov 2022 19:03:26 +0000 (22:03 +0300)]
Speed is in KiBs everywhere

2 years agoBasic documentation
Sergey Matveev [Sun, 27 Nov 2022 12:25:41 +0000 (15:25 +0300)]
Basic documentation

2 years agoSimple bitfield file piece completion database
Sergey Matveev [Sun, 27 Nov 2022 11:40:00 +0000 (14:40 +0300)]
Simple bitfield file piece completion database

But it uses whole characters instead of bits.

2 years agoInitial draft client
Sergey Matveev [Sat, 26 Nov 2022 10:08:02 +0000 (13:08 +0300)]
Initial draft client

2 years agoNo Web*
Sergey Matveev [Sat, 26 Nov 2022 10:12:43 +0000 (13:12 +0300)]
No Web*

So much I dislike that kind of technologies.

2 years agogorond
Matt Joiner [Tue, 3 Jan 2023 14:26:31 +0000 (01:26 +1100)]
gorond

2 years agoAdd a check that piece request order items are scanned in order
Matt Joiner [Tue, 3 Jan 2023 14:25:57 +0000 (01:25 +1100)]
Add a check that piece request order items are scanned in order

It's not clear from btree documentation that scan should be ordered.

2 years agoFix an issue parsing negative bencode string lengths
Matt Joiner [Tue, 3 Jan 2023 14:25:26 +0000 (01:25 +1100)]
Fix an issue parsing negative bencode string lengths

See the fuzz test in dht/krpc.

2 years agoUpdate tidwall/btree
Matt Joiner [Sat, 31 Dec 2022 02:25:00 +0000 (13:25 +1100)]
Update tidwall/btree

2 years agoSleep webseed peers after unhandled errors
Matt Joiner [Sat, 31 Dec 2022 00:27:47 +0000 (11:27 +1100)]
Sleep webseed peers after unhandled errors

2 years agoDefault to announcing as leecher v1.48.0
Matt Joiner [Sat, 17 Dec 2022 00:08:46 +0000 (11:08 +1100)]
Default to announcing as leecher

(cherry picked from commit 16da3c0c46a71d6f270600c63acb674226c1c9ae)

2 years agoAdd --port flag to announce
Matt Joiner [Fri, 16 Dec 2022 04:38:30 +0000 (15:38 +1100)]
Add --port flag to announce

(cherry picked from commit e554aa19a691615f349bf6dae0601706ea47dc03)

2 years agoMerge branch 'universal-webseed-escaping'
Matt Joiner [Sun, 25 Dec 2022 08:26:01 +0000 (19:26 +1100)]
Merge branch 'universal-webseed-escaping'

2 years agoFix write error handling
Matt Joiner [Sun, 25 Dec 2022 08:23:07 +0000 (19:23 +1100)]
Fix write error handling

Fixes https://github.com/anacrolix/torrent/issues/798.

Prior to this fix, it looks like the writer would just keep writing chunks of the front buffer (incorrectly if there was an error), until presumably the writer would be killed by read hangup elsewhere.

2 years agoDon't use path.Join in default webseed path escaper
Matt Joiner [Sun, 25 Dec 2022 07:20:42 +0000 (18:20 +1100)]
Don't use path.Join in default webseed path escaper

Thanks fuzzing!

2 years agoAdd fuzzing for webseed path escaping
Matt Joiner [Sun, 25 Dec 2022 07:20:23 +0000 (18:20 +1100)]
Add fuzzing for webseed path escaping

2 years agoChange default webseed path escaping to work for all S3-compatible providers
Matt Joiner [Fri, 23 Dec 2022 00:18:36 +0000 (11:18 +1100)]
Change default webseed path escaping to work for all S3-compatible providers

2 years agoupdate deps (#794)
a [Thu, 22 Dec 2022 00:07:40 +0000 (18:07 -0600)]
update deps (#794)

2 years agoValidate received chunks before conversion to indexes
Matt Joiner [Sun, 11 Dec 2022 04:21:23 +0000 (15:21 +1100)]
Validate received chunks before conversion to indexes

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

2 years agoAdd customer headers when dialling WS connection to tracker (#789)
Marco Vidonis [Wed, 7 Dec 2022 22:17:33 +0000 (22:17 +0000)]
Add customer headers when dialling WS connection to tracker (#789)

* expose WebtorrentTrackerHttpHeader field

2 years agoGroup Client DHT and tracker config
Matt Joiner [Tue, 6 Dec 2022 23:42:29 +0000 (10:42 +1100)]
Group Client DHT and tracker config

2 years agoSupport marshalling http tracker response peers
Matt Joiner [Mon, 5 Dec 2022 06:53:36 +0000 (17:53 +1100)]
Support marshalling http tracker response peers

2 years agoRename tracker/http package
Matt Joiner [Mon, 5 Dec 2022 06:50:39 +0000 (17:50 +1100)]
Rename tracker/http package

2 years agoNew go fmt on doc comments
Matt Joiner [Mon, 5 Dec 2022 06:49:27 +0000 (17:49 +1100)]
New go fmt on doc comments

2 years agoSome tidying in tracker/udp
Matt Joiner [Mon, 5 Dec 2022 01:51:29 +0000 (12:51 +1100)]
Some tidying in tracker/udp

2 years agoAdd announce --event flag
Matt Joiner [Mon, 5 Dec 2022 01:50:40 +0000 (12:50 +1100)]
Add announce --event flag

2 years agoWrap error returned from tracker HTTP request director
Matt Joiner [Mon, 28 Nov 2022 23:42:32 +0000 (10:42 +1100)]
Wrap error returned from tracker HTTP request director

2 years agoRename some HTTP identifiers to Http
Matt Joiner [Mon, 28 Nov 2022 23:44:46 +0000 (10:44 +1100)]
Rename some HTTP identifiers to Http

I believe the Go convention on this is bad, and this names them inline with the style used elsewhere in anacrolix/torrent with Ip for example.

Unfortunately it's pretty widespread, so I've only changed the recent additions.

2 years agoModify HTTP request before sending (#787)
Marco Vidonis [Mon, 28 Nov 2022 23:35:36 +0000 (23:35 +0000)]
Modify HTTP request before sending (#787)

* set up custom request headers

* apply headers defined in torrent client config

* add error handling

* provide better name for method

* update error message

* only apply HTTPRequestDirector if not nil

2 years agoFix godo use in torrentfs CI
Matt Joiner [Mon, 28 Nov 2022 23:29:50 +0000 (10:29 +1100)]
Fix godo use in torrentfs CI

2 years agoMetadata size handling and DHT logging noise
Matt Joiner [Wed, 23 Nov 2022 23:33:06 +0000 (10:33 +1100)]
Metadata size handling and DHT logging noise

2 years agogorond ./...
Matt Joiner [Tue, 15 Nov 2022 12:22:10 +0000 (23:22 +1100)]
gorond ./...

2 years agoMove a bunch of stuff into subpackages
Matt Joiner [Wed, 2 Nov 2022 12:03:25 +0000 (23:03 +1100)]
Move a bunch of stuff into subpackages

The core package is very large now, and often only parts of it are needed.

2 years agopass TrackerDialContext to webtorrent trackers (#785)
Raphaël Thériault [Mon, 14 Nov 2022 08:20:08 +0000 (00:20 -0800)]
pass TrackerDialContext to webtorrent trackers (#785)

2 years agosupport providing a DialContext for the http client (#786)
Raphaël Thériault [Mon, 14 Nov 2022 08:19:02 +0000 (00:19 -0800)]
support providing a DialContext for the http client (#786)

2 years agoRetrive file via HTTP URL in `metainfo.go` (#778)
pk [Mon, 26 Sep 2022 00:01:51 +0000 (19:01 -0500)]
Retrive file via HTTP URL in `metainfo.go` (#778)

2 years agoRun default DHT with table maintainer
Matt Joiner [Fri, 23 Sep 2022 13:29:19 +0000 (23:29 +1000)]
Run default DHT with table maintainer

2 years agoUpdate github.com/anacrolix/dht/v2 v1.47.0
Matt Joiner [Sun, 18 Sep 2022 01:26:58 +0000 (11:26 +1000)]
Update github.com/anacrolix/dht/v2

2 years agoMerge branch 'webrtc-conn-leak'
Matt Joiner [Wed, 31 Aug 2022 01:09:47 +0000 (11:09 +1000)]
Merge branch 'webrtc-conn-leak'

2 years agoMerge branch 'bargle'
Matt Joiner [Wed, 31 Aug 2022 01:06:00 +0000 (11:06 +1000)]
Merge branch 'bargle'

2 years agoWin limit amount of peers per udp packet (#771)
Alex Sharov [Mon, 8 Aug 2022 05:38:19 +0000 (12:38 +0700)]
Win limit amount of peers per udp packet (#771)

2 years agouse rLock where can, part2 (#767)
Alex Sharov [Wed, 13 Jul 2022 10:04:03 +0000 (17:04 +0700)]
use rLock where can, part2 (#767)

2 years agouse RLock where can (#766)
Alex Sharov [Wed, 13 Jul 2022 10:03:42 +0000 (17:03 +0700)]
use RLock where can (#766)

2 years agocmd/torrent: Restore the announce and bencode subcommands
Matt Joiner [Wed, 13 Jul 2022 01:34:02 +0000 (11:34 +1000)]
cmd/torrent: Restore the announce and bencode subcommands

2 years agoClose data channel on offer init errors
Matt Joiner [Tue, 12 Jul 2022 01:46:03 +0000 (11:46 +1000)]
Close data channel on offer init errors

2 years agoAlso close created data channels when cleaning up webrtc conns
Matt Joiner [Tue, 12 Jul 2022 00:42:35 +0000 (10:42 +1000)]
Also close created data channels when cleaning up webrtc conns

2 years agoSupport announcing to webtorrent trackers without offers
Matt Joiner [Mon, 11 Jul 2022 05:01:30 +0000 (15:01 +1000)]
Support announcing to webtorrent trackers without offers

2 years agowebtorrent: Create data channel earlier per webrtc examples
Matt Joiner [Mon, 11 Jul 2022 01:39:54 +0000 (11:39 +1000)]
webtorrent: Create data channel earlier per webrtc examples

2 years agoTrace some webrtcNetConn use
Matt Joiner [Mon, 11 Jul 2022 01:38:06 +0000 (11:38 +1000)]
Trace some webrtcNetConn use

2 years agocmd/torrent: Time and log TracerProvider.Shutdown
Matt Joiner [Mon, 11 Jul 2022 01:37:14 +0000 (11:37 +1000)]
cmd/torrent: Time and log TracerProvider.Shutdown

2 years agoClose detached data channel and end span on webrtc conn close
Matt Joiner [Sat, 9 Jul 2022 07:54:08 +0000 (17:54 +1000)]
Close detached data channel and end span on webrtc conn close

2 years agocmd/torrent: Use tracing SDK
Matt Joiner [Sat, 9 Jul 2022 04:03:34 +0000 (14:03 +1000)]
cmd/torrent: Use tracing SDK

2 years agoAdd tracing to webtorrent webrtc resources
Matt Joiner [Tue, 12 Jul 2022 06:05:19 +0000 (16:05 +1000)]
Add tracing to webtorrent webrtc resources

2 years agocmd/torrent serve: Support multiple file paths
Matt Joiner [Sun, 3 Jul 2022 11:46:28 +0000 (21:46 +1000)]
cmd/torrent serve: Support multiple file paths

2 years agocmd/torrent create: Add piece length and private options
Matt Joiner [Sat, 9 Jul 2022 04:06:27 +0000 (14:06 +1000)]
cmd/torrent create: Add piece length and private options

2 years agoRestore torrent metainfo pprint
Matt Joiner [Mon, 27 Jun 2022 09:24:43 +0000 (19:24 +1000)]
Restore torrent metainfo pprint

2 years agoMove cmd/torrent-create into torrent create
Matt Joiner [Tue, 12 Jul 2022 06:12:01 +0000 (16:12 +1000)]
Move cmd/torrent-create into torrent create

2 years agoUpdate anacrolix/bargle
Matt Joiner [Mon, 27 Jun 2022 08:36:27 +0000 (18:36 +1000)]
Update anacrolix/bargle

2 years agoUpdate bargle use
Matt Joiner [Tue, 21 Jun 2022 06:38:19 +0000 (16:38 +1000)]
Update bargle use

2 years agoTrack latest bargle
Matt Joiner [Mon, 20 Jun 2022 08:40:53 +0000 (18:40 +1000)]
Track latest bargle

2 years agoFix webrtcNetAddr.String for IPv6
Matt Joiner [Tue, 12 Jul 2022 00:41:56 +0000 (10:41 +1000)]
Fix webrtcNetAddr.String for IPv6

(cherry picked from commit d37354e6743e905d42689e88068058dd45e5be43)

2 years agoUse webrtc local addr for webrtc conn peer priority
Matt Joiner [Mon, 11 Jul 2022 08:22:23 +0000 (18:22 +1000)]
Use webrtc local addr for webrtc conn peer priority

WebRTC conns are providing the correct IP for peer priority calculations, so use that instead of trying to guess (which doesn't work if there are no regular conn listeners attached to the Client.

(cherry picked from commit e86bb5fee3958dc90a3d012469b1352005d6c9ad)

2 years agoRemove relevant webtorrent offers when closing Torrent
Matt Joiner [Mon, 11 Jul 2022 05:02:24 +0000 (15:02 +1000)]
Remove relevant webtorrent offers when closing Torrent

(cherry picked from commit 73a0b5e4d2fe679aac31d87171537c70f91f46ee)

2 years agoAdd ability to set DialContext/ListenPacket for tracker announcements (#760)
Craig Campbell [Thu, 7 Jul 2022 05:51:58 +0000 (01:51 -0400)]
Add ability to set DialContext/ListenPacket for tracker announcements (#760)

This is useful if you want to use a custom dialer to proxy requests via
an external server since the HTTPProxy can only be used with tcp
trackers and not udp.

2 years agoDo torrent storage flush on piece completion (#755)
Alex Sharov [Thu, 7 Jul 2022 05:46:27 +0000 (11:46 +0600)]
Do torrent storage flush on piece completion (#755)

2 years agogo get -u ./... && go mod tidy
Matt Joiner [Sun, 3 Jul 2022 11:56:42 +0000 (21:56 +1000)]
go get -u ./... && go mod tidy

2 years agoUse metainfo.ChoosePieceLength from more locations
Matt Joiner [Mon, 27 Jun 2022 09:25:38 +0000 (19:25 +1000)]
Use metainfo.ChoosePieceLength from more locations

2 years agoCheck that incoming peer request chunk lengths don't exceed the upload rate limiter... v1.46.0
Matt Joiner [Sat, 25 Jun 2022 13:16:58 +0000 (23:16 +1000)]
Check that incoming peer request chunk lengths don't exceed the upload rate limiter burst size

Should fix #759.

2 years agoAdd exatorrent and finish tidying downstream projects
Matt Joiner [Sat, 25 Jun 2022 07:28:23 +0000 (17:28 +1000)]
Add exatorrent and finish tidying downstream projects

2 years agooptimise torrent piece length (#758)
Marco Vidonis [Thu, 23 Jun 2022 12:44:06 +0000 (13:44 +0100)]
optimise torrent piece length (#758)

2 years agoAdd Client.PublicIPs
Matt Joiner [Wed, 22 Jun 2022 13:59:18 +0000 (23:59 +1000)]
Add Client.PublicIPs

2 years agoFix typo
Matt Joiner [Wed, 22 Jun 2022 03:52:48 +0000 (13:52 +1000)]
Fix typo

2 years agoUpdate tidwall/btree (0.7.2 -> 1.3.1) (#757)
FIGBERT [Wed, 22 Jun 2022 04:16:20 +0000 (21:16 -0700)]
Update tidwall/btree (0.7.2 -> 1.3.1) (#757)

2 years agoUpdate anacrolix/generics v1.45.0
Matt Joiner [Mon, 20 Jun 2022 01:37:25 +0000 (11:37 +1000)]
Update anacrolix/generics

2 years agoUpdate downstream projects
Matt Joiner [Mon, 20 Jun 2022 22:34:38 +0000 (08:34 +1000)]
Update downstream projects

2 years agotorrent serve: Add some reasonable tracker defaults
Matt Joiner [Wed, 15 Jun 2022 04:23:18 +0000 (14:23 +1000)]
torrent serve: Add some reasonable tracker defaults

2 years agoBump up the local client reqq
Matt Joiner [Wed, 15 Jun 2022 04:22:17 +0000 (14:22 +1000)]
Bump up the local client reqq

This seems to boost upload speeds to Transmission to 16MB/s. It may require a corresponding amount of buffering in memory, that could require work later.

2 years agotorrent serve: Print magnet link
Matt Joiner [Tue, 14 Jun 2022 08:23:00 +0000 (18:23 +1000)]
torrent serve: Print magnet link

2 years agoAdd comments for #752 and #753
Matt Joiner [Tue, 14 Jun 2022 00:07:09 +0000 (10:07 +1000)]
Add comments for #752 and #753