Commit graph

20 commits

Author SHA1 Message Date
Ray Imber
bef1c4437d fixes based on code review by @dom96
- For clarity: Changed the unregister if statement to use the in operator instead of
the set intersection operator in ioselectors_epoll.nim and
ioselectors_select.nim.

- Fixed unregister of Event.User case on the Android branch.
2019-10-16 14:13:09 -07:00
Ray Imber
adc1419499 Test + fix for epoll and kqueue selector modules to properly unregister
event handles that have the key type "User"
2019-10-06 16:02:12 -07:00
Araq
87a2ced1ba there is only one style -- my style 2019-07-10 19:17:06 +02:00
Araq
bc7733827d make more parts of the stdlib compile with --styleCheck:error 2019-07-10 15:48:30 +02:00
Dominik Picheta
d0b8724aa2 Fixes crashes when asyncdispatch.adjustTimeout returns a negative value. (#11231) 2019-05-15 18:15:10 +02:00
Ico Doornekamp
0229dfd199 epoll selector starts with reasonable fd set size (1024) and increases in powers of two when needed. This prevents the selector to allocate large amounts of memory at startup on systems with a high RLIMIT_NOFILE setting (#10194) 2019-01-09 10:46:22 +01:00
Araq
e44df5dca6 fixes #7667; underlying issue is that dot calls in generics have no concept of 'friend' symbols, will be addressed later 2018-10-29 13:46:55 +01:00
Yuriy Glukhov
34f398d010 Allow async stdin 2018-07-25 09:07:50 +03:00
aguspiza
63160855aa Move RLimit and getrlimit to posix.nim and add setrlimit to easily limit FD allocation (#7564) 2018-04-12 17:42:33 +02:00
Jacek Sieka
9e51e737b6 RLIMIT_NOFILE as posix const 2018-04-01 20:17:32 +08:00
Dominik Picheta
47d05b3f2e Merge branch 'devel' into async-improvements 2018-01-17 16:28:00 +00:00
GULPF
a879973081 Better times module (#6552)
* First work on better timezones

* Update tests to new api.
Removed tests for checking that `isDst` was included when formatting, since `isDst` no longer affects utc offset (the entire utc offset is stored directly in `utcOffset` instead).

* Deprecate getLocaltime & getGmTime
* Add `now()` as a shorthand for GetTIme().inZone(Local)
* Add FedericoCeratto's timezone tests (#6548)
* Run more tests in all timezones

* Make month enum start at 1 instead of 0
* Deprecate getDayOfWeekJulian
* Fix issues with gc safety
* Rename TimeInfo => DateTime
* Fixes #6465
* Improve isLeapYear
* FIx handling negative adjTime

* Cleanup:
- deprecated toSeconds and fromSeconds, added fromUnix and toUnix instead (that returns int64 instead of float)
- added missing doc comments
- removed some unnecessary JS specific implementations

* Fix misstake in JS `-` for Time

* Update usage of TimeEffect
* Removed unecessary use of `difftime`
* JS fix for local tz
* Fix subtraction of months
* Fix `days` field in `toTimeInterval`
* Style and docs
* Fix getDayOfYear for real this time...
* Fix handling of adding/subtracting time across dst transitions
* Fix some bad usage of the times module in the stdlib
* Revert to use proper time resoultion for seeding in random.nim
* Move deprecated procs to bottom of file
* Always use `epochTime` in `randomize`
* Remove TimeInterval normalization
* Fixes #6905

* Fix getDayOfWeek for year < 1
* Export toEpochDay/fromEpochDay and change year/month/monthday order
* Add asserts for checking that the monthday is valid
* Fix some remaining ambiguous references to `Time`
* Fix ambiguous reference to Time
2017-12-18 23:11:28 +01:00
Dominik Picheta
d6870f2e89 Multiple improvements to selectors.
* Added ``getFd`` procedure for retrieving the underlying
  selector's FD.
* Selectors module's procedures now accept an ``int`` as well as a
  ``SocketHandle``.
* ReadyKey now contains the error code for Event.Error events.
2017-11-24 16:25:03 +00:00
Dominik Picheta
d3394be555 Async upcoming (#6585)
* Merge upcoming async with current.
* Various improvements to selectors (mostly docs).

Two changes to highlight:

* Renamed ``setEvent`` to ``trigger``
* Reused setBlocking from nativesockets.
* Various changes/fixes to asyncdispatch after upcoming merge.
* Make some attempts to be compatible with older selectors.
* Reuse epoll module in ioselectors_epoll.
2017-11-22 15:43:10 +01:00
Eugene Kabanov
d90f3f59ac Fixes for upcoming asyncdispatch and ioselectors. (#5309) 2017-02-01 12:12:26 +01:00
cheatfate
4b95819146 Fix #5290.
Some cosmetic changes.
2017-01-27 11:08:57 +02:00
Eugene Kabanov
108f5e688e Fix #5128, #5184. (#5214)
* Fix #5128, #5184.
Removed flush() procedure from ioselectors.nim
Changed methods of work with application-driven data

* Make cache switch for kqueue, update test for it.

* Fix registerProcess bug returns wrong id.
Fix tupcoming_async test to compile with upcoming again.
Change socket() as unique identifier to dup(socket) as unique identifier.
2017-01-16 14:01:40 +01:00
cheatfate
ac4ccc695f Support android compilation of ioselectors. 2016-12-05 13:41:46 +02:00
cheatfate
b75ddf5ba2 Fix 32bit architecture problems with SelectEvent. 2016-08-31 10:30:25 +03:00
cheatfate
7724336d73 Patch one more path problem 2016-07-05 14:35:55 +03:00
Renamed from lib/pure/ioselectors/ioselectors_epoll.nim (Browse further)