## Description
This PR adds an improvement to the actions part of the consolidated view
API, where by it moves the filtering that we do to check if the action
of pluginType JSObject has been moved to MongoDB. This way the mongoDB
query that we do contains pluginTypes to include and we won't have to do
additional filtering at the code layer, there by saving some time that
is spend on further filtering and sanitising each action.
Here are some of the observations for before and after making this
change:
### Case 1:
Before (Total consolidated view api duration ~ 1.72s)
Actions span totally took ~ 1.12s
<img width="1171" alt="Screenshot 2024-08-22 at 9 26 15 PM"
src="https://github.com/user-attachments/assets/2dc69e4f-619a-4b86-9e9b-f1aede63d868">
After (Total consolidated view api duration ~ 1.72s)
Actions span totally took ~ 566ms
<img width="1180" alt="Screenshot 2024-08-22 at 9 33 16 PM"
src="https://github.com/user-attachments/assets/2947da7e-34ae-4933-9adf-7f7433c89c4e">
### Case 2:
Before (Total consolidated view api duration ~ 2.66s)
Actions span totally took ~ 1.67s
<img width="1170" alt="Screenshot 2024-08-22 at 9 34 05 PM"
src="https://github.com/user-attachments/assets/27b046d9-c066-4282-92c3-d1053b820d33">
After (Total consolidated view api duration ~ 2.88s)
Actions span totally took ~ 935ms
<img width="1180" alt="Screenshot 2024-08-22 at 9 34 28 PM"
src="https://github.com/user-attachments/assets/6bf3c47a-27a3-497d-b4ee-debdd5e6f25e">
Note: These numbers are obtained by testing the app with many actions
and js objects [Xolair App]
Fixes #`Issue Number`
_or_
Fixes [`Issue
URL`](https://github.com/appsmithorg/appsmith/issues/35815)
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Datasource"
### 🔍 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/10522148136>
> Commit: f0cf9b23c1ca80eb652c5e3a5e3502fdb4dcab59
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10522148136&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
> Spec:
> <hr>Fri, 23 Aug 2024 08:34:57 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced enhanced action retrieval capabilities based on specific
plugin types, allowing for more tailored responses.
- Added new methods to filter actions by application ID and plugin type,
improving granularity in action queries.
- **Bug Fixes**
- Updated existing action retrieval methods to support additional
filtering options, improving the accuracy of returned results.
- **Chores**
- Streamlined query logic in the repository to enhance performance and
maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
After adding sub-spans to pages component the breakdown of duration
looks like below:
### Sample 1

### Sample 2

Fixes https://github.com/appsmithorg/appsmith/issues/35718
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.All"
### 🔍 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/10484118259>
> Commit: 2bf56fa97ec8ce6952aca9f73816f3ddbfe9b648
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10484118259&attempt=4"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 21 Aug 2024 09:36:26 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
## Summary by CodeRabbit
- **New Features**
- Enhanced page management functionalities with new constants for
improved data organization and retrieval.
- Introduced functionality for generating standardized span names to
improve API monitoring and tracing.
- Improved observability with new tracking features for application
pages, aiding in performance analysis.
- **Bug Fixes**
- Streamlined handling of span names to eliminate redundancy within the
application.
- **Refactor**
- Updated service classes to incorporate enhanced observability features
for better resource monitoring.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
PR to add the cleanup and update default tenant at the server restart.
This was required because whenever we update tenant via migrations the
result gets reverted because the cached tenant is not getting updated as
we generally end up updating only the MongoDB state and not the cached
entry.
/test Sanity
### 🔍 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/10471754877>
> Commit: e288cfe1084bdbf2104a656bf60eb9c24708fe77
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10471754877&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Tue, 20 Aug 2024 13:01:42 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
- **New Features**
- Implemented a mechanism to refresh tenant policies and manage cache
cleanup during server restarts, ensuring accurate policy enforcement for
multi-tenant applications.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
PR to add error logs in the consolidated-api as whenever DB operation
fails we are not logging these anywhere and ends up in the response
only.
/test Sanity
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> 🟣🟣🟣 Your tests are running.
> Tests running at:
<https://github.com/appsmithorg/appsmith/actions/runs/10466559600>
> Commit: c04482ee779580e789f138ab510c1dc5444e617c
> Workflow: `PR Automation test suite`
> Tags: `@tag.Sanity`
> Spec: ``
> <hr>Tue, 20 Aug 2024 06:37:40 UTC
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Enhanced error logging for asynchronous operations, improving
diagnostics for failures in data fetching related to user profiles,
feature flags, and more.
- **Improvements**
- Augmented observability and robustness of the application through
detailed error messages for data retrieval issues.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
The PR adds logs to captcha verification flow. We do not collect any
information on the captcha failures and this causes issues when we are
debugging captcha errors on the users machine.
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 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/10448741894>
> Commit: 80069256b6db4e9cf8f93faeedb83621c183f09d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10448741894&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Mon, 19 Aug 2024 07:26:34 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced error handling and logging for reCAPTCHA verification,
providing better insights into potential issues.
- **Bug Fixes**
- Improved robustness of the verification process by capturing and
logging errors at multiple points.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> [!TIP]
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content, marketing, and DevRel team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags=""
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> If you modify the content in this section, you are likely to disrupt
the CI result for your PR.
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Temporarily disabled a flaky test related to theme imports to improve
stability during development.
- **Chores**
- Removed unnecessary user context from the disabled test to streamline
testing efforts.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- While importing existing git connected app through git, we update the
existing theme, since this operations was moved to
dryOperationRepository which was using bulkUpdate method to update
themes, this caused the Policy to be empty in the db after the update.
Once this happened, the consolidated api looking for current theme had
to default to Default theme due to `ACL_NO_RESOURCE_FOUND` . hence it
gave the appearance that the theme is reverting.
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Git"
### 🔍 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/10384132583>
> Commit: de97f53068fabe7b9cccf0ba32ffe424092023d4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10384132583&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Wed, 14 Aug 2024 08:53:02 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced theme management by allowing individual updates for each
theme, improving granularity and error handling during the update
process.
- **Bug Fixes**
- Improved control flow for theme updates, leading to better feedback on
each update operation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR adds new properties to the `Execute Action` mixpanel event so
that we can measure the following:
- How many users are progressing through their app building journey
- Are we noticing patterns of what order users are building out this
functionality
- What stage do users get to before they get stuck, or lost
New Properties added are:
- ACTION_EXECUTION_REQUEST_PARAMS_VALUE_MAP
- ACTION_EXECUTION_INVERT_PARAMETER_MAP
- ACTION_EXECUTION_RAW_QUERY
Fixes#35291
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 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/10372829069>
> Commit: e8d8a02d38c9306eebef201a84a3570db9cd572d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10372829069&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Tue, 13 Aug 2024 16:11:44 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced new constants for action execution parameters, enhancing
clarity and maintainability.
- Added the capability to log raw action configurations in analytics
events for improved tracking of action executions.
- **Improvements**
- Enhanced analytics data handling by conditionally managing properties
based on the hosting environment, ensuring better data privacy for
self-hosted applications.
- Expanded functionality of action execution by integrating new
configuration options, improving overall performance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Ref thread:
https://theappsmith.slack.com/archives/C0341RERY4R/p1723548842255209?thread_ts=1723445955.346459&cid=C0341RERY4R
/test Workspace
### 🔍 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/10380730889>
> Commit: 915e93253bee64fed0a52fc0d308bda0f8e18727
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10380730889&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Workspace`
> Spec:
> <hr>Wed, 14 Aug 2024 03:42: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
- **New Features**
- Introduced new constants to improve handling of deprecated field names
and enhance multi-tenant functionalities, including `DELETED_AT`,
`TENANT_ID`, and `PERMISSION_GROUPS`.
- Implemented migration processes for updating tenant policies and
optimizing query performance with new database indexes.
- **Bug Fixes**
- Improved system stability by refining the declaration of constants,
ensuring immutability for `POLICIES` and enhancing error logging for
database migrations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Observation: Even after successful execution of the migration where we
are replacing policies to policyMap for tenant, we end up in a state
where the policies has the required values but policyMap was still end
up in a empty state.
```
{
policyMap: {},
policies: [
{
permission: 'tenantReadPermissionGroups:tenant',
permissionGroups: [ '6303edf184daf727dddb003d' ]
},
{
permission: 'tenantManageUserGroups:tenant',
permissionGroups: [ '6303edf184daf727dddb003d' ]
},
{
permission: 'tenantDeleteUserGroups:tenant',
permissionGroups: [ '6303edf184daf727dddb003d' ]
},
.
.
.
}
```
/test sanity
### 🔍 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/10348884858>
> Commit: 539a7675d780abebdb6ad8b90f2d8d2923374bb3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10348884858&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Mon, 12 Aug 2024 09:16:31 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
- **New Features**
- Improved tenant management and cache eviction processes during
migrations to ensure accurate and up-to-date tenant information.
- **Bug Fixes**
- Enhanced data consistency and integrity by evicting the default tenant
from the cache after updates, preventing stale data issues.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Migrate `policies` from being a `Set<Policy>` to a `policyMap`, that's a
`Map<String, Policy>`. The key defines the permission whereas the value
is the actual policy object. This makes it easier to use this data in
code, to query as a MongoDB nested document, and as a Postgres `jsonb`
column. Win-win!
The migration runs for all collections in parallel, with following stats
taken on 1-Jul-2024.
1. Release data, only non-deleted documents, all collections, parallel,
2m 42s.
2. Prod replica data, only non-deleted documents, all collections,
parallel, (15m).
3. Release data, only non-deleted documents, all collections, serial,
~9m.
This PR is only part of the solution. We have backwards compatible
`getPolicies()` and `setPolicies()` methods so the diff isn't too big,
but a follow-up PR will remove those two, and migration all usages to
use the map instead.
This PR only (almost) strictly includes changes that were necessary for
the build and tests to pass.
**/test all**
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10301601562>
> Commit: d58ac59ea9bffb170f979176cdfc1ff378b440ef
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10301601562&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 08 Aug 2024 12:46:36 UTC
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced migration logic to convert `policies` to `policyMap`,
enhancing data structure for policy management.
- **Documentation**
- Updated summaries and documentation to reflect changes in policy
handling.
- **Refactor**
- Replaced direct field references with constant values for policy
fields in migration files.
- Adjusted method signatures to utilize the new `policyMap` structure.
- Improved policy management logic for better immutability and safety.
- **Tests**
- Added new test cases for policy management functionality.
- Updated existing test assertions to ensure proper policy handling with
the new data structure.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Abhijeet <abhi.nagarnaik@gmail.com>
## Description
>
>
>
Fixes https://github.com/appsmithorg/appsmith/issues/35536
## Automation
/ok-to-test tags="@tag.Git"
### 🔍 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/10315694999>
> Commit: f03353bab60f38f3f88bac0303cdc55b5a0edae3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10315694999&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Fri, 09 Aug 2024 08:16:04 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced migration logic for server schema versions, ensuring proper
handling of theme settings during migrations from version 6 to 9.
- Introduced methods to establish and set default theme settings for
applications during migration.
- **Bug Fixes**
- Simplified server version retrieval process, ensuring consistent
versioning behavior.
- **Tests**
- Updated tests to reflect changes in server version expectations,
removing unnecessary assertions related to feature flags.
- Streamlined validation logic in migration tests to focus solely on
expected schema versions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR adds perf metrics around consolidated view API -> actions
section. These metrics will help us understand which parts of the code
are taking the longest which can help us in improving it further.
Fixes#35338
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.All"
### 🔍 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/10301401346>
> Commit: e89901b15e648e6d466665c637be01572ccc963e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10301401346&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 08 Aug 2024 12:29:57 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
- **New Features**
- Introduced new constants for action spans to improve tracking of user
interactions in the view mode.
- Added a new class for page spans, enhancing organization and clarity
of API span naming conventions.
- **Bug Fixes**
- Improved integration with existing components for better observability
and performance monitoring.
- **Chores**
- Updated naming conventions for span identifiers to promote consistency
across the application.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
## Description
PR to fix the issue with DB url update from admin settings page. When we
migrated the env variable to `APPSMITH_DB_URL` instead of
`APPSMITH_MONGODB_URI` this functionality broke. We had a discussion to
remove this update functionality as this does not work in all the
setups. But as QA has already started pointing this as an issue raising
this PR.
## Automation
/ok-to-test tags="@tag.Settings"
### 🔍 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/10297374384>
> Commit: dbef20ca923a1cba0d7687766481060eab5057fa
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10297374384&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Settings`
> Spec:
> <hr>Thu, 08 Aug 2024 07:13:51 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
- **New Features**
- Updated the database connection string naming from "MongoDB URI" to
"Appsmith DB URL" in the Admin Settings, enhancing clarity in
configuration.
- Revised subtext in Admin Settings for improved user understanding of
the database URL's purpose.
- **Bug Fixes**
- Adjusted test cases to reflect the new naming convention, ensuring
consistent references to "APPSMITH_DB_URL" across various tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Flaky testcase:
`AuthenticationServiceTest.testGetAuthorizationCodeURL_missingDatasource`
- Reason: Hot publisher `newPageMono` was getting executed before the
`datasourceMonoCached` can complete the execution.
- Fix: With this PR we are making sure `newPageMono` get's called only
after the execution of datasourceMono is completed.
/test sanity
### 🔍 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/10298256036>
> Commit: 16f3efb81a3beaf084bef97f60ea29232ea998a7
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10298256036&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Thu, 08 Aug 2024 08:20:46 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
- **Improvements**
- Enhanced clarity in the authorization code URL generation process for
OAuth2, resulting in better maintainability and readability.
- Explicit handling of data sources to improve the logic flow associated
with OAuth2 validation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> [!TIP]
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content, marketing, and DevRel team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags=""
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> If you modify the content in this section, you are likely to disrupt
the CI result for your PR.
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Adjusted the test execution context by removing outdated annotations,
improving the relevance and accuracy of the theme import tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
This PR adds the spotless formatter and validator for the JSON files
present in the project. If there is any invalid JSON file, the formatter
fails and logs the file and the error LOC to be fixed.
Since Spotless is already added to the pre-commit hook it also makes it
necessary to fix the JSON and then commit the changes.
Screenshot of the errors displayed for Invalid JSONs

### Why is this Important?
All of our datasource forms appear on the UI from the JSON configuration
files in the plugins. If an Invalid JSON is added, it can break the
datasource usage experience for the users.
One such instance happened in the past, where due to a JSON formatting
error, the users could not use Smart Substitution feature on production.
[Reference](https://theappsmith.slack.com/archives/C040LHZN03V/p1721124893238579)
Fixes#34969
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 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/10243164292>
> Commit: 08bc87acd2e44c4a2677d3eed1bad002f991050a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10243164292&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Mon, 05 Aug 2024 05:50:07 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
## Description
Fixed GraphQL version
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 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/10177151252>
> Commit: 52a3f4ebc0ad3cd169bf1fe8cabd0156ed7a22e4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10177151252&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Wed, 31 Jul 2024 09:17:29 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [X] No
## Summary by CodeRabbit
- **New Features**
- Updated the GraphQL plugin and server to utilize the latest version
(21.5) of the `graphql-java` library, enhancing functionality and
performance.
- **Bug Fixes**
- Improvements and bug fixes may be included with the update to the
`graphql-java` dependency, potentially improving GraphQL query handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Add a new application setting which would allow users to set max width
of their applications.
Fixes#34993
## Automation
/ok-to-test tags="@tag.All"
### 🔍 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/10159296604>
> Commit: d2a98dcaecda2903dd8233f1f53ea119721095fa
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10159296604&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 30 Jul 2024 09:50:48 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
## Summary by CodeRabbit
- **New Features**
- Introduced a new constant for application maximum width settings,
allowing for `Unlimited`, `Large`, and `Medium` options.
- Added an `AppMaxWidthSelect` component for users to select maximum
width configurations from a dropdown menu.
- Enhanced `Canvas` and `MainContainerWrapper` components to accept and
utilize maximum width settings for improved layout adaptability.
- Implemented a new selector to retrieve the maximum width setting for
use in various components.
- Enhanced the theme property pane to allow users to customize the
application layout through maximum width selection.
- Updated `CanvasFactory` to utilize the application theme settings for
a more responsive layout.
- **Bug Fixes**
- Improved initialization logic to prevent null reference issues related
to theme settings.
- **Tests**
- Enhanced test cases to verify inclusion of maximum width settings in
exported applications and during application imports.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
## Description
> This code change focuses on moving the File I/O operations related to
plugins API to elastic and parallel threads for subscription and
publishing. It will allow the `nioEventLoop` threadpool to not be locked
on file I/O.
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 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/10138493266>
> Commit: cc3b5f1ac44138985ba228e8b2d4f8e324ed6e7f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10138493266&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Mon, 29 Jul 2024 05:34:16 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
- **New Features**
- Introduced a new `LoadShifter` helper class for improved thread
scheduling in reactive programming.
- Enhanced asynchronous operations in various services using elastic and
parallel scheduling mechanisms.
- **Bug Fixes**
- Updated scheduling strategies in services to improve performance and
responsiveness under varying loads.
- **Chores**
- Streamlined dependency management by removing unnecessary `Scheduler`
parameters and dependencies in multiple classes.
- **Tests**
- Refined test setups by removing unused `Scheduler` and `CommonConfig`
mock beans for cleaner test definitions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
## Description
> Extend OAuth2AuthenticationException so that we can differentiate
between AppsmithException and exceptions thrown by Spring Library.
> There is not going to be any change to the Authentication flows here,
as the we are just inheriting the OAuth2AuthenticationException.
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.All"
### 🔍 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/10092949232>
> Commit: bc2f204a6516fd527775daafb4829254d19251eb
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10092949232&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 25 Jul 2024 13:13:00 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new custom exception for improved handling of OAuth 2.0
authentication errors, enhancing the clarity and robustness of the
authentication process.
- **Bug Fixes**
- Enhanced error categorization in the authentication process by
refining the error handling logic, allowing for better management of
exceptions related to OAuth 2.0.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
## Description
Remove the execution time calculation via stopwatch. This was used for
profiling earlier but not required anymore and pollutes the logs.
## Automation
/ok-to-test tags="@tag.Templates"
### 🔍 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/10088622540>
> Commit: acfae67521a442d3d786099c0b46fc04f8ffda33
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10088622540&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Templates`
> Spec:
> <hr>Thu, 25 Jul 2024 05:37:39 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Removed stopwatch logging for performance monitoring during the import
process to simplify code.
The overall functionality of importing resources remains unchanged.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Please refer this document for more details -
https://www.notion.so/appsmith/Transaction-Handling-in-PG-468cf8d4255749c3915699e59e91dc2f
## Automation
/ok-to-test tags="@tag.Git, @tag.ImportExport, @tag.Templates"
### 🔍 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/10053864056>
> Commit: 0b83e8903ccc241c851765b9e2d082e4e9798957
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10053864056&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git, @tag.ImportExport, @tag.Templates`
> Spec:
> <hr>Tue, 23 Jul 2024 06:45:31 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced import functionality to support themes and better handle
applications.
- **Bug Fixes**
- Improved handling of application and theme imports in various
scenarios, fixing related issues.
- **Tests**
- Updated test cases to validate the new and improved import
functionality for themes and applications.
These changes improve the robustness and flexibility of application and
theme management during imports.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> Add infrastructure for Authentication failure to retry and redirect.
> An additional change has been made to make the Sentry's doLog() method
public for others to use it for logging additional errors to Sentry.
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Sanity,@tag.Authentication"
### 🔍 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/9955550436>
> Commit: 4204a44a95d2946985795d4cd76bde812991f57e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9955550436&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity,@tag.Authentication`
> Spec:
> <hr>Tue, 16 Jul 2024 11:19:25 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced authentication failure handling with improved retry and
redirection logic.
- Simplified and streamlined exception logging using a new SentryLogger.
- **Improvements**
- More efficient and consistent handling of authentication failures.
- **Bug Fixes**
- Improved exception handling to ensure standardized error responses.
- **Chores**
- Cleaned up unused imports in the GlobalExceptionHandler to improve
code maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
## Description
PR to add permissions via repo method arguments for
CustomThemeRepository. This is required because on pg branch we are
looking for the AclPermission argument and are attaching the user
context in the repository method, which then is used for evaluating if
the user has the required permissions. This is again because the JDBC
driver is non-reactive in nature and if we add the blocking statements
in reactive chani user context gets lost.
## Automation
/ok-to-test tags="@tag.Git, @tag.Theme"
### 🔍 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/9869488827>
> Commit: 3c0b5f97bed6dbe9f34d2aabdd11cd0dcb55f39c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9869488827&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git, @tag.Theme`
> Spec:
> <hr>Wed, 10 Jul 2024 07:06:50 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
- **Enhancements**
- Improved permission handling for theme-related operations, enhancing
security and access control.
- **Tests**
- Updated test cases to incorporate additional permission parameters for
theme retrieval and archiving, ensuring better test coverage and
security validation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
In the last PR, refactored the customJsLib persist method code to
simulate the db ops by using the dryOps flag. But missed to use it in
the import flow. This PR fixes this.
## Automation
/ok-to-test tags="@tag.Templates, @tag.Git, @tag.ImportExport"
### 🔍 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/9868884786>
> Commit: 853614e378f156649e7b15fda7ec2cf75b03605b
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9868884786&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Templates, @tag.Git, @tag.ImportExport`
> Spec:
> <hr>Wed, 10 Jul 2024 06:11:24 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Enhanced type safety and clarity in handling database operations for
custom JavaScript libraries by updating parameter types across multiple
methods.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This field isn't used on client and so shouldn't be sent across.
EE PR at https://github.com/appsmithorg/appsmith-ee/pull/4466. All pass.
**/test all**
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9853291119>
> Commit: 22f738390a9e442c3e5d92f9007763d8c1e767b4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9853291119&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 09 Jul 2024 09:02:56 UTC
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Resolved JSON formatting issues in several export fixture files.
- Removed unnecessary field values from action configurations to ensure
cleaner and more efficient data handling.
- **Refactor**
- Updated the `isNew` method's annotation in `BaseDomain.java` to
improve JSON serialization behavior.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
In the import service, we are trying to import datasources using the
combination of Flux and Flatmap to create the reactive chain. This
translates to creating multiple threads to accomplish the task in an
efficient manner. After we introduced database dry ops, where we are now
sharing the map of ops type to the object for which the operation needs
to be performed. This caused a `concurrentModificationException` as
datasourceService layer is referring to same object via different
threads.
## Automation
/ok-to-test tags="@tag.ImportExport, @tag.Sanity, @tag.Git"
### 🔍 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/9861701410>
> Commit: cf63fab15f7e3717b566306f8ea598662f18aea9
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9861701410&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.ImportExport, @tag.Sanity, @tag.Git`
> Spec:
> <hr>Tue, 09 Jul 2024 18:05:03 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 method isn't used anywhere, EE included, and we don't want it to be
used either. There's specialized methods for things this was used in the
past, `searchIgnoreCase` and `inIgnoresCase`, and should be preferred
instead of this. If a new need comes up that needs regex, we'll come up
with a specialized query method again.
**/test sanity**
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9858374518>
> Commit: 7b4eef3f04e81ec96c4f88b8c3e354dae95e92b3
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9858374518&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Tue, 09 Jul 2024 14:13:55 UTC
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Removed deprecated `regexMatchIgnoreCase` method for cleaner and more
maintainable code.
- Updated `equal` method to improve flexibility by accepting `int`
values without the `@NonNull` annotation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Please refer this document for more details -
https://www.notion.so/appsmith/Transaction-Handling-in-PG-468cf8d4255749c3915699e59e91dc2f
## Automation
/ok-to-test tags="@tag.Git, @tag.ImportExport, @tag.Templates"
### 🔍 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/9855863943>
> Commit: b9dfe1d758410e831f751f1fe1047373c1137513
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9855863943&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git, @tag.ImportExport, @tag.Templates`
> Spec:
> <hr>Tue, 09 Jul 2024 11:25:30 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced support for managing custom JavaScript libraries, including
dry run operations.
- **Enhancements**
- Enhanced dry operation handling with new methods and improved logic
for managing custom JavaScript libraries.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
EE counterpart PR: https://github.com/appsmithorg/appsmith-ee/pull/4623
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Git, @tag.ImportExport"
### 🔍 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/9855809156>
> Commit: 2c7be98dbec1f9792b6510403a3d7375ded5767e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9855809156&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git, @tag.ImportExport`
> Spec:
> <hr>Tue, 09 Jul 2024 11:21:14 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
- **Refactor**
- Improved code readability and maintainability by abstracting
validation logic into new methods for checking the validity of imported
actions and action collections.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
The null check for adding datasource information to an action was
invalid. And all the actions get the datasource from the existing
datasource object. Hence all the actions were failing with missing
workspaceId.
Fixes https://github.com/appsmithorg/appsmith/issues/34772
## Automation
/ok-to-test tags="@tag.Git, @tag.ImportExport, @tag.Templates"
### 🔍 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/9839296466>
> Commit: 8854a2701d4aebf7601efba7643acfe3d44d712d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9839296466&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git, @tag.ImportExport, @tag.Templates`
> <hr>Mon, 08 Jul 2024 12:31:17 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Simplified conditional checks in the backend to improve code
readability and maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Since the `@SpringBootTest` annotation already provides the necessary
Spring context setup. `@ExtendWith(SpringExtension.class)` annotation is
redundant and can be safely removed.
/test Sanity
### 🔍 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/9835972147>
> Commit: 23140db7d94ea7469ad0ae7ef7e34800dc71e992
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9835972147&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> <hr>Mon, 08 Jul 2024 08:36:19 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
## Description
More details here -
https://theappsmith.slack.com/archives/CTHN8GX5Y/p1720156198256419
## Automation
/ok-to-test tags="@tag.Git, @tag.Templates, @tag.ImportExport"
### 🔍 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/9809585760>
> Commit: 72dc3363fd7fa08ae4bef228eb13573d6f94ccac
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9809585760&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git, @tag.Templates, @tag.ImportExport`
> <hr>Fri, 05 Jul 2024 14:30:53 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Enhanced validation process for actions with the introduction of a
`Dry Operations` mode, allowing for validation without persistence.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Refactored the implementation of `isUsersEmpty` so that it works the
same on `release` and on `pg` branches.
**/test sanity**
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9797721649>
> Commit: f0ed5ee27979c14e363430d2af32bae9828f2e82
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9797721649&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Enhanced user filtering to improve the accuracy of user-related
queries. This update ensures more precise results by excluding
system-generated emails from user checks.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
PR to improve enum filtering to ensure better compatibility with
Hibernate queries even when using `@Enumerated(String.class)`.
Corresponding EE PR:
https://github.com/appsmithorg/appsmith-ee/pull/4576
## 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
- **Bug Fixes**
- Improved enum filtering to ensure better compatibility with Hibernate
queries even when using `@Enumerated(String.class)`.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
/test sanity
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Simplified user data structure by removing unused `groupIds` and
`permissions` fields, improving efficiency in user-group relationships
and permissions handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9759459682>
> Commit: 9d42126d64430423543800fd4b9837f0c92aa614
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9759459682&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
<!-- end of auto-generated comment: Cypress test results -->
## Description
> [!TIP]
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content, marketing, and DevRel team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Git"
### 🔍 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/9789434801>
> Commit: 52a84a3947f56dad33eb160cc238403a888f09a7
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9789434801&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved the validation and assignment logic for data sources during
action import to ensure proper association and prevent errors when data
source or plugin IDs are missing.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->