Commit Graph

893 Commits

Author SHA1 Message Date
Stefano Fiorentino
d611ca264f Instantiate Loop::run<Mode>() in the .cpp
This is possible because a limited values are available as Mode

Signed-off-by: Stefano Fiorentino <stefano.fiore84@gmail.com>
2020-04-06 15:02:26 +02:00
Stefano Fiorentino
0ee7ef41fe adding option to activate UB sanitizer
Signed-off-by: Stefano Fiorentino <stefano.fiore84@gmail.com>
2020-04-03 22:42:45 +02:00
Stefano Fiorentino
03b98bc234 update project description to add shared/static library
Signed-off-by: Stefano Fiorentino <stefano.fiore84@gmail.com>
2020-04-03 22:42:45 +02:00
Eli Lindsey
fc197b5117 fix undefined behavior in resource.hpp
Today, uvw triggers undefined behavior in resource.hpp:
  runtime error: downcast of address which does not point to an object of type 'uvw::FsEventHandle'
  note: object is of type 'uvw::BaseHandle'

It looks like we're saving the current handle in the void* data member
so it can be retrieved on the next callback run. This downcast to a
derived class from its parents ctor as it's being constructed isn't
valid.

Since we're storing this as a void* anyways and all the callsites using
it need to do their own cast on retrieval, we can instead persist the
this pointer. For downcasting to work in all cases the Resource class
tree needs to be leftmost in Handler's multiple inheritance.

Tested by verifying that my unit tests no longer show ubsan errors and
uvw's test suite still passes.
2020-04-02 14:37:45 -04:00
Michele Caini
8233a6e6b2 updated README file (thanks to @escherstair for pointing out some errors in the documentation) 2020-04-01 15:12:30 +02:00
Michele Caini
fda5b57f4f doc: updated README (close #187) 2020-03-31 22:54:44 +02:00
Michele Caini
1f2b6ed23d increase code coverage 2020-03-28 00:03:54 +01:00
Michele Caini
4d92e354be increase code coverage 2020-03-27 23:39:08 +01:00
Michele Caini
fc50c60987 removed dead branch (BUILD_TESTING is used already to enter the test directory) 2020-03-27 23:32:48 +01:00
Stefano Fiorentino
d9ab73a281 `make install' requires gtest and tests to be built #186
Signed-off-by: Stefano Fiorentino <stefano.fiore84@gmail.com>
2020-03-27 21:50:28 +01:00
Stefano Fiorentino
336e5dfb1d Improving test coverage [adding Mutex::RecursiveLockUnlock]
Signed-off-by: Stefano Fiorentino <stefano.fiore84@gmail.com>
2020-03-27 12:31:33 +01:00
Stefano Fiorentino
bfc4a2c95b Improving test coverage [adding Mutex::LockUnlock]
Signed-off-by: Stefano Fiorentino <stefano.fiore84@gmail.com>
2020-03-27 12:02:05 +01:00
Stefano Fiorentino
53da326aea FsReq.ReadDir test now reads all dirent's entries
Signed-off-by: Stefano Fiorentino <stefano.fiore84@gmail.com>
2020-03-25 23:14:48 +01:00
Stefano Fiorentino
6fd64f93a0 Improving test coverage [adding FsReq::readdirSync]
Signed-off-by: Stefano Fiorentino <stefano.fiore84@gmail.com>
2020-03-25 19:34:05 +01:00
Stefano Fiorentino
216f5f4da1 Improving test coverage [adding FsReq::readdir] 2020-03-25 16:04:23 +01:00
Stefano Fiorentino
fe73fa048a explicit instantiation of compile-time flag-based functionalities #183 2020-03-25 15:56:35 +01:00
Stefano Fiorentino
1f7d4acc40 Improving test coverage [adding Thread] (#181) 2020-03-25 15:55:16 +01:00
Michele Caini
008361d83c updated README.md (close #185) 2020-03-25 15:51:26 +01:00
Michele Caini
0fe8d7959b updated README.md to reflect the new dual-mode 2020-03-22 22:54:22 +01:00
Michele Caini
8d1a431f68 allow custom deleters with write requests (close #182) 2020-03-22 22:29:15 +01:00
Michele Caini
4afb5ebb20 updated list of collaborators 2020-03-21 15:54:23 +01:00
Stefano Fiorentino
0e36f685e8 Export cmake targets (close #179) 2020-03-21 15:47:50 +01:00
Stefano Fiorentino
ebc8199d42 Add support for pkg-config (close #177) 2020-03-18 23:05:06 +01:00
Michele Caini
3a32097dc8 ready to cut a new release 2020-03-16 23:25:09 +01:00
Michele Caini
855d851f47 updated to libuv v1.35 (close #175) 2020-03-16 23:23:05 +01:00
Michele Caini
55d7782af5 allow static build - see #171, thanks to @stefanofiorentino 2020-03-16 23:01:53 +01:00
Sergiu Giurgiu
76f247847f
Changed FsReq::stasfs method name to statfs (#173) 2020-03-01 21:47:43 +01:00
Michele Caini
da3b5f00f5 updated copyright 2020-01-17 23:17:07 +01:00
Michele Caini
bc88511a29 updated version 2020-01-17 23:14:58 +01:00
Michele Caini
1b6d9625e8 updated libuv reference 2020-01-17 23:14:49 +01:00
Michele Caini
ba618cf070 stream: fixed extended write functions (close #169) 2020-01-16 19:37:39 +01:00
Michele Caini
3e6b09eb8d build system: fixed cmake option to generate documentation 2019-12-05 14:12:37 +01:00
Michele Caini
ed766f709a now working with libuv v1.34.x 2019-12-04 23:05:47 +01:00
Michele Caini
8f868995fc updated workflow 2019-11-08 09:56:22 +01:00
Fabrice Fontaine
2cef4d6f20 CMakeLists.txt: add BUILD_DOC option (#165)
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2019-11-07 23:13:11 +01:00
Adam Leskis
7a8e526adf update typos and ambiguous phrases in README (#163)
* update typos and ambiguous phrases in README
* add name to authors list
2019-10-23 23:47:44 +02:00
Michele Caini
337bd035a8 now working with libuv v1.33.x 2019-10-17 23:42:48 +02:00
Michele Caini
3fae068b9b added Utilities::OS::env overload to iterate all env variables 2019-10-17 22:47:57 +02:00
Michele Caini
0890c29b7e updated version/libuv 2019-10-17 22:46:46 +02:00
Michele Caini
852b9e2489 GH sponsorship 2019-10-08 22:54:19 +02:00
Michele Caini
6dfe8f839a added become-patron badge 2019-09-25 15:18:36 +02:00
Michele Caini
2cb056ec7b removed appveyor.yml 2019-09-25 15:11:22 +02:00
Michele Caini
b117c6118b conan deploy through GH actions 2019-09-25 14:58:16 +02:00
Michele Caini
90affa4d51 removed appveyor.yml 2019-09-25 14:52:52 +02:00
Michele Caini
866beeda31 updated build.yml 2019-09-25 14:22:19 +02:00
Michele Caini
8a8610a928 make dns test optional 2019-09-25 14:15:15 +02:00
Michele Caini
87e23c74b5 GH actions 2019-09-25 14:04:54 +02:00
Michele Caini
6f6294ebc2 now working with libuv v1.32.x 2019-09-10 15:54:59 +02:00
Michele Caini
3264417f15 added Loop::create overload to allow using external resources (close #157) 2019-08-28 16:40:24 +02:00
Michele Caini
ea4b6c84d0 now working with libuv v1.31.x 2019-08-10 22:55:15 +02:00