Benjamin Sergeant
5a2c070898
disable socket mutex usage in WebSocketTransport
2019-05-16 15:46:32 -07:00
Benjamin Sergeant
58f17ddb09
remove dead code
2019-05-16 15:05:20 -07:00
Benjamin Sergeant
47c9786bab
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
e5edbeacb4
travis makefile fix
2019-05-16 14:02:24 -07:00
Benjamin Sergeant
964fb20df9
try to run ws test on linux + macOS on travis
2019-05-16 13:57:33 -07:00
Benjamin Sergeant
309ed80446
Add constants for closing code and messages
2019-05-16 12:46:53 -07:00
Benjamin Sergeant
01f2eb6615
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
3a55c7aaba
build ws on travis (mac + linux)
2019-05-16 07:01:15 -07:00
Benjamin Sergeant
243f41bf28
use a regular mutex instead of a recursive one + stop properly
2019-05-15 19:26:02 -07:00
Benjamin Sergeant
934b28f5b6
adding logging to IXWebSocketTestConnectionDisconnection makes it fails reliably
2019-05-15 19:26:02 -07:00
Benjamin Sergeant and GitHub
edfc03bed2
Update README.md
2019-05-15 19:22:05 -07:00
Benjamin Sergeant and GitHub
59ce71b64d
Update README.md
2019-05-15 18:57:17 -07:00
Benjamin Sergeant
d473a7dc22
-j option actually work ...
2019-05-15 18:15:45 -07:00
Benjamin Sergeant
efb063d600
unittest / add options to set the number of jobs
2019-05-15 17:52:03 -07:00
Benjamin Sergeant
12fe55905c
enum class HttpErrorCode derives from int
2019-05-15 16:50:00 -07:00
Benjamin Sergeant
aed831c075
try to re-enable some tests
2019-05-15 16:28:29 -07:00
Benjamin Sergeant
5ad15fad8b
recursive mutex + enable test that was breaking on Ubuntu Xenial + gcc + tsan
2019-05-15 16:01:05 -07:00
Benjamin Sergeant
a7d328896c
comment failing test
2019-05-15 15:44:14 -07:00
Benjamin Sergeant
1274a151d0
comment failing test
2019-05-15 15:37:30 -07:00
Benjamin Sergeant
d93d639345
do not build ws for now on travis
2019-05-15 15:26:49 -07:00
Benjamin Sergeant
e0d9a16985
more protection against socket when closing
2019-05-15 15:18:46 -07:00
Benjamin Sergeant
7f1070dde6
fix compile errors with C++ enum class
2019-05-15 15:18:46 -07:00
Benjamin Sergeant
7f1e70329c
close and stop with code and reason + docker = ubuntu xenial
2019-05-15 15:18:46 -07:00
Benjamin Sergeant
c935be6a49
Revert "Revert "fix cast warning caught on windows""
...
This reverts commit 25eaf730bc .
2019-05-13 22:16:49 -07:00
Benjamin Sergeant
4ee502fa1a
Revert "fix cast warning caught on windows"
...
This reverts commit 4edb7447df .
2019-05-13 21:35:34 -07:00
Benjamin Sergeant
084805b248
fix cast warning caught on windows
2019-05-13 21:29:47 -07:00
Benjamin Sergeant
2843a20814
build with gcc on Linux
2019-05-13 17:35:21 -07:00
Benjamin Sergeant
08a56726a8
use spdlog for logging in the unittest
2019-05-13 17:32:57 -07:00
Benjamin Sergeant
7cad8654e5
fix inverted conditional
2019-05-13 17:18:07 -07:00
Benjamin Sergeant
841cfe37dd
server code / add dedicated thread to close/join terminated connection threads
2019-05-13 17:17:35 -07:00
Benjamin Sergeant
849a41293f
travis cmake version on macOS does not know --parallel option
2019-05-13 17:17:35 -07:00
Benjamin Sergeant
5b17edb3f9
build in parallel + stop building linux + clang
2019-05-13 17:06:56 -07:00
Benjamin Sergeant
9f2047dad6
disable ping tests for now as they are not super reliable
2019-05-13 17:01:22 -07:00
Benjamin Sergeant and GitHub
c01c53c5c7
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
7740028291
all derived class use final keyword
2019-05-12 11:43:21 -07:00
Benjamin Sergeant
d575c7c2a9
bump version to 2.0.0
2019-05-11 14:22:41 -07:00
Benjamin Sergeant
80226cb7d3
add comment about why a unittest is disabled
2019-05-11 12:25:40 -07:00
Benjamin Sergeant
6189e0cd50
remove irrelevant comment
2019-05-11 12:24:11 -07:00
Benjamin Sergeant
4934f5846b
minor tweaks to have full feature parity before unittest broke
2019-05-11 11:54:21 -07:00
Benjamin Sergeant
c8c1aabf20
fix race condition in SelectInteruptPipe, where _fildes are not protected (caught by fedora tsan)
2019-05-11 11:45:26 -07:00
Benjamin Sergeant
518a445074
rename some variables, minor cleanup
2019-05-11 10:24:28 -07:00
Benjamin Sergeant
16758293ff
fix warning in statsd_client about %m gnu only printf special char
2019-05-11 09:22:29 -07:00
Benjamin Sergeant
e965322a98
fix overflow warning in msgpack11.cpp
2019-05-10 21:17:05 -07:00
Benjamin Sergeant
fcf5c41b43
add env var to display the ws command typed in
2019-05-10 16:27:23 -07:00
Benjamin Sergeant
88adbf0ca2
cout -> spdlog
2019-05-10 12:33:34 -07:00
Benjamin Sergeant
f90fc4bfa2
fix static analyzer thing with un-used variable
2019-05-09 16:57:58 -07:00
Benjamin Sergeant
dc1f9fb243
use spdlog for logging in ws + unittest + remove un-needed mutex
2019-05-09 15:30:44 -07:00
Benjamin Sergeant
7c30c8aa07
cout -> cerr
2019-05-09 15:06:42 -07:00
Benjamin Sergeant
287537b34a
tweak unittest sleep duration to fix gcc+linux CI
2019-05-09 11:10:39 -07:00
Benjamin Sergeant
094b5834b7
warning police
2019-05-09 09:25:56 -07:00
Benjamin Sergeant
232aa069d2
IXCobraMetricsThreadedPublisher.cpp uses a lambda to log instead of std::cerr
2019-05-08 18:53:32 -07:00
Benjamin Sergeant
d53c9c5ecf
change default ports for the ws command line tool
2019-05-08 13:56:42 -07:00
Benjamin Sergeant
48c19b4f3c
ws connect display more accurate messages for incoming messages
2019-05-08 13:56:42 -07:00
Benjamin Sergeant
1e1d5c3f7d
update appveyor windows build file
2019-05-06 17:50:55 -07:00
Benjamin Sergeant
3893c12054
socket server / used wrong mutex to protect _connectionsThreads
2019-05-06 12:24:20 -07:00
Benjamin Sergeant and GitHub
3b576c3047
Update README.md
2019-05-06 09:22:52 -07:00
Benjamin Sergeant
28a7ec4f35
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
b5aae88a0b
remove un-needed _backgroundThreadRunning variable
2019-05-01 11:09:25 -07:00
Benjamin Sergeant and GitHub
bee97237d9
Make AutomaticReconnection optional ( #47 )
...
* unittest pass + commands behave as expected
* cleanup
2019-04-29 21:12:34 -07:00
Benjamin Sergeant
8c8e950455
build fix
2019-04-29 20:54:00 -07:00
Benjamin Sergeant
ad8b344298
tsan fixes on ubuntu xenial (what travis run)
2019-04-29 20:48:16 -07:00
Benjamin Sergeant
6d310d417a
dns lookup: fix race condition accessing _errMsg
2019-04-29 19:29:27 -07:00
Benjamin Sergeant
9dca893ce7
tsan linux tentative fix / copy string instead of passing a const reference
2019-04-29 17:27:53 -07:00
Benjamin Sergeant
e3444e666b
rename _blocking to _backgroundThreadRunning and invert the naming
2019-04-29 16:54:08 -07:00
Benjamin Sergeant
9ee05bf591
ws connect mode / add a flag to disable automatic reconnection, not hooked up yet
2019-04-29 14:31:29 -07:00
Benjamin Sergeant
e15700235e
enable tsan on travis for all configs
2019-04-29 09:11:16 -07:00
Benjamin Sergeant
1c7c07e128
initialize netSystem (aka winsock on windows) explicitely
2019-04-25 16:38:15 -07:00
Benjamin Sergeant
e251c81d43
fix indentation of greatestCommonDivisor
2019-04-25 16:21:36 -07:00
Benjamin Sergeant
f30a5074ab
Remove commented code
2019-04-25 16:16:52 -07:00
Benjamin Sergeant
f6ae490723
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
7f96c43d6f
disable failing unittest temporarily
2019-04-25 09:04:35 -07:00
Benjamin Sergeant
82b528ee30
tsan fix for the IXWebSocketServerTest test, where there's a data race for connectionId
2019-04-24 22:11:14 -07:00
Benjamin Sergeant
a443bbdf80
Fix data races in DNSLookup (tsan)
2019-04-24 21:53:31 -07:00
Benjamin Sergeant
26ee46b246
better server termination / another try at preventing thread join failures
2019-04-24 09:45:53 -07:00
Benjamin Sergeant
cf37816602
compiler warning police
2019-04-24 09:45:03 -07:00
Benjamin Sergeant
b8087f6c48
Fix #38 Add some docker doc in the README
2019-04-23 20:51:58 -07:00
Benjamin Sergeant
28cbe8fbeb
ws cobra publish stress mode fix
2019-04-23 20:51:58 -07:00
Benjamin Sergeant
0caf875399
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
323684efff
(server) attempt to fix broken macOS unittest on travis CI
2019-04-22 09:36:16 -07:00
Benjamin Sergeant
678ee0615d
Expand build section in the main README
2019-04-21 21:11:08 -07:00
Benjamin Sergeant
6c889def37
Merge branch 'dhruvkakadiya-readme/fix'
2019-04-21 16:14:35 -07:00
Benjamin Sergeant
b6b9ffd15c
doc cobra
2019-04-21 11:52:38 -07:00
Benjamin Sergeant
1189b5f693
new target to uninstall files
2019-04-21 11:47:57 -07:00
Benjamin Sergeant
1c2b6d59da
Fix #37 / add directives to install headers and library
2019-04-21 11:42:37 -07:00
Benjamin Sergeant
eacc28fedf
move cobra files to their own subfolder
2019-04-21 11:20:17 -07:00
Benjamin Sergeant
5c85ee1214
add cobra metrics publisher
2019-04-21 11:16:33 -07:00
Benjamin Sergeant
7df7453365
indentation / comestic changes
2019-04-19 16:57:38 -07:00
Benjamin Sergeant
3d8297247e
(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
662f66e501
(socket server) wait for all connections threads to be terminated before exiting stop method
2019-04-19 16:31:33 -07:00
Benjamin Sergeant
9131cb4790
default sanitizer choice
2019-04-19 15:13:59 -07:00
Benjamin Sergeant
3b616676c6
disable clang sanitizers in CI on any platforms but Darwin
2019-04-19 15:09:01 -07:00
Benjamin Sergeant
cce759b8dd
fix Linux cast warning
2019-04-19 15:03:49 -07:00
Benjamin Sergeant
98b6c9b89e
(unittest) upgrade to Catch2 version 2.7.1
2019-04-19 14:41:03 -07:00
Benjamin Sergeant
5370201df8
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
419c395966
uses sh syntax to capture output
2019-04-19 12:40:39 -07:00
Benjamin Sergeant
2962ce9a0f
(ci) verbose mode to figure out Linux build problems on travis
2019-04-19 12:10:43 -07:00
Benjamin Sergeant
c96398aa0c
Windows nmake does not have a -j flag
2019-04-19 11:58:02 -07:00
Benjamin Sergeant
e68ce1d680
Windows + unittest python script fixes
2019-04-19 11:54:58 -07:00
Benjamin Sergeant
d34f10b4ea
fix warning / ws_cobra_subscribe does not need a verbose flag
2019-04-19 11:45:42 -07:00
Benjamin Sergeant
7e2c1f274b
(test) build dir is an absolute path
2019-04-19 11:45:02 -07:00