Will Franzen
423305a19d
Set up gulpp
2015-02-22 10:27:46 -06:00
roblabla
ab24877359
Refactoring more code. Fix writing bug
2015-02-22 00:41:41 +00:00
roblabla
42de90c758
Fix error handling and global leak in client.js
2015-02-20 01:04:43 +00:00
roblabla
43b29cf904
Loop should be recursive, otherwise messages disappear
2015-02-19 20:36:37 +00:00
roblabla
8a81039e88
Fix infinite loop
2015-02-05 18:25:59 +00:00
roblabla
f29f501ea7
Packets are async. Stalls at crypto.randomBytes
2015-02-05 18:02:34 +00:00
Will Franzen
426a01249c
Start on parsing compressed packets
2015-01-02 11:50:54 -06:00
roblabla
d657371b6b
Fix compression. Implement position. Add some debugging utilities.
2015-01-01 22:20:47 +00:00
Will Franzen
00241c4044
Fix crash when trying to write to socket
2014-12-31 12:26:59 -06:00
Will Franzen
675d358dec
Finish adding compression to pipeline (see note)
...
It's 3 AM and I know theres a pretty big chance none of this code makes sense.
Everything needs to be tested, as well as I need to figure out if encryption
comes after compression or not.
2014-12-30 02:55:04 -06:00
Will Franzen
cfa30d9e1d
Add packets to protocol and threshold to client
2014-12-30 02:08:21 -06:00
roblabla
baaac91055
Set no delay on stream if it's TCP. Fixes #38
2014-10-29 00:30:33 +01:00
deathcap
cda8847b44
Emit a 'raw' event for all raw buffers (in addition to per-packet-type)
2014-04-29 19:58:23 -07:00
roblabla
c1a5b8294b
woops, add back the 'packet' event
2014-04-11 02:08:17 +02:00
roblabla
0a4b365242
Add opportunistic parsing.
2014-04-11 01:48:06 +02:00
deathcap
0cd3ed13d9
Add packet names
2014-01-13 21:56:56 -08:00
roblabla
875d10ed0b
Protocol 1.7 support, Yggdrasil login support, new Client State API
2014-01-06 00:57:18 +01:00
darthfett
9b274df54a
Cleanup: terminate all statements with semicolons, remove unnecessary semicolons, remove unused variables, add hasOwnProperty checks in 'for x in y' loops.
2013-11-19 16:55:30 -07:00
Xabier de Zuazo
664c7e380a
print sent and received packet contents in debug mode
2013-04-15 06:40:09 +02:00
Matt Stith
88255413ce
Only look for SRV records if necessary
...
Vanilla client implementation only looks for SRV records when the server port isn't specified, so let's mirror that behavior.
2013-04-15 00:09:04 -03:00
Matt Stith
d0664f37b4
Connect to a server's SRV record if they specify one
2013-04-13 17:23:31 -03:00
Xabier de Zuazo
936ba5832d
added debug output for read/written packet ids
2013-04-06 05:04:47 +02:00
Xabier de Zuazo
b699d5506a
added debug() method for NODE_DEBUG=mc-proto
2013-04-06 05:02:36 +02:00
Andrew Kelley
93068b935d
don't ever remove the 'error' handler from the socket.
...
fixes crashing with an unhandled error
2013-02-03 22:13:15 -05:00
Andrew Kelley
1a434b9743
client emits more predictable 'end' event
2013-02-03 15:36:55 -05:00
Andrew Kelley
bb76dc8b0a
Revert "Removed socket delays to reduce latency"
...
This reverts commit 6442e8d6b0
.
Reverting until we can figure out why this is causing test failures.
2013-02-03 15:36:17 -05:00
Matt Bell
6442e8d6b0
Removed socket delays to reduce latency
2013-02-01 17:33:03 -08:00
Robin Lambertz
fdc01db825
Pass the original error around, and emit an error event on the client
2013-01-29 17:39:33 +00:00
Robin Lambertz
d6b3a91751
client.end should have a string argument, not an Error object.
2013-01-29 11:05:10 +00:00
Robin Lambertz
997071ef41
Changed if(typeof var === undefined) to if(var). Made errors error objects.
2013-01-29 08:53:23 +00:00
Robin Lambertz
eaa895120a
Original skeleton changes.
2013-01-29 00:44:00 +00:00
Andrew Kelley
10cb3e0100
test all packets
2013-01-07 23:36:14 -05:00
Andrew Kelley
2e75851fd6
test passing: clients can log in and chat
2013-01-04 22:47:54 -05:00
Andrew Kelley
5e0ae2713a
Client also emits 'packet' events for every packet
2013-01-04 21:57:17 -05:00
Andrew Kelley
38194ee9b4
add test, ping, and 2 API changes
...
* passing test: responds to ping requests
* `mc.ping` - ping a server for info
* `createServer`: `options.timeout` -> `options.checkTimeoutInterval`
* `Client` emits `connect` event
2013-01-04 21:33:19 -05:00
Andrew Kelley
1661ef3b4b
API updates
...
* test passing: kicks clients that do not log in
* index exports `Client` and `Server`
* `createServer`: `options.keepAliveInterval` -> `options.kickTimeout`
* `Client` event `end` includes `reason` argument
- `LoginTimeout`
- `KeepAliveTimeout`
- `ServerShutdown`
* `createClient`: Set `options.keepAlive` to `false` to disable sending
keep alive packets
* `Client`: `options.isServer` defaults to `false`.
2013-01-04 20:55:53 -05:00
Andrew Kelley
3a8bfaf8e3
refactor + createServer support
2013-01-04 01:45:57 -05:00