mirror of
https://github.com/AmberGraceRblx/luau-promise.git
synced 2025-04-24 15:50:01 +00:00
Merge branch 'master' into use-xpcall
This commit is contained in:
commit
0c30e0c40b
6 changed files with 2460 additions and 1589 deletions
1
.github/FUNDING.yml
vendored
Normal file
1
.github/FUNDING.yml
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
patreon: erynlynn
|
|
@ -5,7 +5,7 @@ module.exports = {
|
|||
base: '/roblox-lua-promise/',
|
||||
|
||||
plugins: [
|
||||
['api-docs-generator', {
|
||||
['vuepress-plugin-api-docs-generator', {
|
||||
defaults: {
|
||||
returns: ['void'],
|
||||
property_tags: [{
|
||||
|
@ -33,9 +33,7 @@ module.exports = {
|
|||
|
||||
themeConfig: {
|
||||
activeHeaderLinks: false,
|
||||
searchOptions: {
|
||||
placeholder: 'Press S to search...'
|
||||
},
|
||||
searchPlaceholder: 'Press S to search...',
|
||||
nav: [
|
||||
{ text: 'API Reference', link: '/lib/' },
|
||||
{ text: 'GitHub', link: 'https://github.com/evaera/roblox-lua-promise' }
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# Next
|
||||
|
||||
- Runtime errors are now represented by objects. You must call tostring on rejection values before assuming they are strings (this was always good practice, but is required now).
|
||||
- Yielding is now allowed in Promise.new, andThen, and Promise.try executors.
|
||||
- Errors now have much better stack traces due to using xpcall internally instead of pcall.
|
||||
|
@ -7,6 +8,7 @@
|
|||
- Promises now have a __tostring metamethod, which returns `Promise(Resolved)` or whatever the current status is.
|
||||
- Promise.async has been renamed to Promise.defer (Promise.async references same function for compatibility)
|
||||
- Improve test coverage for asynchronous and time-driven functions
|
||||
- Change Promise.is to be safe when dealing with tables that have an `__index` metamethod that creates an error.
|
||||
|
||||
# 2.5.1
|
||||
|
||||
|
@ -64,4 +66,4 @@
|
|||
- Cancellation now propagates downstream.
|
||||
- Add `Promise:awaitStatus`
|
||||
- Calling `resolve` with a Promise while the resolving Promise is cancelled instantly cancels the passed Promise as an optimization.
|
||||
- `finally` now passes the Promise status as a parameter.
|
||||
- `finally` now passes the Promise status as a parameter.
|
||||
|
|
|
@ -832,9 +832,11 @@ return function()
|
|||
end
|
||||
|
||||
local promisified = Promise.promisify(test)
|
||||
local status, result = promisified(1):awaitStatus()
|
||||
local promise = promisified(1)
|
||||
local success, result = promise:_unwrap()
|
||||
|
||||
expect(status).to.equal(Promise.Status.Resolved)
|
||||
expect(success).to.equal(true)
|
||||
expect(promise:getStatus()).to.equal(Promise.Status.Resolved)
|
||||
expect(result).to.equal(2)
|
||||
end)
|
||||
|
||||
|
|
4026
package-lock.json
generated
4026
package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
@ -8,8 +8,8 @@
|
|||
},
|
||||
"dependencies": {
|
||||
"gh-pages": "^2.1.1",
|
||||
"vuepress": "^1.0.3",
|
||||
"vuepress-plugin-api-docs-generator": "^1.0.18"
|
||||
"vuepress-plugin-api-docs-generator": "^1.0.18",
|
||||
"vuepress": "^1.4.1"
|
||||
},
|
||||
"devDependencies": {},
|
||||
"scripts": {
|
||||
|
@ -27,4 +27,4 @@
|
|||
"url": "https://github.com/evaera/roblox-lua-promise/issues"
|
||||
},
|
||||
"homepage": "https://github.com/evaera/roblox-lua-promise#readme"
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue