Rene Rivera
70dc8a79fe
Sync from upstream.
2024-08-03 18:17:40 -05:00
Ion Gaztañaga
39aed2f41b
offset_ptr improvements:
...
- Use simplier traits to reduce dependencies and add support for nullptr
- Add tests cover construction/assignment from literal zero and nullptr
2024-08-03 23:14:36 +02:00
Ion Gaztañaga
f296b017df
Boost.Chrono requires now C++11 but is not tested on GCC older than 4.8 which has no enough C++11 features to suppor it. Detect and avoid using Chrono in tests in those cases
2024-08-03 22:49:59 +02:00
Ion Gaztañaga
b7efa4bbaf
Add missing newline at end.
2024-08-03 22:48:25 +02:00
Ion Gaztañaga
dc504fa3e1
Remove unneeded <boost/static_assert.hpp> include
2024-08-03 22:48:11 +02:00
Ion Gaztañaga
4a011349db
Test files: Replace BOOST_TRY/CATCH family macros with BOOST_INTERPROCESS_TRY/CATCH
2024-08-03 22:47:34 +02:00
Rene Rivera
de388cff30
Update build deps.
2024-08-03 15:44:12 -05:00
Rene Rivera
2c5945d272
Change all <source> references to <library>.
2024-07-20 19:39:54 -05:00
Rene Rivera
7bd6727bfc
Make the library modular usable.
2024-03-11 08:38:16 -05:00
Ion Gaztañaga
8e4caa9fca
Add timed_utils header and refactor all dependent header to use the new header
2024-02-27 00:13:47 +01:00
Ion Gaztañaga
b12499e3fb
Add missing <typeinfo> header
2024-02-27 00:12:47 +01:00
Ion Gaztañaga
6fedc42999
Use clock::time_point instead of the templated timepoint when obtaining current time to get maximum precission.
2024-01-14 20:33:13 +01:00
Ion Gaztañaga
747ab51363
Revert BaseTime reduction as GH runners can receive low CPU
2024-01-14 18:05:11 +01:00
Ion Gaztañaga
efb6c36567
Add random id to process id to avoid potential conflicts when testing in parallel in containers
2024-01-14 00:19:09 +01:00
Ion Gaztañaga
ea5b744e13
Fix unused index warning
2024-01-14 00:17:54 +01:00
Ion Gaztañaga
ca67d5b2f6
Fix conversion warning when initializing xsi_key
2024-01-14 00:17:35 +01:00
Ion Gaztañaga
0614661236
Add random timestamp-based id for xsi_key
2024-01-12 22:00:16 +01:00
Ion Gaztañaga
4465a67550
Reduce XSI shm memory size
2024-01-12 18:26:00 +01:00
Ion Gaztañaga
4973cb0959
Increase time to avoid timing errors in VM/Docker regression tests
2024-01-12 18:15:01 +01:00
Ion Gaztañaga
9d8c6b7a8a
Add more traces to catch CI errors
2024-01-12 15:33:27 +01:00
Ion Gaztañaga
48e201a9c9
Split several sync utility tests to improve parallelization. Windows:
...
* Spin and Shm based utilities will be tested independently.
* Includes some refactoring to avoid copy-pasting some code in several similar synchronization primitive tests.
2024-01-12 13:46:53 +01:00
Ion Gaztañaga
b01a6bc291
Reduce BaseMs from 400ms to 100m to speed up tests.
2024-01-12 13:37:04 +01:00
Ion Gaztañaga
04fa948217
Add missing change from timer fixses
2024-01-09 01:07:49 +01:00
Ion Gaztañaga
6b498b9b44
Add missing return
2024-01-09 00:53:40 +01:00
Ion Gaztañaga
f052680461
Make synchronization primitive tests more granular on timeouts, from seconds to miliseconds precission for Base Times. This should reduce CI times.
2024-01-09 00:42:22 +01:00
Ion Gaztañaga
f91e0e792f
Output wrong InstanceCounter value on error to better diagnose errors in the test. Clang-win seems to produce correct code in more cases when adding those outputs (compiler bug?).
2024-01-06 02:31:27 +01:00
Ion Gaztañaga
0191a31e21
Increase shared memory size for container tests
2024-01-06 01:17:51 +01:00
Ion Gaztañaga
38a03cc08c
Fix broken C+03 support
2024-01-05 13:17:32 +01:00
Ion Gaztañaga
d578251c71
Add missing <boost/static_assert.hpp> includes
2023-02-16 20:31:42 +01:00
Ion Gaztañaga
ac863fe275
Actually test returned const segment manager pointer
2023-02-01 23:16:29 +01:00
Ion Gaztañaga
c272bff939
Fixes #167 ("Invalid string stored in vector")
2022-03-06 22:40:27 +01:00
Ion Gaztañaga
16b2c1826d
Fix signed to unsigned conversion warning
2022-03-06 22:38:40 +01:00
Ion Gaztañaga
6982a86d97
Initialize static variables only once in tests
2022-01-04 00:25:35 +01:00
Ion Gaztañaga
882feabac5
Remove commented code from test
2022-01-04 00:25:14 +01:00
Ion Gaztañaga
fa647e4756
Ignore some warnings as we include other libraries that might not use the same warning levels
2021-12-31 13:30:23 +01:00
Ion Gaztañaga
478b6fd2d5
Fix -Wcast-align warning
2021-12-30 12:50:35 +01:00
Ion Gaztañaga
55ad499dc4
Fixes #160 ("More GCC suggest-override warnings").
2021-12-27 00:26:54 +01:00
Ion Gaztañaga
85786848f0
Separate a special function for creating shared folders as permissions and logic is different from normal folder open/create logic in Unix
2021-11-09 00:54:26 +01:00
Ion Gaztañaga
7a743c6853
Fixes #157 ("Set sticky bit on shared interprocess folder")
2021-11-07 21:11:40 +01:00
Ion Gaztañaga
efc75031f5
Support Clang's -Wconversion -Wfloat-conversion -Wsign-conversion with -Werror
2021-10-20 00:18:59 +02:00
Ion Gaztañaga
3b5da7b0c1
Support GCC's -Wconversion -Wfloat-conversion -Warith-conversion -Wsign-conversion warnings.
2021-10-16 17:46:01 +02:00
Antony Polukhin
122f69aa00
properly initilize enable_shared_from_this if the type is const
2021-09-24 14:26:24 +03:00
Ion Gaztañaga
e4259fe168
Timeout support for managed memory segments. Adding BOOST_INTERPROCESS_MANAGED_OPEN_OR_CREATE_INITIALIZE_MAX_TRIES/BOOST_INTERPROCESS_MANAGED_OPEN_OR_CREATE_INITIALIZE_TIMEOUT_SEC configurable parameters.
...
Fixes #128 ("Infinite loop in managed_open_or_create_impl.hpp")
Fixes #130 ("infinite loop in managed_open_or_create_impl.hpp if filesize is 0")
2021-08-24 14:57:59 +02:00
Ion Gaztañaga
4f0b3c2c93
Fixes #103 ("Use interprocess headers without exception handling")
2021-08-23 13:32:08 +02:00
Ion Gaztañaga
7c8893788d
Fixes #65 ("Robustness of the interprocess mutex") and fixes #67 ("Changed to use posix robust mutex").
2021-08-22 00:31:16 +02:00
Ion Gaztañaga
512f95cb07
Implements standard C++ mutex/condition variable requirements for Interprocess utilities.
...
Fixes #149 ("interprocess_condition_any::timed_wait update")
2021-08-19 00:38:24 +02:00
Ion Gaztañaga
8ec3dfb396
Remove deprecated volatile variables for inter-thread communication
2021-08-12 01:41:50 +02:00
Ion Gaztañaga
9ac7eb3d84
Fixes #145 ("1.76 now requires unicode paths on windows")
2021-08-12 01:41:26 +02:00
Ion Gaztañaga
0fcdbc4083
Interprocess no longer depends on Boost.DateTime. Instead, all timed functions were templated to take a TimePoint. This time point can be boost::date_time::ptime, std::time_point or boost::chrono::time_point.
2021-04-13 15:18:23 +02:00
Ion Gaztañaga
ece73cef73
Fixes #120 ("segment_manager customization")
2021-02-21 00:15:21 +01:00