Benjamin Sergeant
aecd5e9c94
bring back socket mutex which is needed, some CI failures are happening without it
2019-05-16 15:58:20 -07:00
Benjamin Sergeant
e0edca43d5
disable socket mutex usage in WebSocketTransport
2019-05-16 15:46:32 -07:00
Benjamin Sergeant
ce70d3d728
remove dead code
2019-05-16 15:05:20 -07:00
Benjamin Sergeant
d9be40a0de
refactor connect unittest so that it hits a local server instead of a remote server
2019-05-16 14:25:31 -07:00
Benjamin Sergeant
e469f04c39
travis makefile fix
2019-05-16 14:02:24 -07:00
Benjamin Sergeant
11774e6825
try to run ws test on linux + macOS on travis
2019-05-16 13:57:33 -07:00
Benjamin Sergeant
42bdfb51c3
Add constants for closing code and messages
2019-05-16 12:46:53 -07:00
Benjamin Sergeant
fd637bf1e1
first socket test hit a local server instead of a remote server / this can help with a windows intermittent failure
2019-05-16 12:24:58 -07:00
Benjamin Sergeant
8085e1416c
build ws on travis (mac + linux)
2019-05-16 07:01:15 -07:00
Benjamin Sergeant
671c9f805f
use a regular mutex instead of a recursive one + stop properly
2019-05-15 19:26:02 -07:00
Benjamin Sergeant
ace7a7ccae
adding logging to IXWebSocketTestConnectionDisconnection makes it fails reliably
2019-05-15 19:26:02 -07:00
Benjamin Sergeant and GitHub
9c3bdf1a77
Update README.md
2019-05-15 19:22:05 -07:00
Benjamin Sergeant and GitHub
f5242b3102
Update README.md
2019-05-15 18:57:17 -07:00
Benjamin Sergeant
f1272f059a
-j option actually work ...
2019-05-15 18:15:45 -07:00
Benjamin Sergeant
91595ff4c2
unittest / add options to set the number of jobs
2019-05-15 17:52:03 -07:00
Benjamin Sergeant
3755d29a45
enum class HttpErrorCode derives from int
2019-05-15 16:50:00 -07:00
Benjamin Sergeant
c2b75399ae
try to re-enable some tests
2019-05-15 16:28:29 -07:00
Benjamin Sergeant
a33ecd1338
recursive mutex + enable test that was breaking on Ubuntu Xenial + gcc + tsan
2019-05-15 16:01:05 -07:00
Benjamin Sergeant
a7e29a9f36
comment failing test
2019-05-15 15:44:14 -07:00
Benjamin Sergeant
02399dfa5c
comment failing test
2019-05-15 15:37:30 -07:00
Benjamin Sergeant
aec2941bac
do not build ws for now on travis
2019-05-15 15:26:49 -07:00
Benjamin Sergeant
9315eb5289
more protection against socket when closing
2019-05-15 15:18:46 -07:00
Benjamin Sergeant
5b2b2ea7b0
fix compile errors with C++ enum class
2019-05-15 15:18:46 -07:00
Benjamin Sergeant
d90b634e80
close and stop with code and reason + docker = ubuntu xenial
2019-05-15 15:18:46 -07:00
Benjamin Sergeant
701be31554
Revert "Revert "fix cast warning caught on windows""
...
This reverts commit 25eaf730bc .
2019-05-13 22:16:49 -07:00
Benjamin Sergeant
25eaf730bc
Revert "fix cast warning caught on windows"
...
This reverts commit 4edb7447df .
2019-05-13 21:35:34 -07:00
Benjamin Sergeant
4edb7447df
fix cast warning caught on windows
2019-05-13 21:29:47 -07:00
Benjamin Sergeant
79c17aba49
build with gcc on Linux
2019-05-13 17:35:21 -07:00
Benjamin Sergeant
80a90496d9
use spdlog for logging in the unittest
2019-05-13 17:32:57 -07:00
Benjamin Sergeant
bbca803840
fix inverted conditional
2019-05-13 17:18:07 -07:00
Benjamin Sergeant
160d3869a9
server code / add dedicated thread to close/join terminated connection threads
2019-05-13 17:17:35 -07:00
Benjamin Sergeant
afd8f64da8
travis cmake version on macOS does not know --parallel option
2019-05-13 17:17:35 -07:00
Benjamin Sergeant
6d2548b823
build in parallel + stop building linux + clang
2019-05-13 17:06:56 -07:00
Benjamin Sergeant
642356d353
disable ping tests for now as they are not super reliable
2019-05-13 17:01:22 -07:00
Benjamin Sergeant and GitHub
ba0fa36c2a
Feature/windows ci ( #76 )
...
* close with params
* ...
* different generator
* core size = 1
* disable more tests to get something working on windows
* try to enable another test on windows
* enable all OS
* set proper version of linux
* another try
* try again with just env variables
* Revert "core size = 1"
This reverts commit 29af74bba6 .
* add windows and mac
* Revert "close with params"
This reverts commit 6bb00b6788 .
2019-05-13 16:51:58 -07:00
Benjamin Sergeant
156288b17b
all derived class use final keyword
2019-05-12 11:43:21 -07:00
Benjamin Sergeant
ed0e23e8a5
bump version to 2.0.0
2019-05-11 14:22:41 -07:00
Benjamin Sergeant
a61586c846
add comment about why a unittest is disabled
2019-05-11 12:25:40 -07:00
Benjamin Sergeant
d64d50c978
remove irrelevant comment
2019-05-11 12:24:11 -07:00
Benjamin Sergeant
0caeb81327
minor tweaks to have full feature parity before unittest broke
2019-05-11 11:54:21 -07:00
Benjamin Sergeant
edac7a0171
fix race condition in SelectInteruptPipe, where _fildes are not protected (caught by fedora tsan)
2019-05-11 11:45:26 -07:00
Benjamin Sergeant
2dc1547bbd
rename some variables, minor cleanup
2019-05-11 10:24:28 -07:00
Benjamin Sergeant
4df58f3059
fix warning in statsd_client about %m gnu only printf special char
2019-05-11 09:22:29 -07:00
Benjamin Sergeant
06b8cb8d3b
fix overflow warning in msgpack11.cpp
2019-05-10 21:17:05 -07:00
Benjamin Sergeant
ff81f5b496
add env var to display the ws command typed in
2019-05-10 16:27:23 -07:00
Benjamin Sergeant
c89f73006e
cout -> spdlog
2019-05-10 12:33:34 -07:00
Benjamin Sergeant
dfaaaca223
fix static analyzer thing with un-used variable
2019-05-09 16:57:58 -07:00
Benjamin Sergeant
c7f0bf3d64
use spdlog for logging in ws + unittest + remove un-needed mutex
2019-05-09 15:30:44 -07:00
Benjamin Sergeant
234ce4c173
cout -> cerr
2019-05-09 15:06:42 -07:00
Benjamin Sergeant
9441095637
tweak unittest sleep duration to fix gcc+linux CI
2019-05-09 11:10:39 -07:00
Benjamin Sergeant
a7f42f35db
warning police
2019-05-09 09:25:56 -07:00
Benjamin Sergeant
28c3f2ea26
IXCobraMetricsThreadedPublisher.cpp uses a lambda to log instead of std::cerr
2019-05-08 18:53:32 -07:00
Benjamin Sergeant
8dc132dbd3
change default ports for the ws command line tool
2019-05-08 13:56:42 -07:00
Benjamin Sergeant
98e2fbca6a
ws connect display more accurate messages for incoming messages
2019-05-08 13:56:42 -07:00
Benjamin Sergeant
2e4c4b72b6
update appveyor windows build file
2019-05-06 17:50:55 -07:00
Benjamin Sergeant
205c8c15bd
socket server / used wrong mutex to protect _connectionsThreads
2019-05-06 12:24:20 -07:00
Benjamin Sergeant and GitHub
d561e1141e
Update README.md
2019-05-06 09:22:52 -07:00
Benjamin Sergeant
5dbc00bbfe
doc: add reference to the conan file built at https://github.com/Zinnion/conan-IXWebSocket
2019-05-01 21:31:32 -07:00
Benjamin Sergeant
14ec8522ef
remove un-needed _backgroundThreadRunning variable
2019-05-01 11:09:25 -07:00
Benjamin Sergeant and GitHub
0c2d1c22bc
Make AutomaticReconnection optional ( #47 )
...
* unittest pass + commands behave as expected
* cleanup
2019-04-29 21:12:34 -07:00
Benjamin Sergeant
1d39a9c9a9
build fix
2019-04-29 20:54:00 -07:00
Benjamin Sergeant
b588ed0fa1
tsan fixes on ubuntu xenial (what travis run)
2019-04-29 20:48:16 -07:00
Benjamin Sergeant
d9f7a138b8
dns lookup: fix race condition accessing _errMsg
2019-04-29 19:29:27 -07:00
Benjamin Sergeant
d3e04ff619
tsan linux tentative fix / copy string instead of passing a const reference
2019-04-29 17:27:53 -07:00
Benjamin Sergeant
372dd24cc7
rename _blocking to _backgroundThreadRunning and invert the naming
2019-04-29 16:54:08 -07:00
Benjamin Sergeant
705e0823cb
ws connect mode / add a flag to disable automatic reconnection, not hooked up yet
2019-04-29 14:31:29 -07:00
Benjamin Sergeant
8e4cf74974
enable tsan on travis for all configs
2019-04-29 09:11:16 -07:00
Benjamin Sergeant
0a7157655b
initialize netSystem (aka winsock on windows) explicitely
2019-04-25 16:38:15 -07:00
Benjamin Sergeant
b178ba16af
fix indentation of greatestCommonDivisor
2019-04-25 16:21:36 -07:00
Benjamin Sergeant
e4c09284b5
Remove commented code
2019-04-25 16:16:52 -07:00
Benjamin Sergeant
9367a1feff
Fix data race in WebSocket where _url is accessed without protection in setThreadName
...
Also fix with url usage + docker container uses fedora and works with tsan
2019-04-25 16:11:46 -07:00
Benjamin Sergeant
d37ed300e2
disable failing unittest temporarily
2019-04-25 09:04:35 -07:00
Benjamin Sergeant
d036ad7138
tsan fix for the IXWebSocketServerTest test, where there's a data race for connectionId
2019-04-24 22:11:14 -07:00
Benjamin Sergeant
4fe07579b9
Fix data races in DNSLookup (tsan)
2019-04-24 21:53:31 -07:00
Benjamin Sergeant
f563d14134
better server termination / another try at preventing thread join failures
2019-04-24 09:45:53 -07:00
Benjamin Sergeant
f1b3ecc738
compiler warning police
2019-04-24 09:45:03 -07:00
Benjamin Sergeant
8387f89115
Fix #38 Add some docker doc in the README
2019-04-23 20:51:58 -07:00
Benjamin Sergeant
773f92347f
ws cobra publish stress mode fix
2019-04-23 20:51:58 -07:00
Benjamin Sergeant
c85d5da111
add example websocket C++ server snake which supports basic cobra ops (publish and subscribe without stream sql
2019-04-22 17:33:45 -07:00
Benjamin Sergeant
9ab7bc652a
(server) attempt to fix broken macOS unittest on travis CI
2019-04-22 09:36:16 -07:00
Benjamin Sergeant
e5c724eb05
Expand build section in the main README
2019-04-21 21:11:08 -07:00
Benjamin Sergeant
e0300903d9
Merge branch 'dhruvkakadiya-readme/fix'
2019-04-21 16:14:35 -07:00
Benjamin Sergeant
210d19c8a0
doc cobra
2019-04-21 11:52:38 -07:00
Benjamin Sergeant
6d24cc44b2
new target to uninstall files
2019-04-21 11:47:57 -07:00
Benjamin Sergeant
768e8eb074
Fix #37 / add directives to install headers and library
2019-04-21 11:42:37 -07:00
Benjamin Sergeant
3dd902e1f9
move cobra files to their own subfolder
2019-04-21 11:20:17 -07:00
Benjamin Sergeant
f85c5002b7
add cobra metrics publisher
2019-04-21 11:16:33 -07:00
Benjamin Sergeant
d48bf9249b
indentation / comestic changes
2019-04-19 16:57:38 -07:00
Benjamin Sergeant
0dfc66f1c7
(test) / use a random number generator to get a free port, when the bind to port 0 strategy does not work out
2019-04-19 16:50:04 -07:00
Benjamin Sergeant
4564173b75
(socket server) wait for all connections threads to be terminated before exiting stop method
2019-04-19 16:31:33 -07:00
Benjamin Sergeant
b60e5aaf1f
default sanitizer choice
2019-04-19 15:13:59 -07:00
Benjamin Sergeant
da67f4cb9a
disable clang sanitizers in CI on any platforms but Darwin
2019-04-19 15:09:01 -07:00
Benjamin Sergeant
b041042473
fix Linux cast warning
2019-04-19 15:03:49 -07:00
Benjamin Sergeant
f83263d6a1
(unittest) upgrade to Catch2 version 2.7.1
2019-04-19 14:41:03 -07:00
Benjamin Sergeant
b0139c2217
add locks around Socket::send and Socket::recv to see if it helps with thread sanitizer error in Linux CI
2019-04-19 14:28:51 -07:00
Benjamin Sergeant
0ba2e2ce96
uses sh syntax to capture output
2019-04-19 12:40:39 -07:00
Benjamin Sergeant
4a91ad80c8
(ci) verbose mode to figure out Linux build problems on travis
2019-04-19 12:10:43 -07:00
Benjamin Sergeant
4cc715b13d
Windows nmake does not have a -j flag
2019-04-19 11:58:02 -07:00
Benjamin Sergeant
0dfd7cd543
Windows + unittest python script fixes
2019-04-19 11:54:58 -07:00
Benjamin Sergeant
56f164ce2b
fix warning / ws_cobra_subscribe does not need a verbose flag
2019-04-19 11:45:42 -07:00