Commit graph

213 commits

Author SHA1 Message Date
Filip Tibell
7fd32e67c2
Improve error reporting & ergonomics for datatype conversion 2023-03-11 20:50:53 +01:00
Filip Tibell
b1a3495a14
Clean up conversion traits to make roblox datatypes easier to implement 2023-03-11 19:25:48 +01:00
Filip Tibell
89aaf40fdb
Implement std ops for roblox datatypes 2023-03-11 18:38:27 +01:00
Filip Tibell
ba52396bec
Implement udim roblox datatypes, minor vector fixes 2023-03-11 17:42:16 +01:00
Filip Tibell
0f9caf5461
Roblox datatypes refactor & organization 2023-03-11 16:39:23 +01:00
Filip Tibell
4afb51830c
Implement test suite for roblox datatypes 2023-03-11 11:21:34 +01:00
Filip Tibell
e330986da5
Export new datatypes 2023-03-11 10:26:33 +01:00
Filip Tibell
fd369f707f
Implement int vector roblox types 2023-03-11 10:20:22 +01:00
Filip Tibell
d23366fc98
Impl from traits for roblox datatypes 2023-03-11 10:02:26 +01:00
Filip Tibell
b7e4312770
Don't use simd-aligned vectors for better compatibility 2023-03-11 08:18:04 +01:00
Filip Tibell
a59b0190ab
Fix fs writeFile & readFile not working with invalid utf8 2023-03-11 08:16:16 +01:00
Filip Tibell
7261ca90ef
Always use luau numbers, not lua integers for translation layer 2023-03-10 13:37:42 +01:00
Filip Tibell
078c08eabf
Implement translation layer between lua values and rbx_dom_weak variants 2023-03-10 13:35:49 +01:00
Filip Tibell
0cc5c0823e
Implement Vector2 datatypes 2023-03-10 11:33:49 +01:00
Filip Tibell
501933e3f9
Initial implementation of datatypes module, first datatype impl 2023-03-10 11:07:03 +01:00
Filip Tibell
1129d32b7b
Minor fixes, improve docs for document struct 2023-03-09 19:34:30 +01:00
Filip Tibell
cda2d46ed9
Add unit tests for isa functions 2023-03-09 18:35:26 +01:00
Filip Tibell
0f4c36219f
Implement auto detection of document kind for roblox lib 2023-03-09 17:31:44 +01:00
Filip Tibell
5bdc968ffe
Start work on roblox feature, implement document struct 2023-03-09 12:17:25 +01:00
Filip Tibell
3163f33887
Add support for shebang at the top of a script 2023-03-08 19:23:47 +01:00
Filip Tibell
99ca1fc230
Improve general error message formatting 2023-03-08 12:56:08 +01:00
Filip Tibell
8e168d3a9d
Add support for absolute file paths in the CLI 2023-03-08 12:09:45 +01:00
Filip Tibell
cbd4ba967e
Implement passing scripts to cli through stdin, minor bug fix 2023-03-07 22:07:53 +01:00
Filip Tibell
d01d2a27f4
Improve websocket behavior, implement close code 2023-03-02 19:46:17 +01:00
Filip Tibell
2f3157b64d
Try to force definitions file to have LF endings 2023-02-26 21:41:15 +01:00
Filip Tibell
f6f9e9db1f
Fix generation of selene type definitions 2023-02-26 21:33:49 +01:00
Filip Tibell
88dbc368d1
Fix formatting-related panic 2023-02-26 13:59:34 +01:00
Filip Tibell
7d75d5c52f
Version 0.5.1 2023-02-25 13:41:50 +01:00
Filip Tibell
c83917206f
Update dependencies 2023-02-24 17:48:11 +01:00
Filip Tibell
5675d7fa2d
Deep dive and configure dependencies 2023-02-24 17:44:09 +01:00
Filip Tibell
3a57e1fdc2
Add all pages & sidebar for wiki, make naming of global types more consistent 2023-02-23 16:07:09 +01:00
Filip Tibell
9fd6f66686
Add support for query pairs in net.request params 2023-02-23 11:31:42 +01:00
Filip Tibell
26c880c7a0
Document all global and user-accessible types 2023-02-23 11:11:47 +01:00
Filip Tibell
a59753569f
Implement tests for new fs move api 2023-02-23 10:20:57 +01:00
Filip Tibell
1fdc6d088c
Implement API for moving / renaming files and / or directories 2023-02-23 00:00:48 +01:00
Filip Tibell
eecffca741
De-UNC file paths on windows wherever possible 2023-02-22 23:21:37 +01:00
Filip Tibell
ec040e420e
Generate full wiki from typedefs file 2023-02-22 22:10:20 +01:00
Filip Tibell
8e894c7ac9
Use new typedefs parser to generate docs file 2023-02-22 14:25:50 +01:00
Filip Tibell
d6d0b74ce0
Skip test for now 2023-02-22 13:09:52 +01:00
Filip Tibell
c3422edeb7
Fix typedefs parser not generating nillable unions for function unions where one has no args 2023-02-22 13:06:47 +01:00
Filip Tibell
41ba23d7ab
Fix unification of arg types in unions where one side has nil(s) 2023-02-22 12:40:48 +01:00
Filip Tibell
a96745c292
Support referenced types in parser type stringification 2023-02-22 12:35:49 +01:00
Filip Tibell
77623264ae
Improve unification of arg types in parser 2023-02-22 12:18:30 +01:00
Filip Tibell
7c25c3319d
Clean up typedefs parser 2023-02-22 11:31:58 +01:00
Filip Tibell
09db6d5d8a
Properly handle function generics in typedefs parser 2023-02-22 11:04:31 +01:00
Filip Tibell
7b1b77fbba
Rename doc > definition in type definitions parser 2023-02-22 10:53:00 +01:00
Filip Tibell
dc8290b51b
Fix visibility issues for selene gen 2023-02-22 10:48:04 +01:00
Filip Tibell
67f9d4eb9f
Implement full selene typedefs generator 2023-02-22 10:11:36 +01:00
Filip Tibell
f4c55ff2cf
Implement most of the selene typedefs generation 2023-02-21 22:14:00 +01:00
Filip Tibell
c252db4598
Finish new docs parser 2023-02-21 21:06:11 +01:00
Filip Tibell
9c8539f627
Implement most of the new docs parser 2023-02-21 19:47:04 +01:00
Filip Tibell
edf225e888
Add os and arch constants to process global 2023-02-21 16:45: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
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
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
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
adc503d6ae
Fix docs file not parsing because of declare class syntax 2023-02-11 23:37:23 +01:00
Filip Tibell
091dc17337
Implement web socket client 2023-02-11 23:29:17 +01:00
Filip Tibell
6c97003571
Implement web sockets for net serve 2023-02-11 22:40:14 +01:00
Filip Tibell
962d89fd40
Accept & upgrade websocket connections 2023-02-11 15:09:06 +01:00
Filip Tibell
41212f4b4c
Net serve now returns a handle to stop serving requests safely 2023-02-11 14:25:53 +01:00
Filip Tibell
6c49ef7e4a
Use static lua lifetime 2023-02-11 12:39:39 +01:00
Filip Tibell
709a69aa82
Refactor and document lune lib public members 2023-02-10 12:14:28 +01:00
Filip Tibell
3073fb8fec
Move internal message struct out from lib file 2023-02-09 23:28:12 +01:00
Filip Tibell
be39ecc00a
Reuse http client for net.request 2023-02-09 23:21:26 +01:00
Filip Tibell
eebe009873
Use console crate for ansi colors in list command 2023-02-09 23:07:30 +01:00
Filip Tibell
f18fe48008
Add support for tilde home dir substitution in process.spawn 2023-02-09 22:59:17 +01:00
Filip Tibell
7699d06647
Proper implementation of async process spawn 2023-02-09 22:23:22 +01:00
Filip Tibell
72f6b356c4
Initial work on async impl of process spawn 2023-02-09 17:23:06 +01:00
Filip Tibell
7aa8896997
Query parameters for net serve is now a table instead of a string 2023-02-07 21:54:52 -05:00
Filip Tibell
ee64d2ef9c
Implement stdio prompt function 2023-02-06 12:59:48 -05:00
Filip Tibell
bbf1c9f4f7
Migrate console global to stdio 2023-02-06 00:13:12 -05:00
Filip Tibell
420a861061
Don't export everything in the lune lib 2023-02-05 22:32:10 -05:00
Filip Tibell
2e3f95ebd6
Migrate console lib printing functions to regular globals 2023-02-05 22:25:36 -05:00
Filip Tibell
f5d9aab2e5
Fix publishing to crates.io 2023-02-05 19:41:38 -05:00
Filip Tibell
aec7f820ca
Migrate to using cargo workspaces 2023-02-05 19:13:58 -05:00