Commit graph

57 commits

Author SHA1 Message Date
dde8ad0893
chore(pkg): rusty-luau v0.2.0
This release includes various changes to API interfaces, documentation, and includes new implementations.

- Fixed inconsistencies `Option` & `Result` implementations
- Implemented `Future`, a pollable asynchronous idiom, alternative to promises

  ```luau
	local net = require("@lune/net")

	local fut: Future<Result<string, string>> = Future.try(function(url)
		local resp = net.request({
			url = url,
			method = "GET",
		})

		assert(resp.ok)

		return resp.body
	end, { "https://jsonplaceholder.typicode.com/posts/1" })

	local resp: Result<string, string> = fut:await()
	print(net.jsonDecode(resp:unwrap()))
	```

- Added documentation for all available implementations
- Included CI action
- Added examples for `Result`
- Removed incomplete `Iter` implementation
2024-06-21 16:02:41 +05:30
b65aa29de3
chore: remove incomplete Iter 2024-06-21 16:00:39 +05:30
cf0caddcad
chore(tooling): update lune 2024-06-21 15:58:37 +05:30
a38422d084
chore(README): use abs license link 2024-06-21 15:53:44 +05:30
f3b77f2575
revert: roblox support from main
Undoing experimental Roblox bundling support simply because I cannot maintain it. See branch roblox-support for the reverted version.
2024-06-11 19:49:22 +05:30
a2a1e9bbf1
chore: remove gitattributes
GitHub now supports luau :)
2024-06-10 17:35:59 +05:30
8f7cb3e2a0
chore(actions): fix top-level deps path in lint step 2024-06-03 12:43:24 +05:30
814fc51e16
chore: apply formatting 2024-05-25 08:14:02 +05:30
660806dff8
chore: update gitignore & sourcemap 2024-05-25 08:11:44 +05:30
35ada9759c
chore: remove bundled roblox scripts 2024-05-25 08:08:18 +05:30
edcef2015f
feat: roblox event polyfills
* RobloxEvent as a wrapper around BindableEvents providing the same API
  type as LuauSignal
* Future.poll now returns a Result instead of a force unwrap
2024-05-25 08:05:35 +05:30
c42e4ad3fe
chore: initial rojo + roblox bundling support 2024-05-24 23:30:49 +05:30
376b7ae3a7
chore(README): replace license link with absolute github link 2024-04-27 13:35:58 +05:30
7804701d6b
chore(README): add icons 2024-04-27 13:33:47 +05:30
317b0cde87
docs: include comments for conversion module & fix options intro hrefs
* Included moonwave doc comments for `Option` <-> `Result` conversion module
* Fixed incorrect href format in `Option` module introduction
2024-04-26 22:16:37 +05:30
e4b35bd5cb
chore(README): fix docs lint 2024-04-26 12:21:54 +05:30
37c348535a
chore: include README 2024-04-26 12:19:41 +05:30
44f79b9cf4
chore(actions/docs): give up on pnpm 2024-04-26 12:11:17 +05:30
abf05fa7d3
chore(actions/docs): load bashrc 2024-04-26 12:09:18 +05:30
d2b0cbf190
chore(actions/docs): another attempt at fixing npm aliasing 2024-04-26 12:05:22 +05:30
6fab3b64ce
chore(actions/docs): fix npm aliasing 2024-04-26 12:01:49 +05:30
b0caea58dc
chore(actions/docs): temporarily disable caching pnpm 2024-04-26 11:55:49 +05:30
f1d5358e39
chore(actions/docs): specify pnpm version in action invocation 2024-04-26 11:54:19 +05:30
5274ae9390
chore(actions): add package.json as workaround in docs workflow 2024-04-26 11:50:59 +05:30
ea8bd316de
chore(actions): add docs action
Includes a GitHub Action to automatically deploy a documentation site on commits.
2024-04-26 11:49:25 +05:30
058877513c
chore(gitignore): include moonwave docs output dir 2024-04-26 11:42:49 +05:30
113a77b8d8
chore(actions): setup typedefs before analysis 2024-04-26 11:34:51 +05:30
8a68eda2f7
chore(action): install deps with wally after installing it 2024-04-26 11:33:13 +05:30
dcbc2208c3
chore(actions) + refactor(lint): include linting in workflow
Also fixes various lint warnings/errors by selene.
2024-04-26 11:30:49 +05:30
107406d50f
chore(actions): give stylua check path in fmt workflow 2024-04-26 11:16:57 +05:30
0072a9fd87
chore(actions): include basic fmt & lint workflows 2024-04-26 11:15:04 +05:30
fb97755cad
docs + refactor: document all of Result module & minor refactors/fixes
* Include moonwave doc comments for `Result`
* Renamed `Option:getInner` to `Option:unwrapUnchecked`
* Updated both `Option.__eq` and `Result.__eq` to support tables
* Replaced nil returns in types with unit type
* Make unimplemented methods throw an error
* Rename `Result.exceptErr` to `Result.expectErr`
* Add missing return type in `Result.unwrapOrElse`
2024-04-26 10:55:22 +05:30
4c7a4ee0fd
docs(moonwave): include customized moonwave configs 2024-04-16 16:11:23 +05:30
6b30f08388
chore(pkg): expand list of excludes in manifest 2024-04-15 21:33:48 +05:30
50c5a0967f
fix(pkg): include required files in final package 2024-04-15 21:32:22 +05:30
5dfc707b29
fix: credit source for table comparison algorithm 2024-04-15 21:26:38 +05:30
d85faed644
feat(Option): include documentation + minor changes
* Add proper equality checks for tables in metamethod.
* Document all exported functions & classes.
2024-04-15 21:23:51 +05:30
8632d052a9
docs(Future): include moonwave comments 2024-04-15 21:23:51 +05:30
64f73540ed
fix(Future): actually return module 2024-04-14 20:13:34 +05:30
b11ac303ea
fix(Future): dont export Result type 2024-04-14 19:26:05 +05:30
cd10bd86fc
fix(Future): remove lsp warning by removing unused Result object 2024-04-14 19:19:37 +05:30
6f02130e51
chore(Future): include await system and fallible futures 2024-04-14 19:19:08 +05:30
b5ba4d9e38
fix(Future): polling is guaranteed to return generic type T 2024-04-14 19:08:40 +05:30
01229741f6
feat: include initial Future impl 2024-04-14 18:57:48 +05:30
38704d18af
fix: fix warnings by removing unused Result enums 2024-04-02 23:09:54 +05:30
c7bf127222
feat: include initial (WIP) Iter implementation 2024-04-02 23:02:25 +05:30
de25b4d19c
fix: uncomparable metatables TypeError 2024-04-02 23:00:56 +05:30
353ce041ea
chore(examples): include initial result example 2024-04-02 17:41:15 +05:30
b33abef2ca
chore(pkg): rusty-luau v0.1.0
The very first release of rusty-luau.

- Initial `Option` & `Result` implementations
2024-04-02 17:38:48 +05:30
5cd9107c98
chore: include wally package manifest 2024-04-02 17:29:41 +05:30