Skip to content

Commit 1444f82

Browse files
bensaufleycamc314
andauthored
feat(linter/promise/spec-only): Add Promise.try to Promise static methods (#22812)
According to [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/try), `Promise.try` is Baseline as of January 2025. This seems like a pretty simple change, but lmk if I've missed something. --------- Signed-off-by: Cameron <cameron.clark@hey.com> Co-authored-by: Cameron <cameron.clark@hey.com>
1 parent 0a9a735 commit 1444f82

2 files changed

Lines changed: 3 additions & 2 deletions

File tree

‎crates/oxc_linter/src/rules/promise/spec_only.rs‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ fn test() {
104104
("Promise.all()", None),
105105
("Promise.all()", Some(serde_json::json!([{ "allowedMethods": [] }]))),
106106
("Promise.race()", None),
107+
("Promise.try()", None),
107108
("Promise.withResolvers()", None),
108109
("new Promise(function (resolve, reject) {})", None),
109110
("SomeClass.resolve()", None),

‎crates/oxc_linter/src/utils/promise.rs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ use oxc_semantic::SymbolId;
99
use crate::context::LintContext;
1010

1111
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise
12-
pub const PROMISE_STATIC_METHODS: [&str; 7] =
13-
["all", "allSettled", "any", "race", "reject", "resolve", "withResolvers"];
12+
pub const PROMISE_STATIC_METHODS: [&str; 8] =
13+
["all", "allSettled", "any", "race", "reject", "resolve", "try", "withResolvers"];
1414

1515
pub fn is_promise(call_expr: &CallExpression) -> Option<String> {
1616
let member_expr = call_expr.callee.get_member_expr()?;

0 commit comments

Comments
 (0)