summary refs log tree commit diff stats
path: root/lib/pure/selectors.nim
Commit message (Collapse)AuthorAgeFilesLines
* fixes #21734; backport (#21957)Andreas Rumpf2023-05-291-2/+2
|
* fix build on haiku (#21752)Al Hoang2023-04-291-1/+1
| | | * missing maxDescriptors
* NuttX added supports getrlimit(RLIMIT_NOFILE), so remove NuttX specific ↵Century Systems2023-02-211-3/+0
| | | | | | | codes. (#21385) async: NuttX added supports getrlimit(RLIMIT_NOFILE), so remove NuttX-specific codes. Signed-off-by: Takeyoshi Kikuchi <kikuchi@centurysys.co.jp>
* Add support for NuttX RTOS. (#21372)Century Systems2023-02-161-2/+7
| | | | | | | | | | | | | | | | | | | | | | * Add support for NuttX RTOS. Signed-off-by: Takeyoshi Kikuchi <kikuchi@centurysys.co.jp> * lib: pure: asyncdispatch: assign to result. Signed-off-by: Takeyoshi Kikuchi <kikuchi@centurysys.co.jp> * lib: std: typedthreads: add support for parameters to adjust Thread Stack Size. Like FreeRTOS/Zephyr, add support for following configurations. -d:nimThreadStackSize=xxxxx -d:nimThreadStackGuard=yyyy Signed-off-by: Takeyoshi Kikuchi <kikuchi@centurysys.co.jp> --------- Signed-off-by: Takeyoshi Kikuchi <kikuchi@centurysys.co.jp>
* refactor os imports into corresponding small modules (#20720)ringabout2022-11-011-1/+2
|
* make more standard libraries work with `nimPreviewSlimSystem` (#20343)ringabout2022-09-271-0/+3
| | | | | | | | | | | | | | | | | | | | | | | * make more standard libraries work with `nimPreviewSlimSystem` * typo * part two * Delete specutils.nim * fixes more tests * more fixes * fixes tests * fixes three more tests * add formatfloat import * fix * last
* enable `maxDescriptors` on Illumos/Solaris (#19295)BarrOff2021-12-301-2/+2
|
* Add Zephyr Support (#19003)Jaremy Creechley2021-10-241-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Porting Nim to run on Zephyr. Includes changes to `std/net`. Squashed commit of the following: tweaking more memory / malloc things revert back bitmasks tweaking nim to use kernel heap as C malloc doesn't work fixing socket polling on zephyr cleanup getting maximum sockets for process or for rtos'es reorganizing and fixing net for async / system merge netlite changes back into nativesockets merge netlite changes back into nativesockets reverting native sockets back tweaking nim / zephyr network adding option to run 'net-lite' from linux bridging zephyr's max connections fixing net errors fixing compilation with getAddrString fixing compilation with getAddrString experimenting with a nativesockets_lite ... getAddrString experimenting with a nativesockets_lite ... getAddrString experimenting with a nativesockets_lite ... getLocalAddr experimenting with a nativesockets_lite ... getLocalAddr experimenting with a nativesockets_lite ... add note regarding incorrect FreeRTOS Sockadd_in fields changing to NIM_STATIC_ASSERT cleaning up the static_assert error messages cleaning up the static_assert error messages setting up static assert ftw! testing compile time asserts reworking Sockaddr objects to more closely match various platforms reworking Sockaddr objects to more closely match various platforms reworking Sockaddr objects to more closely match various platforms finding missing items (issue #18684) fixup posix constants (issue #18684) adding plumbing for zephyr os (issue #18684) adding plumbing for zephyr os (issue #18684) * fixing constant capitalizations * remove extra debug prints and fix TSa_Family/cint issue * remove extra debug prints and fix TSa_Family/cint issue * Porting Nim to run on Zephyr. Includes changes to `std/net`. Squashed commit of the following: tweaking more memory / malloc things revert back bitmasks tweaking nim to use kernel heap as C malloc doesn't work fixing socket polling on zephyr cleanup getting maximum sockets for process or for rtos'es reorganizing and fixing net for async / system merge netlite changes back into nativesockets merge netlite changes back into nativesockets reverting native sockets back tweaking nim / zephyr network adding option to run 'net-lite' from linux bridging zephyr's max connections fixing net errors fixing compilation with getAddrString fixing compilation with getAddrString experimenting with a nativesockets_lite ... getAddrString experimenting with a nativesockets_lite ... getAddrString experimenting with a nativesockets_lite ... getLocalAddr experimenting with a nativesockets_lite ... getLocalAddr experimenting with a nativesockets_lite ... add note regarding incorrect FreeRTOS Sockadd_in fields changing to NIM_STATIC_ASSERT cleaning up the static_assert error messages cleaning up the static_assert error messages setting up static assert ftw! testing compile time asserts reworking Sockaddr objects to more closely match various platforms reworking Sockaddr objects to more closely match various platforms reworking Sockaddr objects to more closely match various platforms finding missing items (issue #18684) fixup posix constants (issue #18684) adding plumbing for zephyr os (issue #18684) adding plumbing for zephyr os (issue #18684) * fixing constant capitalizations * remove extra debug prints and fix TSa_Family/cint issue * remove extra debug prints and fix TSa_Family/cint issue * fixing PR issues * Porting Nim to run on Zephyr. Includes changes to `std/net`. Squashed commit of the following: tweaking more memory / malloc things revert back bitmasks tweaking nim to use kernel heap as C malloc doesn't work fixing socket polling on zephyr cleanup getting maximum sockets for process or for rtos'es reorganizing and fixing net for async / system merge netlite changes back into nativesockets merge netlite changes back into nativesockets reverting native sockets back tweaking nim / zephyr network adding option to run 'net-lite' from linux bridging zephyr's max connections fixing net errors fixing compilation with getAddrString fixing compilation with getAddrString experimenting with a nativesockets_lite ... getAddrString experimenting with a nativesockets_lite ... getAddrString experimenting with a nativesockets_lite ... getLocalAddr experimenting with a nativesockets_lite ... getLocalAddr experimenting with a nativesockets_lite ... add note regarding incorrect FreeRTOS Sockadd_in fields changing to NIM_STATIC_ASSERT cleaning up the static_assert error messages cleaning up the static_assert error messages setting up static assert ftw! testing compile time asserts reworking Sockaddr objects to more closely match various platforms reworking Sockaddr objects to more closely match various platforms reworking Sockaddr objects to more closely match various platforms finding missing items (issue #18684) fixup posix constants (issue #18684) adding plumbing for zephyr os (issue #18684) adding plumbing for zephyr os (issue #18684) * fixing constant capitalizations * remove extra debug prints and fix TSa_Family/cint issue * remove extra debug prints and fix TSa_Family/cint issue * Remerge * fixing constant capitalizations * remove extra debug prints and fix TSa_Family/cint issue * remove extra debug prints and fix TSa_Family/cint issue * fixing PR issues * fix maxDescriptors on zephyr/freertos * move maxDescriptors to selector.nim -- fixes compile issue * change realloc impl on zephyr to match ansi c behavior * change realloc impl on zephyr to match ansi c behavior * force compileOnly mode for tlwip Co-authored-by: Jaremy J. Creechley <jaremy.creechley@wavebaselabs.com> Co-authored-by: Jaremy Creechley <jaremy.creechley@panthalassa.com>
* add colon (#17834)flywind2021-04-241-1/+1
|
* use single backtick (#17133)flywind2021-02-211-52/+52
|
* styleCheck: Fix some inconsistent identifiers (#16177)ee72020-12-211-1/+1
|
* fix #12471 (#15901)flywind2020-11-101-0/+3
| | | | | | | | | | | * fix #12471 * add testcase * fix * test nimdoc is tricky * Delete t12471.nim
* async: minor refactorings (#15354)Andreas Rumpf2020-09-181-1/+1
|
* Changes for FreeRTOS/LwIP Port for the ESP32 (ESP-IDF) (#15250)Jaremy Creechley2020-08-311-0/+2
| | | | | | | | | | | | | | | | | | | * Changes for FreeRTOS/LwIP Port for the ESP32 (ESP-IDF) Adding FreeRTOS/LwIP to compiler: * adding freertos option * dyncalls for freertos * add freertos to posix os list * adding lwip option Setting up networking FreeRTOS/LwIP Port: * setting up lwip network for freertos * fixing posix / networking for freertos * disable setInheritable for freerots * using lwip for net control items * Fix builds by ignoring lib/posix/posix_freertos_consts.nim similar to lib/posix/posix_other_consts.nim
* minor improvement (#15155)flywind2020-08-041-1/+1
|
* Remove deprecated stuff from stdlib (#14699)Miran2020-06-171-19/+0
| | | | | | | * update to the latest Jester * remove deprecated procs from some stdlib modules * 'criterion' is not maintained anymore and relies on obsolete stuff
* Emscripten: disable epoll (#14361)Dominik Picheta2020-05-161-2/+2
| | | Epoll is not supported by epoll.
* change some Exceptions to CatchableError or Defect, fixes #10288 (#14069)hlaaftana2020-04-221-1/+1
|
* fix #13218: avoid some irrelevant warnings for nim doc,rst2html,--app:lib, + ↵Timothee Cour2020-03-131-1/+2
| | | | | | | | other fixes (#13550) * fix #13218: avoid some irrelevant warnings for nim doc,rst2html * suppress warnRedefinitionOfLabel for nim doc * lots of fixes for UnusedImport warnings
* Fix spellings (#12277) [backport]Federico Ceratto2019-09-271-2/+2
|
* selectors: exceptions are for errors, not for bugsAraq2019-05-151-4/+1
|
* Fixes crashes when asyncdispatch.adjustTimeout returns a negative value. ↵Dominik Picheta2019-05-151-0/+8
| | | | (#11231)
* epoll selector starts with reasonable fd set size (1024) and increases in ↵Ico Doornekamp2019-01-091-0/+3
| | | | 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)
* Allow async stdinYuriy Glukhov2018-07-251-0/+9
|
* Nintendo switch support (#8069)Joey2018-06-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | * Add config section for Nintendo Switch * Add compiler configuration for Nintendo Switch and it's CPU * Add specific lib code for Nintendo Switch * Add GC support for Nintendo Switch * Update changelog for Nintendo Switch * Update changelog with more info about fixed paths * Cleaned up GC memory management a bit * Relocate docs for Switch * Rename aarch64NoneElfGcc to nintendoSwitchGCC * Remove armv8a57 * Fix installer.ini * Reuse code in linux and amd64 * Add posix defs for nintendo switch * Add more defined sections for nintendo switch * Remove old comment * Add what's not supported for Nintendo Switch docs * Make nintendoswitch == posix * Remove DEVKITPRO references from nim.cfg * Make PR extccomp changes * Remove Result type alias * Add separate switch consts file * Update docs for nintendo switch * Fix travis errors with undefined consts and add correct wait.h procs
* remove deprecated stuff from the stdlib; introduce better deprecation warningsAraq2018-05-051-4/+4
|
* Fixes #4995. (#7157)Dominik Picheta2018-02-131-3/+18
|
* Merge branch 'devel' into async-improvementsAndreas Rumpf2017-12-111-0/+2
|\
| * favor 'select' over 'poll' on Genode (#6821)Emery Hemingway2017-12-011-0/+2
| | | | | | The 'poll' of the Genode C runtime is a wrapper over 'select'.
* | Multiple improvements to selectors.Dominik Picheta2017-11-241-8/+15
|/ | | | | | | | * 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.
* Async upcoming (#6585)Dominik Picheta2017-11-221-395/+286
| | | | | | | | | | | | | * 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.
* more replacements for the deprecated '<'Andreas Rumpf2017-10-291-2/+2
|
* docgen fixes for selectors.nimAndreas Rumpf2016-09-261-1/+2
|
* Fixes #4262.Dominik Picheta2016-09-171-0/+4
|
* Resolve #4334cheatfate2016-06-141-5/+6
|
* Fix a few deprecation warningsdef2016-01-251-5/+5
|
* Use nanoseconds for timeouts less than 1 second on Mac OS X.Dominik Picheta2015-11-011-1/+3
|
* Fix poll's timeout for Mac OS X in the seletors module.Dominik Picheta2015-11-011-1/+1
|
* selectors: Cleanup a bit epoll flavorAdam Strzelecki2015-09-291-10/+2
| | | | | | 1. Remove select documentation that is duplicate of nimdoc section below 2. Simplify a bit register proc code
* Selectors using OS X & Free/Open/NetBSD kqueue APIAdam Strzelecki2015-09-291-0/+82
|
* Fix nimdoc generation for lib/pure/selectors.nimSergey Avseyev2015-07-091-1/+2
|
* prepared selectors module for multi threadingAraq2015-06-301-34/+58
|
* Merge branch 'more_concurrency' into develAraq2015-06-301-71/+61
|\ | | | | | | | | | | | | | | Conflicts: doc/tut1.txt lib/core/locks.nim lib/pure/collections/tables.nim lib/pure/selectors.nim
| * some progress on making async multithreadedAraq2015-05-281-72/+62
| |
* | lib/pure/p-t - Dropped 'T' from typespdw2015-06-041-2/+2
|/
* Don't run non-test code when defined(testing)Oleh Prypin2015-04-211-1/+1
|
* Clean up selectors documentation a bitdef2015-02-241-4/+9
|
* Fix typosFederico Ceratto2015-02-151-1/+1
|
* made a test greenAraq2015-02-121-1/+1
|
* Handle EPOLLHUP to avoid chaos/runaways when using certain file descriptors.Elie Zedeck2015-01-211-1/+1
| | | | A concrete example is pipe file descriptors: they generate EPOLLHUP instead of a EPOLLIN (then 0 bytes read). The loop will run wild if this event is not handled.