Commit Graph

334 Commits

Author SHA1 Message Date
Steven Allen 351bd6eb43 gx publish 0.9.14 2018-06-05 15:53:48 -07:00
Steven Allen f6afd637b8 make sure to *fully* close streams
We need to wait for the EOF from the other side when closing from the sending
side (unless we've already seen an EOF).
2018-06-05 15:53:25 -07:00
Steven Allen d02440c25d fix tests for swarm refactor 2018-06-05 15:53:25 -07:00
Steven Allen bac5c5ae79
Merge pull request #81 from libp2p/gx/update-multistream
gx publish 0.9.13
2018-06-04 16:46:14 +00:00
Steven Allen d15714d22d gx publish 0.9.13 2018-06-04 09:42:52 -07:00
Steven Allen cb37ff1fba
Merge pull request #80 from libp2p/fix/78
fix segfault on arm due to bad atomic access
2018-06-03 03:34:00 +00:00
Steven Allen 4f3a97bcc3 fix segfault on arm due to bad atomic access
fixes #78
2018-05-29 18:59:04 +02:00
James Ray 9762f1ca7f
Add '; see [gerbil-simsub](https://github.com/vyzo/gerbil-simsub) for a high-level literate specification.' 2018-05-29 14:56:59 +10:00
James Ray 5e807d9539
Add and update info on gossipsub and implementations 2018-05-29 14:31:47 +10:00
Steven Allen 4e84ab6c81 gx publish 0.9.12 2018-04-16 14:13:49 +09:00
vyzo 7f3ecddf94
Merge pull request #72 from libp2p/fix/issue-69
Don't block the event loop because of slow subscriptions
2018-03-07 08:06:55 +02:00
vyzo 1538e0d417 downgrade dropped message logging to Infof 2018-03-07 07:57:42 +02:00
vyzo d5d886d853 Don't block the event loop if the subscriber is too slow
Closes #69
2018-03-07 07:57:42 +02:00
Steven Allen e48c6f5d4a
Merge pull request #71 from libp2p/gx/publish
gx publish 0.9.11
2018-03-01 21:14:33 +00:00
vyzo cbeeb4e194 gx publish 0.9.11 2018-03-01 23:05:43 +02:00
vyzo ceff712aba
Merge pull request #70 from libp2p/feat/remove-validator
UnregisterTopicValidator for removing topic validators
2018-02-28 22:35:58 +02:00
vyzo ed1dd154b6 add test for UnregisterTopicValidator 2018-02-28 22:26:42 +02:00
vyzo 399bcb25a6 UnregisterTopicValidator for removing topic validators 2018-02-28 22:14:54 +02:00
Steven Allen 89c19c0b98 gx publish 0.9.10 2018-01-31 18:54:35 -08:00
vyzo d553fb800c
Merge pull request #60 from libp2p/feat/modularization
Modularized PubSub Routing
2018-01-30 20:59:47 +02:00
Steven Allen b595000d49 gx publish 0.9.9 2018-01-27 17:47:38 -08:00
vyzo 327e72d4fd demote erros per #62 2018-01-27 09:54:57 +02:00
vyzo e7b1fe6e75 modularized pubsub; Flooding is just a routing method. 2018-01-27 09:54:57 +02:00
vyzo c036ca0c01
Merge pull request #62 from libp2p/feat/demote-errors
demote errors/warnings to info
2018-01-27 09:47:23 +02:00
Steven Allen 098f1d5819 demote errors/warnings to info
* dropped/killed connections are not errors.
* handleIncomingRPC/publishMessage do not return errors.
2018-01-26 15:00:47 -08:00
Steven Allen c82e67dcd3
Merge pull request #55 from libp2p/feat/validators
Message Validators
2018-01-24 06:03:20 +00:00
Steven Allen 217e5307cb gx publish 0.9.8 2018-01-19 20:52:58 -08:00
vyzo 3f4fc21228 fix comment, subscriptions don't have validators any more. 2018-01-18 20:09:09 +02:00
vyzo bbdec3fda2 implement per topic validators 2018-01-18 19:12:36 +02:00
Raghav Gulati 99a4f9e5ed Increase timeout in TestSubscribeMultipleTimes
Increase delay to 10ms; makes go test -race happy.
2018-01-16 11:46:33 +02:00
vyzo fceb00d234 improved comment about global validation throttle 2018-01-14 02:24:13 +02:00
vyzo cb365a5fee remove faulty tests 2018-01-14 02:01:42 +02:00
vyzo f1be0f1296 don't spawn an extra goroutine for the validator context 2018-01-13 22:14:01 +02:00
vyzo 145a84a33b use a single channel for all validation results 2018-01-13 22:02:28 +02:00
vyzo f6081fb061 pushMsg should just call maybePublishMessage when it doesn't need validation 2018-01-13 21:56:57 +02:00
vyzo 473a5d2873 sendMsg should have a buffer 2018-01-13 21:39:35 +02:00
vyzo edcb251ad1 install global validation throttle, use reasonable defaults. 2018-01-13 21:15:40 +02:00
vyzo 856a25c8eb WithMaxConcurrency is WithValidatorConcurrency
and defaultMaxConcurrency is defaultValidateConcurrency.
2018-01-13 20:56:03 +02:00
vyzo bf2151ba5f the sendMsg channel should yield pointers for consistency 2018-01-13 20:47:28 +02:00
vyzo 5ef13c764e don't always spawn a goroutine for sending a new message 2018-01-13 20:11:32 +02:00
vyzo c95ed28496 add validation context for cancelation on aborts 2018-01-13 18:34:00 +02:00
vyzo fba445bc6d code cosmetics
reword pushMsg for less indentation nesting.
2018-01-13 14:44:33 +02:00
vyzo 982c4de960 per subscription validation throttle and more efficient dispatch logic 2018-01-13 14:31:34 +02:00
vyzo d2f6a0050f WithValidator and WithValidatorTimeout are subscription options 2018-01-13 12:33:03 +02:00
vyzo 4241241031 fix dangling maxConcurrency reference 2018-01-13 12:24:31 +02:00
keks 88274db0bb make maximum concurrency configurable, split loop 2018-01-13 12:15:27 +02:00
keks fe09d1eea3 make validator timeout configurable 2018-01-13 12:13:54 +02:00
keks 6e8b9f2d5c fix timeout 2018-01-13 12:13:54 +02:00
keks 02877cda71 complete validator functions
- make validators time out after 100ms
  - add context param to validator functions
  - add type Validator func(context.Context, *Message) bool
- drop message if more than 10 messages are already being validated
2018-01-13 12:13:54 +02:00
keks 89e6a06f3c better tests for validation 2018-01-13 12:12:21 +02:00