Chris Boden
5a80a67f03
[WAMP][BCB] Init new serer component
...
Moved WampServer to ServerProtocol
New WampServer component
New Topic class
2012-07-17 16:57:05 -04:00
Chris Boden
3a844edbfd
[WebSocket] Performance
...
No more sprintf calls
2012-07-15 11:57:42 -04:00
Chris Boden
1afd42d987
PHP 5.4 tests
2012-07-14 18:52:44 -04:00
Chris Boden
e27ab9891b
[WebSocket] Encoding
...
Added the ability to turn UTF-8 encoding checks off to increase performance
Separated encoding checks into its own set of classes
Encoding checks now use mbstring or iconv depending on availability
2012-07-14 16:44:36 -04:00
Chris Boden
188e9f04ce
[Server][WebSocket] Performance
...
Switched IoServer::factory to use React factory (libevent stable)
Bit operations in Frame for performance gains
Added performance tests back to fuzzing config
2012-07-14 11:58:26 -04:00
Chris Boden
288f74a9f1
[WebSocket] RFC Frame tests
...
Removed global @coverage annotation in favour of per-method
This allows better coverage results, less false-positives
New tests: Reserved bits, masking, buffer underflows
2012-07-13 20:05:22 -04:00
Chris Boden
f86230fd16
[WebSocket] Removed deprecated code
...
Removed some unused Frame code in favour of newer APIs
Removed RFC's Message::frame and Frame::create methods
2012-07-13 19:58:44 -04:00
Chris Boden
0c55aa6bef
Test cleanup
...
Added the AutobahnTestSuite Fuzzing Server to AB tests
giving another language (Python) to compare Ratchet to
Added a profile option for make
Cleaned up the tests directory structure
2012-07-13 19:53:18 -04:00
Chris Boden
14959b6ea5
PHP min req bump
...
PHP <= 5.3.4 now required to coincide with Symfony's updated requirement
2012-07-13 19:46:49 -04:00
Chris Boden
a2188a449e
[WebSocket] Performance
...
Added unit tests for Rsv bit checks
Using binary operators to check bits resulting in massive performance gains
2012-07-13 11:38:16 -04:00
Chris Boden
2d9967b066
Version bump in test conf
2012-07-13 10:24:51 -04:00
Chris Boden
54b072884c
Merge branch 'refs/heads/master' into 0.2-beta
...
Conflicts:
composer.lock
src/Ratchet/ConnectionInterface.php
2012-07-12 20:00:03 -04:00
Chris Boden
1e298c634b
Version tagging
2012-07-12 19:52:04 -04:00
Chris Boden
fd9e03bd99
API docs and cleanup
2012-07-11 15:43:54 -04:00
Chris Boden
6115df886d
README
2012-07-11 11:36:40 -04:00
Chris Boden
2c9a446efe
[Tests] Skip all binary
2012-07-11 10:43:55 -04:00
Chris Boden
baed21ed8b
[WebSocket] AB tests, React update output buffer
...
AB tests 9.* (non-binary) all passing
2012-06-17 22:47:29 -04:00
Chris Boden
5d1cabc751
[WebSocket] Fixed missing request headers bug
...
Accidentally removed HTTP request headers from connections
Added them back
2012-06-14 16:07:16 -04:00
Chris Boden
49d68ba7df
[WebSocket] Hixie refactoring
...
Created parent interface for messages and frames
Created Hixie Connection
Applied updated interfaces to Hixie versions
Removed __toString on msgs/frames since there could be 2-3 types returned
2012-06-14 15:07:52 -04:00
Chris Boden
439ac1234f
[WebSocket] Cleanup
...
Removed some obsolete code
Handshakes always returns a response
2012-06-14 11:24:18 -04:00
Chris Boden
87dcd1d510
[WebSocket] Re-scoped variable
...
Protecting Frame::$data to prevent overflow error
Correct frame contents is fetched from ::getContents()
2012-06-14 10:54:26 -04:00
Chris Boden
9d2939e1e8
[WebSocket] Cleanup
...
Added a couple coverage unit tests
CS
2012-06-13 23:06:12 -04:00
Chris Boden
f1612a603f
[WebSocket] Separating responsibilities
...
Separated HandshakeNegotiator into HttpRequestParser and VersionManager
Moved WsConnection to Version specific Connection
2012-06-13 22:46:08 -04:00
Chris Boden
55243550af
[WebSocket] Refactoring
...
Updated deps; React Socket notify client of shutdown
Separated core interfaces into many
Removed initial version support out of handshake negotiator
Moved message parser responsibility to each version
Removed __toString method from MessageInterface as to not confuse message from payload
Support for RFC control frames
Support message concatenation
[BCB] (temporary) WsConnection hard coded to RFC version
Handshake checks for \r\n\r\n anywhere, not just at end of string
2012-06-09 19:38:44 -04:00
Chris Boden
3a530c8c24
[WebSocket] RFC Masking
...
Full un/masking capabilities on RFC6455 Frames
2012-06-03 11:55:35 -04:00
Chris Boden
9f0e29fe7f
[WebSocket] Frame masking
2012-06-03 02:03:16 -04:00
Chris Boden
54479da9d5
[WebSocket] Messaging
...
Fluent interface on MessageInterface::addFrame
RFC6455 Message unit tests
RFC handling TCP concatenation (refs #31 )
2012-06-02 22:08:27 -04:00
Chris Boden
7790ef39a1
[WebSocket] Frame overflow
2012-06-02 21:11:29 -04:00
Chris Boden
291bd5da5a
[WebSocket] RFC6455 Framing work
...
New code to create a frame
Unit tests for new code
API cleanup
2012-06-02 15:44:18 -04:00
Chris Boden
070a4f1c34
[Tests] Coverage and extension checking
2012-06-01 23:41:51 -04:00
Chris Boden
9a27adfcd8
[Tests] Multiple AB WS tests
2012-05-21 11:38:24 -04:00
Chris Boden
ff07104316
AutobahnTestSuite
...
Added files to test Ratchet against the AutobahnTestSuite
Bumped version v0.2b
Updated how to handle control frames to run the test suite
2012-05-20 13:24:37 -04:00
Chris Boden
0ef0410ab6
Cleanup
...
CS
Removed a var_dump
Removed garbage from a unit test
2012-05-19 23:57:20 -04:00
Chris Boden
935866c036
[WebSocket] Refactoring
...
Separated handshake negotiation into its own class
`HandshakeNegotiator` deals with Request/Response classes
These changes are geared towards separate responsibility
Refs #29
2012-05-19 23:43:30 -04:00
Chris Boden
d075b99c26
[WebSockets] Handshake encoding + case insensitivity
...
Updated RFC6455 handshaker to check values case insensitively
Made sure RFC6455 handshaker matches encoding properly
Added mbstring as a requirement for Ratchet
Refs #28 , #30
2012-05-19 23:42:13 -04:00
Chris Boden
986edd9562
[WAMP] [BCB] Publishing
...
BC break: Updated the `WampServerInterface` to have a strict API
Exclude and Eligible are now always arrays acting like black/white list
Changed `uri` to `topic` to be more generic with Pub/Sub
Added unit tests for `onPublish`
2012-05-19 13:30:58 -04:00
Chris Boden
f729be2ef3
[WebSocket] [WAMP] Sub-Protocols
...
Updated how Ratchet handles WebSocket sub-protocols
Broke out WsServerInterface to not extend MessageInterface;
Components will instead use Interface segregation principle
WAMP is now able to work without the developer having to
manually enable the WAMP sub-protocol
2012-05-12 22:42:56 -04:00
Chris Boden
1582853255
[Server] Fixed remoteAddress not being set on Connection
...
Updated to latest version of `React`
Fixed bug where `$conn->remoteAddress` always returned "127.0.0.1"
This will result in IpBlackList working properly
Added unit tests for IoServer
2012-05-12 19:35:39 -04:00
Chris Boden
710ec2535f
[WAMP][BCB] Subscribe protocol compliance
2012-05-10 23:14:59 -04:00
Chris Boden
ce12a977bf
Filename case fix
2012-05-08 23:22:17 -04:00
Chris Boden
0d592ae875
Case sensitiviy fixes
2012-05-08 23:19:28 -04:00
Chris Boden
4735218aa0
[BCB] Namespace changes
...
Removed the `Component` namespace
Removed the `Resource` namespace
Renamed components:
`IOServerComponent` => `IoServer`
`WebSocketComponent` => `WsServer`
`SessionComponent` => `SessionProvider`
`WAMPServerComponent` => `WampServer`
`IpBlackListComponent` => `IpBlackList`
`FlashPolicyComponent` => `FlashPolicy`
2012-05-08 23:14:28 -04:00
Chris Boden
ef6e777f31
Guzzle changes
...
Taking advantage of RequestFactory LSB
New tests to make sure Guzzle returns what's expected
2012-05-08 12:46:21 -04:00
Chris Boden
decf88833c
Merge branch 'refs/heads/master' into socket-server
2012-05-07 21:06:25 -04:00
Chris Boden
afa2dacf40
[Flash] Fixed unit test coverage annotation
2012-05-07 21:06:11 -04:00
Chris Boden
5078aa2e4c
Merge branch 'refs/heads/master' into socket-server
2012-05-07 21:03:01 -04:00
Chris Boden
d9bc1af385
[WAMP] Cleanup
...
Removed all Command classes (WAMP and global)
We-wrote WAMP unit tests to match
refs #22
2012-05-07 20:59:47 -04:00
Chris Boden
d30c8358ef
[BCB] [WIP] Overhaul
...
React at the core of Ratchet, refs #6
Removed Commands (except WAMP), refs #22
Updated Guzzle to 2.4 branch, refs #20
Fixed some Hixie bugs, refs #21
2012-05-07 18:49:13 -04:00
Mike Almond
52b1704155
FlashPolicy all the things
...
$policy = new Ratchet\Component\Server\FlashPolicyComponent();
$policy->addAllowedAccess('192.168.1.120', '8000');
$io = new Ratchet\Component\Server\IOServerComponent($policy);
$io->run(843);
2012-05-07 13:44:48 -04:00
Chris Boden
af35aab345
True errors
2012-05-06 14:27:14 -04:00
Chris Boden
dbc40b821d
ConnectionInterface updates
...
Added write/end methods to Connections
Created decorator class implementing ConnectionInterface
2012-05-06 13:18:21 -04:00
Chris Boden
8ab79d217f
Guzzle update
...
Updated Guzzle to 2.4.1
Fixed code to pass unit tests from update
2012-05-04 18:17:23 -04:00
Mike Almond
6374bb3dac
Removing a method that isn't available in sockets and fixing validation and tests
2012-05-04 10:20:24 -04:00
Mike Almond
e7ed247393
[FlashPolicy] Updating the flash policy component
2012-05-01 14:49:54 -04:00
Chris Boden
913774e072
Unit tests
2012-04-29 20:42:33 -04:00
Chris Boden
86b3343b6f
[WAMP] unit tests and fix
...
Increases code coverage on WAMP
Fixed a bug found while writing tests
2012-04-29 19:21:29 -04:00
Chris Boden
852e5777e3
Silently fail unblock
...
If the user unblocks and address that was not blocked, silently fail
2012-04-29 13:53:10 -04:00
Chris Boden
550b32e1e7
IpBlackList
...
Fixed bug where onClose was propagated if onOpen wasn't
Filter out ports from IP4 addresses
2012-04-29 13:20:26 -04:00
Chris Boden
8f653294c5
IpBlackList unit test coverage
2012-04-29 12:48:43 -04:00
Chris Boden
47e7059ed6
Mock MessageComponent common access
...
Updated class to match the WAMP component
2012-04-29 12:38:37 -04:00
Chris Boden
6be16bea4a
Added IpBlackListComponent
...
refs #4
2012-04-29 12:35:46 -04:00
Chris Boden
b0d5274985
[WAMP] Oops, committed unit tests
...
Adding the unit tests for WAMP to the repo!
2012-04-28 23:46:23 -04:00
Chris Boden
9e667dfc8b
[WAMP] Work
...
Unit testing WAMP; 0 -> 84% coverage
Fixed an Event command bug
API documentation
2012-04-28 19:32:32 -04:00
Chris Boden
228d0b8627
Composite Command updates
...
Unit tested Composite
Corrected interface to be E_STRICT compliant
Refactored enqueue method
2012-04-28 18:25:57 -04:00
Chris Boden
b6b2099415
Merge branch 'refs/heads/symfony/sessions'
...
Conflicts:
composer.json
composer.lock
2012-04-26 21:13:48 -04:00
Chris Boden
4654acb7d6
Replaced Connection::getId() with resourceId property
2012-04-25 22:59:46 -04:00
Chris Boden
f98cda3e29
Fixed unit test namespace
2012-04-25 22:22:49 -04:00
Chris Boden
dd79245ecf
Simplified
...
Removed magic methods from Connection(Interface)
Connection is closer to a POPO now
2012-04-25 21:58:12 -04:00
Chris Boden
e06aa30096
BC Break - Server::run parameters change
...
Updated IoServerComponent::run parameters
* $port is now first
* only $port is required
* SocketInterface is last and optional
2012-04-22 13:15:43 -04:00
Chris Boden
1e9665f6cd
[Session] PDO Unit Test
2012-03-29 18:31:50 -04:00
Chris Boden
a4bc626fae
[Session] Fixes, cleanup, docs, tests
2012-03-29 17:42:42 -04:00
Chris Boden
9ff2d406f0
Disabling Unit test
...
Disabling a unit test due to failure on Travis CI...can't figure this one out...systems match perfectly, fails on TCI but not locally (or other developer's)
2012-02-08 17:17:01 -05:00
Chris Boden
a4b0990961
Typecast bug fix
...
Attempted to fix Travis CI failing unit test with typecasting
2012-02-08 17:11:10 -05:00
Mike Almond
8a2b9153ab
Merge branch 'refs/heads/guzzle' into guzzle-refactor
...
* refs/heads/guzzle:
[HIXIE] Reverting back to the proper response code.
[TESTS] Fixing unit tests for versions
[REFACTOR] Fixing some code based on unit tests
[REFACTOR] Changing the handshake to return a guzzle object
2012-02-06 20:55:56 -05:00
Chris Boden
cb49cf06e7
Passing Unit Test
...
Turned on E_STRICT and fixed resulting unit test failures
2012-02-04 12:45:37 -05:00
Chris Boden
01804dac6c
Attempted Fixes
...
Attempting to change some things to pass on TravisCI...even though I'm not getting any unit test failures.
2012-02-04 12:37:53 -05:00
Chris Boden
33bf91dcea
Socket refactor
...
Moved SocketInterface and Socket to Resource namespace
2012-02-01 20:52:10 -05:00
Chris Boden
e26dc0ccde
Namespace refactor fixes
...
Updated old namespaces from refactor
2012-02-01 19:59:56 -05:00
Mike Almond
10da7e4920
[TESTS] Fixing unit tests for versions
...
Adding a unit test for Hixie and fixing the unit test for RFC
2012-02-01 13:17:51 -05:00
Chris Boden
2c976d0102
Continuing logical NS refactor
...
Updated more components to reflect new terminology when using Ratchet components
2012-01-31 20:47:59 -05:00
Chris Boden
149a99cf7c
Merge branch 'refs/heads/composer' into refactor
...
Conflicts:
tests/bootstrap.php
2012-01-31 19:47:02 -05:00
Chris Boden
e1c7ce361f
App -> Component Refactoring
...
Updating namespacing and conventions as per ticket #1
2012-01-31 08:37:51 -05:00
Chris Boden
6f244fc659
Vendor spec
...
Manually overrode Guzzle in composer to not fetch Guzzle's reps as they're not needed for what's used in Ratchet
Removed SplClassLoader in favour of Composer's CladdLoader
2012-01-30 21:52:29 -05:00
Chris Boden
c18cc18bb8
Working Composer
...
Deps, versioning, autoloader from composer implemented
2012-01-30 21:41:49 -05:00
Chris Boden
451f7f4235
Init NS Refactor
...
Started refactor of namespaces from "app" to "component"
Added ConnectionInterface to replace concrete Connection
Removed socket config classes
2012-01-30 17:35:49 -05:00
Chris Boden
ad9b8c1644
psr convention
...
Renamed lib to src
2012-01-30 17:11:30 -05:00
Chris Boden
5334f94b91
Merge branch 'refs/heads/header' into wamp
2012-01-08 21:59:17 -05:00
Chris Boden
f766278a14
Passing Tests
...
Finally able to do incomplete tests. Ratchet passes (finally).
2012-01-06 22:00:35 -05:00
Chris Boden
08fa8a948f
Guzzle
...
Implementing Guzzle to parse incoming handshake request
Functional on RFC version
2012-01-06 16:18:12 -05:00
Chris Boden
ed3cfc16da
Loosened Dependencies
...
Removed construct dependency from ApplicationInterface - changing full decorator to changeable stack.
2012-01-04 11:22:42 -07:00
Chris Boden
8d1b2548e7
Unit test doc
...
Attempting to finish off the two incomplete unit tests but couldn't because of a PECL bug.
2011-12-18 14:36:56 -05:00
Chris Boden
feb6c5ab57
URI verification
...
Added code in handshake to verify the URI
Updated unit testing to reflect this
2011-12-17 15:46:44 -05:00
Chris Boden
5c5f9e558f
Mask unit test
2011-12-05 22:32:33 -05:00
Chris Boden
788b1f66cc
RFC handshake verification + unit tests
...
Went through section 4 of RFC 6455 making sure incoming handshake was valid with accompanying unit tests
2011-12-02 23:58:08 -05:00
Chris Boden
d85ea57ece
Merge branch 'refs/heads/master' into rfc
2011-12-02 19:48:19 -05:00
Chris Boden
160291a23f
Conn lambda test
...
Updated Connection set/get unit test to accept objects
2011-12-02 16:45:34 -05:00
Chris Boden
1f608f1d3a
Stubs for RFC protocol version
2011-11-30 10:08:11 -05:00
Chris Boden
75afa73826
Unit tests
...
Socket interface update
Server testing
Connection setting
2011-11-24 21:53:04 -05:00
Chris Boden
0670568789
Unit Tests and fixes
...
Set some incomplete tests to pass
Updated an interface bug found from unit tests
2011-11-20 22:36:14 -05:00
Chris Boden
1b01582ab9
SocketInterface
...
Added unix socket methods to interface, replaced __call/call_user_func calls with concrete methods
2011-11-20 20:38:20 -05:00