From e05d2f8e9648e17b9a71bf5e909a79241c067c8b Mon Sep 17 00:00:00 2001 From: Eugene Kabanov Date: Sat, 8 Apr 2023 19:34:57 +0300 Subject: [PATCH] Fix some compilation warnings and expose tracker names. (#376) * Fix asyncsync compilation warnings. * Fix tracker names should be public. --- chronos/asyncsync.nim | 10 ++++++++-- chronos/transports/datagram.nim | 2 +- chronos/transports/stream.nim | 4 ++-- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/chronos/asyncsync.nim b/chronos/asyncsync.nim index 12feffd..4a0a13e 100644 --- a/chronos/asyncsync.nim +++ b/chronos/asyncsync.nim @@ -154,7 +154,10 @@ proc wakeUpFirst(lock: AsyncLock): bool {.inline.} = res = true break if i > 0: - lock.waiters.delete(0, i - 1) + when compiles(lock.waiters.delete(0 .. (i - 1))): + lock.waiters.delete(0 .. (i - 1)) + else: + lock.waiters.delete(0, i - 1) res proc checkAll(lock: AsyncLock): bool {.inline.} = @@ -272,7 +275,10 @@ proc wakeupNext(waiters: var seq[Future[void]]) {.inline.} = break if i > 0: - waiters.delete(0, i - 1) + when compiles(waiters.delete(0 .. (i - 1))): + waiters.delete(0 .. (i - 1)) + else: + waiters.delete(0, i - 1) proc full*[T](aq: AsyncQueue[T]): bool {.inline.} = ## Return ``true`` if there are ``maxsize`` items in the queue. diff --git a/chronos/transports/datagram.nim b/chronos/transports/datagram.nim index 32eba32..f372af2 100644 --- a/chronos/transports/datagram.nim +++ b/chronos/transports/datagram.nim @@ -61,7 +61,7 @@ type closed*: int64 const - DgramTransportTrackerName = "datagram.transport" + DgramTransportTrackerName* = "datagram.transport" proc remoteAddress*(transp: DatagramTransport): TransportAddress {. raises: [Defect, TransportOsError].} = diff --git a/chronos/transports/stream.nim b/chronos/transports/stream.nim index 2c74085..4264e77 100644 --- a/chronos/transports/stream.nim +++ b/chronos/transports/stream.nim @@ -71,8 +71,8 @@ type gcsafe, raises: [Defect].} const - StreamTransportTrackerName = "stream.transport" - StreamServerTrackerName = "stream.server" + StreamTransportTrackerName* = "stream.transport" + StreamServerTrackerName* = "stream.server" when defined(windows): type