Commit graph

754 commits

Author SHA1 Message Date
Leonid Kramer c39fdb2208
Merge pull request #163 from vibe-d/issue157-empty-consumeOne-on-closed-channel
Fix empty-consumeOne channel usage pattern for a single consumer
2019-06-20 09:31:13 +02:00
Leonid Kramer a200328a0d
Merge pull request #162 from vibe-d/issue161-multiple-joiners
Fix Task.join() for multiple callers. Fixes #161.
2019-06-20 09:30:49 +02:00
Sönke Ludwig 37ad77c701 Let empty block to make sure the following consumeOne succeeds.
This change ensures that a return value of false guarantees the next call to consumeOne to succeed, meaning that the combination of empty/consumeOne is sound in a single-consumer scenario. This also updates the documentation to stress that tryConsumeOne is still the preferred API.
2019-06-16 23:00:05 +02:00
Sönke Ludwig 19ea38fc72 Add test for #157. 2019-06-16 23:00:04 +02:00
Sönke Ludwig 8c63f79ea7 Avoid yielding in the task finalization phase. Fixes #161.
Makes sure that the task finalization finishes (including notifying possibly multiple joiners) before the fiber yields, because it won't be resumed by the scheduler before the next task gets assigned to the fiber.
2019-06-16 22:44:11 +02:00
Sönke Ludwig 41c18aef74 Add test for issue #161. 2019-06-16 21:30:18 +02:00
Sönke Ludwig 79bb21c6a3 Bump version number. 2019-06-16 15:10:50 +02:00
Sönke Ludwig e7d40e9b4c Update change log. 2019-06-16 15:10:50 +02:00
Sönke Ludwig 989577ff23 Fix copyFile setting file times of write protected files. 2019-06-16 15:10:50 +02:00
The Dlang Bot b68c8b12f9
Merge pull request #160 from vibe-d/leastsize_timeout
Let TCPConnection.leastSize time out according to the readTimeout property
merged-on-behalf-of: Leonid Kramer <l-kramer@users.noreply.github.com>
2019-06-16 15:06:05 +02:00
Sönke Ludwig 0d78dfe4a9 Let TCPConnection.leastSize time out according to the readTimeout property.
Fixes #153.
2019-06-16 09:55:00 +02:00
Leonid Kramer 1d917568e5
Merge pull request #159 from vibe-d/waitfordataex
Add TCPConnection.waitForDataEx
2019-06-12 20:41:16 +02:00
Sönke Ludwig 0fdc38d394
Merge pull request #158 from vibe-d/update_compiler_support
Update compiler support.
2019-06-12 20:14:50 +02:00
Sönke Ludwig 5393109669 Add TCPConnection.waitForDataEx.
Allows to distinguish between timeout and no more data cases.
2019-06-04 15:20:54 +02:00
Sönke Ludwig 54208ba46f Require eventcore 0.8.43 for process and reuseAddress support. 2019-06-04 15:19:52 +02:00
Sönke Ludwig a0b7b77d19 Update change log. 2019-06-04 14:44:59 +02:00
Sönke Ludwig b44c6738c6 Update compiler support. 2019-06-04 11:45:45 +02:00
Sönke Ludwig a102047d30 Update change log. 2019-06-04 11:36:51 +02:00
Sönke Ludwig 33014fde5f
Merge pull request #154 from BenjaminSchaaf/process
Implement vibe.core.process for subprocess handling similar to std.process
2019-06-04 11:18:34 +02:00
Benjamin Schaaf 68dd4baa44 s/registerProcess/adoptProcessID/g 2019-06-04 10:13:00 +10:00
Benjamin Schaaf 5f5a831444 Add comment 2019-06-03 10:04:56 +10:00
Benjamin Schaaf ab26527e7a Fix compiling tests/vibe.core.process.d for versions < 2080 2019-06-02 22:54:59 +10:00
Benjamin Schaaf 0d4840b81d Address review comments 2019-06-02 14:42:41 +10:00
The Dlang Bot 7f6da411f5
Merge pull request #156 from Geod24/variant
Remove useless imports to std.variant
merged-on-behalf-of: Sebastian Wilzbach <sebi.wilzbach@gmail.com>
2019-05-28 08:38:29 +02:00
Geod24 40f82b22e5 Remove useless imports to std.variant 2019-05-28 14:24:42 +09:00
The Dlang Bot 94ed25d831
Merge pull request #155 from vibe-d/log_exception
Implement logException.
merged-on-behalf-of: Leonid Kramer <l-kramer@users.noreply.github.com>
2019-05-25 23:29:51 +02:00
Sönke Ludwig 08db20629b Implement logException.
Logs an exception along with an error message and the full stack trace. Performs proper exception handling for the latter to stay nothrow.
2019-05-25 22:12:43 +02:00
Sönke Ludwig c3832cbb8b Bump version number. 2019-05-19 11:51:16 +02:00
Benjamin Schaaf ea3124778b Increase timeouts 2019-05-07 10:30:11 +10:00
Benjamin Schaaf 65980326a1 Add timeouts to avoid the compile time effects of rdmd on tests passing 2019-05-05 18:02:26 +10:00
Benjamin Schaaf 83e2d391e6 2nd candidate windows compilation fix 2019-05-05 17:52:44 +10:00
Benjamin Schaaf 7f11fcf7a6 Candidate windows compilation fix 2019-05-05 15:37:35 +10:00
Benjamin Schaaf c3f5ebb9fd Implement vibe.core.process for subprocess handling similar to std.process 2019-05-05 15:27:57 +10:00
Sönke Ludwig b86610011f
Merge pull request #150 from rracariu/patch-1
Add way to disable port and address reuse
2019-04-26 09:56:04 +02:00
Sönke Ludwig d96c5cb594
Merge pull request #152 from denizzzka/logger_args_check
Logger: avoid formatting for strings without additional args
2019-04-26 09:43:58 +02:00
Denis Feklushkin fc9bef86af Logger: avoid formatting for strings without additional args 2019-04-23 23:01:44 +07:00
Radu Racariu 5e8e75e3e8 Add way to disable port and address reuse 2019-04-17 16:40:04 +03:00
Sönke Ludwig 6c260768fd Update change log. 2019-04-14 10:09:35 +02:00
Leonid Kramer 83a35eab54
Merge pull request #145 from vibe-d/thread_fixes
Threading fixes
2019-04-14 10:01:51 +02:00
Sönke Ludwig f734b4a142 Improve thread-correctness of Task/TaskFiber.
- Task.join and Task.interrupt are now thread-safe
- TaskFiber.task returns Task.init if no task is running (avoids bogus resumes of the TaskFiber by the scheduler)

To enable thread-safe join/interrupt, the task counter is now stored together with the necessary flags within a single shared ulong that is manipulated atomically.
2019-04-13 20:53:01 +02:00
Sönke Ludwig a202d33b3e Fix a (harmless) race-condition.
ThreadLocalWaiter.unused may only be accessed from the owner thread.
2019-04-13 17:01:50 +02:00
Leonid Kramer b7669868c0
Merge pull request #144 from vibe-d/fix_makefileinfo_range_violation
Fix makeFileInfo range violation
2019-04-06 16:13:42 +02:00
Sönke Ludwig 1ca950867a Fix typo. 2019-04-05 09:47:37 +02:00
Sönke Ludwig a86f25b3b4 Fix range violation in makeFileInfo and add some unit tests. 2019-04-05 09:47:32 +02:00
Sönke Ludwig 39df94587b
Merge pull request #143 from vibe-d/conectionpool_disconnect
Add ConnectionPool.removeUnused.
2019-03-29 09:10:29 +01:00
Sönke Ludwig bf30127534 Add ConnectionPool.removeUnused.
Allows to disconnect all connections that are not currently in use. In particular, it allows to close all connections at shutdown to avoid leaking socket descriptors.
2019-03-28 14:11:20 +01:00
Sönke Ludwig e03caac035 Bump version number. 2019-03-26 15:37:30 +01:00
Sönke Ludwig 5506b6f433 Update change log. 2019-03-26 15:32:58 +01:00
Leonid Kramer a48f8f00bd
Merge pull request #142 from vibe-d/file_info_exception_fix
Make the DirEntry->FileInfo conversion nothrow.
2019-03-25 19:04:58 +01:00
Sönke Ludwig 8e4adf000f Make the DirEntry->FileInfo conversion nothrow.
Avoids listDirectory/iterateDirectory getting interrupted when stumbling over inaccessible files. The `name` field of the returned file info value is always set, so that these files can still be identified.
2019-03-25 09:45:47 +01:00