Commit graph

223 commits

Author SHA1 Message Date
Filip Tibell
f5dfe75634
Update changelog 2023-02-21 12:30:31 +01:00
Filip Tibell
36a3bd2113
Use more descriptive module name instead of 'utils' 2023-02-21 11:55:30 +01:00
Filip Tibell
0737c3254e
Fix internal task scheduler counter bug, do some cleanup 2023-02-21 11:45:09 +01:00
Filip Tibell
8fd39fcf9d
Improve error handling when net.serve callback errors 2023-02-21 11:32:47 +01:00
Filip Tibell
a7fab69838
More websocket generics 2023-02-21 00:06:56 +01:00
Filip Tibell
cdf7db51f6
Fix scheduler not always waking up 2023-02-20 17:27:33 +01:00
Filip Tibell
5f3169c1bb
Make websocket object generic over streams 2023-02-20 16:08:45 +01:00
Filip Tibell
c57677bdd3
Make websockets work again 2023-02-20 14:43:14 +01:00
Filip Tibell
801da61c0f
Clean up error handling & chunk loading 2023-02-20 13:02:22 +01:00
Filip Tibell
4cc983dbe6
Add coroutine test suite, implement status 2023-02-17 21:06:33 +01:00
Filip Tibell
dbe6c18d3a
Fix task.wait breaking after coroutine.resume 2023-02-17 19:47:10 +01:00
Filip Tibell
c45c78bdc2
More work on task scheduler 2023-02-17 19:20:17 +01:00
Filip Tibell
744b73db3d
Improve net tests 2023-02-17 15:09:30 +01:00
Filip Tibell
58ce046394
Implement proper async require & error handling 2023-02-17 15:03:13 +01:00
Filip Tibell
7f17ab0063
Only use threads and nothing else to simplify task scheduler 2023-02-17 00:08:24 +01:00
Filip Tibell
546ebbd349
Improve handling of async lua function creation 2023-02-16 23:23:52 +01:00
Filip Tibell
4ccaa52b87
Perform GC and cleanup in scheduler if there are only background tasks left 2023-02-16 21:45:18 +01:00
Filip Tibell
89387c51da
Use unwrap or default where possible 2023-02-16 18:17:56 +01:00
Filip Tibell
04a47babdd
Implement traceback helper to use in scheduler 2023-02-16 16:19:58 +01:00
Filip Tibell
02e4f87a5a
Remove tool used for testing 2023-02-16 12:50:56 +01:00
Filip Tibell
b080d78253
Prepare for autogeneration of selene type definitions 2023-02-16 12:28:17 +01:00
Filip Tibell
a1f48fae47
Organize docs gen 2023-02-16 12:13:42 +01:00
Filip Tibell
b6f0f90ac5
Fix docs gen test 2023-02-16 12:09:06 +01:00
Filip Tibell
1bee0986c7
Preserve order for json ser/de 2023-02-16 12:05:54 +01:00
Filip Tibell
2716e4f72a
Generate basic API reference markdown pages for wiki 2023-02-16 11:52:23 +01:00
Filip Tibell
6a8e70657b
Update configuration instructions in README 2023-02-15 23:28:08 +01:00
Filip Tibell
86a0059af5
Fix workflow 2023-02-15 23:03:43 +01:00
Filip Tibell
9a1cc94f99
Generate type defs & docs in release workflow 2023-02-15 23:03:31 +01:00
Filip Tibell
9c4806a840
Add mustuse and access control tags in typedefs file 2023-02-15 22:51:01 +01:00
Filip Tibell
79f6d6df8a
Bundle type definition files in executable 2023-02-15 22:36:26 +01:00
Filip Tibell
b1e08bf813
Move scheduler fns into traits, improve error handling for scheduler not existing 2023-02-15 13:22:13 +01:00
Filip Tibell
fa14e4a02b
Refactor new task scheduler
* Use cell & refcell, we don't need mutexes

* Split out into several modules
2023-02-15 12:18:25 +01:00
Filip Tibell
8d44e1e827
Support built-in coroutine global in new task scheduler 2023-02-14 23:17:03 +01:00
Filip Tibell
3990b8e064
Properly handle blocking tasks spawned during async tasks in new scheduler 2023-02-14 21:36:04 +01:00
Filip Tibell
6f1ae83fbe
Make stdio.prompt async to let background tasks run 2023-02-14 21:14:50 +01:00
Filip Tibell
d078968d08
Clean up net global implementation 2023-02-14 19:39:28 +01:00
Filip Tibell
f98400f753
Improve error for net serve failing to bind 2023-02-14 19:05:35 +01:00
Filip Tibell
a9261f889f
Do some debugging, fix scheduler not always exiting with the correct code/error 2023-02-14 16:39:15 +01:00
Filip Tibell
b5f6e6da98
Implement async background tasks for scheduler 2023-02-14 15:27:10 +01:00
Filip Tibell
d2ff0783a5
Implement bulk of async APIs 2023-02-14 13:17:07 +01:00
Filip Tibell
b1b69c7d94
Properly handle tasks that switch context in new scheduler 2023-02-13 23:36:30 +01:00
Filip Tibell
879d6723a3
Document some more scheduler stuff 2023-02-13 21:47:18 +01:00
Filip Tibell
e3e56301ce
Elide lifetimes where possible 2023-02-13 21:31:19 +01:00
Filip Tibell
805b9d89ad
Fully implement and document the task scheduler 2023-02-13 21:29:05 +01:00
Filip Tibell
fc5de3c8d5
Initial implementation of proper task scheduler, no async yet 2023-02-13 15:28:18 +01:00
Filip Tibell
bb182033b9
Fix task.delay keeping Lune alive even if cancelled 2023-02-12 19:07:15 +01:00
Filip Tibell
5157e60379
Improve websocket examples 2023-02-12 18:24:55 +01:00
Filip Tibell
620361348f
Improve example comment 2023-02-12 17:30:15 +01:00
Filip Tibell
b302543502
Add examples for web socket servers & clients 2023-02-12 15:25:17 +01:00
Filip Tibell
d50df04d09
Fix typo in changelog 2023-02-12 00:10:23 +01:00