## Description This PR introduces the custom ESLint rule to [handle floating promises](https://typescript-eslint.io/rules/no-floating-promises/) in our JS Objects (using async function calls without await inside async functions). Along with this, some refactors were needed 1) Function to dynamically enable/disable the rules based on context ( using editor type as the context for now, can be updated as per requirements). 2) Generate a list of async functions from the global data input for evaluation. 3) Package added for estree types. Note: This custom rule is only used in our EE codebase for now. We can enable it in CE in case the requirement arises. Fixes https://github.com/appsmithorg/appsmith/issues/37255 ## Automation /test sanity js ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/12558146123> > Commit: 36b66109c7ef70dc1eb97b445661ac69f881775a > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12558146123&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity, @tag.JS` > Spec: > <hr>Tue, 31 Dec 2024 10:54:23 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Release Notes - **New Features** - Added a custom ESLint rule to enforce proper Promise handling - Enhanced linting capabilities with more granular error detection - **Improvements** - Updated linting utility functions to support more flexible configuration - Introduced more detailed context-aware linting options - **Development** - Added TypeScript type definitions for ESTree - Expanded test coverage for linting utilities - **Chores** - Refactored linting-related utility functions and constants <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|---|---|---|
| .. | ||
| client | ||
| server | ||
| util | ||