Commit Graph

977 Commits

Author SHA1 Message Date
Shrikant Sharat Kandula
e9610b5ace
chore: Remove unused query variable
This snippet uses `archivedAt`, another deprecated field which needed to go away.
2024-01-24 16:47:24 +05:30
Abhijeet
80d5c2baf6
chore: Add workspaceId to the redirect url for auth datasource flow (#30463)
## Description
> Add a TL;DR when description is extra long (helps content team)
>
> Please include a summary of the changes and which issue has been
fixed. Please also include relevant motivation
> and context. List any dependencies that are required for this change
>
> Links to Notion, Figma or any other documents that might be relevant
to the PR
>
>
#### PR fixes following issue(s)
Fixes # (issue number)
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Integrated workspace identification into authentication services for
enhanced multi-workspace support.

- **Refactor**
- Improved internal handling of workspace-specific data during
authentication processes.

- **Tests**
- Updated tests to include workspace identification checks in
authentication scenarios.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2024-01-24 15:16:12 +05:30
Anagh Hegde
ab64bf29af
fix: duplicate name issue in partial import for queries and jsobjects (#30457)
## Description
When the queries and js objects are imported in the same page, the names
were not updated properly which ended up with duplicate names for
queries and jsobjects. This PR adds a fix which will append the number
in the increasing order to avoid the duplicate entries for the above
scenario.
Example - jsObject will be jsObject1

#### PR fixes following issue(s)
Fixes #30291 

#### Type of change
- Bug fix (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?
- [ ] Manual
- [ ] JUnit

#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Enhanced import functionality to support partial imports, allowing
users to selectively import components into their applications.

- **Refactoring**
- Codebase refactored to improve the clarity and efficiency of the
import services.

- **Tests**
- Expanded test coverage to include new cases for partial imports and
ensure the integrity of import operations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-24 13:36:19 +05:30
Shrikant Sharat Kandula
a0563b71e1
chore: Remove deprecated Action and Page classes (#30524)
These classes are deprecated and have been replaced with `NewAction` and
`NewPage`.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Refactor**
  - Updated permissions handling to support new page and action classes.
- Replaced deprecated page and action classes with their new
counterparts in various service implementations and policy generation
methods.
  
- **Tests**
- Adjusted test cases to align with the updated permissions and entity
references.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-24 05:54:05 +05:30
Abhijeet
2aa263a145
feat: Handle invalid workspaceId for fetching applications on homepage (#30374)
## Description
PR to throw no resource found exception if the invalid workspace id is
provided for fetching the applications for homepage.

#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/30330

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
>
#### How Has This Been Tested?
- [x] Manual
- [x] JUnit
- [ ] Jest
- [ ] Cypress

## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Enhanced application management by integrating workspace-related
permissions.
  
- **Bug Fixes**
- Resolved an issue where a null `currentUser` could disrupt application
tests.
  
- **Tests**
  - Added a test to ensure proper handling of invalid workspace IDs.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-23 18:01:33 +05:30
Shrikant Sharat Kandula
92993cccef
chore: Remove unused services (#30292)
I've been doing this in pieces bit by bit, not to rock the boat too much
too fast, but it's taking too long, and too much effort. Instead opting
for a rip-the-bandaid style, hopefully without the pain.
2024-01-23 05:43:16 +05:30
Pawan Kumar
c035806edf
feat: add icon style in application settings (#30418)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced a new setting for users to select icon styles within the
application theme.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-19 14:51:12 +03:00
Nidhi
e4456aabac
chore: use single page id in repo layer (#30446)
avoid in clause

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Enhanced action collection retrieval to support view mode and user
permissions.
- Improved methods for fetching unpublished actions by page ID,
considering user access rights.

- **Refactor**
  - Streamlined action collection and action retrieval processes.
  - Removed unnecessary imports to optimize codebase.

- **Bug Fixes**
- Fixed issues with fetching action collections in different view modes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-19 15:57:59 +05:30
Manish Kumar
20d6dfb591
chore: Import export application refactor (#29691)
## Description
First draft for Import export flow refactor
Steps for refactoring the application import flow to context agnostic
flow
         /**
         * Step 1: Schema Migration
         * Step 2: Validation of context Json
         * Step 3: create placeholder objects for internal stuffs
         * Step 4: set schema version and other stuffs common misc
         * Step 5: get workspace and user with right set of permission
         * Step 6: get application specific import entities
* Step 7: get allImportEntities like plugins, datasource, action and
other stuffs
* Step 8: get update page and new action with already created
references.
         */
 

fixes: https://github.com/appsmithorg/appsmith/issues/29748, #29819 ,
#29820, #29821, #29822

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced comprehensive application import capabilities, allowing
users to import and manage application artifacts easily.
  
- **Improvements**
- Enhanced artifact management with new functionalities for syncing
client and schema versions, updating artifacts, and permission handling.
  
- **Documentation**
- Added new interfaces and classes to support the import process,
ensuring clarity in the import service's operations.

- **Refactor**
- Streamlined import services by renaming and updating method signatures
for consistency and improved artifact-centric logic.
  
- **Bug Fixes**
- Addressed issues in the import logic to cater to different artifact
types, ensuring a smoother import experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-18 18:46:40 +07:00
Anagh Hegde
186d9934e8
fix: Queries do not get exported in a git connected app, by using partial export. (#30368)
## Description
The issue happens on a feature branch for a git connected application.
Works fine on master branch.
The reason is how the ids are handled for a git connected application.
We use the defaultResource and map the actual id with defaultResourceId
when sending the data to client. So for a git connected app the backend
code was using the mongo _id to filter the selected action but the
client sent the defaultResourceId in the request payload. Hence even
though the mongo query returned the correct result the filter on the
list was returning the empty list.

Used the default resource id for filtering

#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/29917

#### Type of change
- Bug fix (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?
- [ ] Manual
- [ ] JUnit

#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Enhanced export functionality in git-connected applications to allow
filtering by branch name.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-17 21:09:44 +05:30
Nirmal Sarswat
811a342267
feat: Appsmith AI as datasource plugin (#29794)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced Appsmith AI capabilities for enhanced data query
functionalities.
- Added a new "Appsmith AI Query" creation operation with a dedicated
icon and description.
  - Implemented a new component for AI plugin datasource management.
- Launched default configurations for the Appsmith AI feature
integration.

- **Enhancements**
- Updated the query editor to conditionally render datasource selectors
based on plugin type.

- **Bug Fixes**
- Removed the redundant `NO_DATASOURCE_FOR_QUERY` constant to streamline
the user interface.

- **Documentation**
- Added detailed constants and service implementations for Appsmith AI
plugin development.

- **Refactor**
- Improved code structure to accommodate AI features and data source
checks across components.

- **Style**
- Integrated new styles for AI-related components and controls within
the application.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: arunvjn <arunvjn10@gmail.com>
Co-authored-by: Diljit <diljit@appsmith.com>
2024-01-16 20:19:08 +05:30
Nidhi
4d9264444e
fix: Split changes to allow access to all entities when refactoring something (#30344) 2024-01-16 18:19:58 +05:30
Abhijeet
efc303e760
chore: Update the build process to refer the Appsmith version from the info.json in all build artifacts (#29903)
Fixes #29623

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2024-01-12 19:44:58 +05:30
Nilesh Sarupriya
7fcbb44d7d
chore: refactor executeActions and create plugin trigger which supports queries w/ and w/o datasources (#30001)
## Description
> Refactor code changes.
> 1. refactor `executeActions` so that Appsmith headers can be
transiently added to actionConfiguration, which is used as a parameter
in `executeParameterizedWithMetrics`. This would render the Appsmith
headers usable in the PluginExecutor.
> 2. Introduce a new plugin API `POST /plugins/<plugin_id>/trigger` to
replace the `POST /datasource/<datasource_id>/trigger`. This is done to
decouple the trigger API from `datasource_id` which can then be used for
fetching the dynamic data for queries (w/ or w/o datasources).

#### PR fixes following issue(s)
Fixes [[Task]: Create basic workflow plugin
structure](https://github.com/appsmithorg/appsmith/issues/30120)
Fixes [[Task]: Trigger API to populate workflow names
dynamically.](https://github.com/appsmithorg/appsmith/issues/30134)

#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
>
#### How Has This Been Tested?
- [x] JUnit - Existing test cases should pass.

## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

## Summary by CodeRabbit

- **New Features**
- Introduced a new `INTERNAL` plugin type for enhanced integration
capabilities.
- Added trigger functionality for plugins, enabling dynamic data
fetching for query forms.

- **Enhancements**
- Improved the plugin execution flow with additional parameters to
better handle action and datasource triggers.

- **Bug Fixes**
- Standardized request header naming across the application for
consistency and to prevent potential conflicts.

- **Documentation**
- Added new error types and codes for better error handling and user
feedback.

- **Refactor**
- Updated method signatures to include HTTP headers for more robust
action execution.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
2024-01-12 19:05:41 +05:30
Sumit Kumar
2c00b1b104
chore: consolidated API: add NewRelic OTLP trace (#30241) 2024-01-11 18:23:27 +05:30
Trisha Anand
d60b0b99dc
fix: Don't allow createApplication with any id set (#30167)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Bug Fixes**
- Ensured creating an application within a workspace does not allow
specifying an application ID, preventing potential conflicts.
- Added test coverage for application creation to validate the new
behavior.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-11 12:37:17 +05:30
Nayan
4ac06937f9
fix: Created at field in action is set again during import (#30177)
## Description
Skips `createdAt` field of unpublished action from being reset when
application is imported.

#### PR fixes following issue(s)
Fixes #30178
2024-01-11 10:52:55 +06:00
Nidhi
861c6e0fa5
chore: Added changes for splitting git related files for mi (#30202) 2024-01-10 17:57:54 +05:30
Sumit Kumar
c68b1cb27e
fix: consolidated API: fix Mockito error (#30182) 2024-01-10 15:44:15 +05:30
Shrikant Sharat Kandula
4b5292a20f
chore: Remove deleted field on domain classes (#29900)
Use `deletedAt` only hereon.

We're not changing the `notDeleted()` query function, we still check for
boolean deleted there, for two reasons.

1. There may be objects that have `deleted: true`, but no `deletedAt`.
Safer to just include that in the query, than to migrate now.
2. A lot of indexes are built taking both these fields into
consideration. We don't know how the query without the boolean field
would perform with such indexes. Recreating indexes now, is also a
time-consuming migration.

Depends on #29924.
2024-01-09 12:36:38 +05:30
Nayan
88cc05ac93
chore: Check new git permissions for respective git operations (#29981)
## Description
This PR uses the new Git permissions for Connect to Git, disconnect from
Git, Protect branch and manage auto commit settings.

#### PR fixes following issue(s)
Fixes #29963

#### Media
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
#### How Has This Been Tested?
- [x] Manual
- [x] JUnit

#### Test Plan
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Expanded Git-related permissions, including the ability to connect to
Git, manage protected branches, default branch, and auto-commit
settings.

- **Improvements**
- Enhanced Git permission checks for more granular access control within
the app.

- **Refactor**
- Updated components to utilize new Git permission hooks for better
permission management.
- Refined Git service logic to accommodate additional permission
parameter.

- **Tests**
- Adjusted test cases to align with the updated permission handling at
the application level.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: brayn003 <rudra@appsmith.com>
2024-01-05 10:27:56 +05:30
Nayan
bc6ad40482
chore: Push after auto commit (#29932)
## Description
This PR pushes the commit added by the auto commit. 

#### PR fixes following issue(s)
Fixes #29810
2024-01-04 11:00:10 +06:00
Nayan
e3e7623cae
chore: Fixed flaky test in partial export service (#30000)
## Description
Fixes flaky tests in partial export service.

#### PR fixes following issue(s)
Fixes # (issue number)
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Tests**
- Enhanced existing tests for partial export functionality to ensure
robustness and reliability.
	- Updated test assertions for better clarity and maintainability.


<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-03 19:23:56 +05:30
Nayan
16ddb50ff5
chore: Send analytics event after branch protection (#29944)
## Description
Sends analytics events when branches are protected or un-protected.

#### PR fixes following issue(s)
Fixes #29410
2024-01-03 06:42:24 +06:00
Sumit Kumar
736c619c3d
fix: ublock TBP workflow on EE (#29972) 2024-01-02 12:35:55 +05:30
Sumit Kumar
c214222cee
chore: First page load time optimization: Introduce server side changes for consolidated API (#29875) 2023-12-29 14:54:38 +05:30
Nidhi
576a7212bb
chore: More split changes (#29936) 2023-12-29 08:00:46 +05:30
Nayan
3a224fe812
chore: Add permission for Git operations (#29575)
## Description
Adds a new set of permissions for the git operations.

#### PR fixes following issue(s)
Fixes #29574
2023-12-28 13:17:24 +06:00
Shrikant Sharat Kandula
b6e7e8e62f
chore: Remove deprecated unused fields (#29831)
These fields were used in migrations, that re now deleted. So these
fields became unused now.
2023-12-27 14:34:41 +05:30
Nayan
295975c47c
fix: Failing tests in import application service (#29846)
## Description
This PR fixes the failing tests in ImportApplicationServiceTests when
the tests are run separately.

#### PR fixes following issue(s)
Fixes #29845

#### Media
#### Type of change
- Bug fix (non-breaking change which fixes an issue)

## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [x] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Refactor**
  - Adjusted the test setup for improved reliability.
- Enhanced a specific test case to cover invalid plugin references for
data sources.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-25 20:47:45 +05:30
Nayan
d493fec125
fix: Clone git repo when file system is flushed or deleted (#29809)
## Description
This PR adds the logic back to clone an application when Git repo is
deleted from local file system.

#### PR fixes following issue(s)
Fixes #29047

#### Media
#### Type of change
- Bug fix (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?
- [x] Manual
- [x] JUnit
- [ ] Jest
- [ ] Cypress

#### Test Plan
#### Issues raised during DP testing

## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Improved handling for cases where a linked Git repository is not
found, ensuring smoother application cloning and branch management.

- **Tests**
- Added tests to verify new behavior when a local Git repository is
missing and needs to be cloned from a remote source.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-25 10:53:27 +05:30
Nidhi
74559b5d36
chore: Split changes for on page load, refactor, publish, etc (#29795) 2023-12-22 10:35:14 +05:30
Anagh Hegde
9ee8e28c68
feat: Add option to store the theme settings for application (#29625)
## Description
Currently, a theme is a separate entity that is tied to an application.
With the new WDS and the new theming engine, we don't need the theme to
be a separate entity. It can be just a few additional properties of an
application ( just like how navigation settings work today.
More can be found here -
https://www.notion.so/appsmith/New-Theme-Settings-c28bde5baae6424c8742384565d37089

#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/29624

#### Media

#### Type of change
- New feature (non-breaking change which adds functionality)

## Testing

#### How Has This Been Tested?
- [ ] Manual
- [ ] JUnit

#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Introduced theme customization settings, allowing users to personalize
the appearance of their applications with options for accent color,
border radius, sizing, and density.

- **Enhancements**
- Updated application update process to include theme settings as part
of the configuration.

- **Tests**
- Added tests to ensure theme settings are correctly applied and
persisted across application versions.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-21 20:16:16 +05:30
Anagh Hegde
71cd59fc4c
test: Add test for partial export (#29728)
## Description
Tests for partial export flow

#### PR fixes following issue(s)



<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Tests**
- Introduced a new test suite for partial export functionality, ensuring
resources like datasources and actions can be exported correctly under
various configurations.


<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-21 18:44:35 +05:30
Anagh Hegde
681ad2e6d1
chore: template upload process revamping (#29626)
## Description
Move from all the manual process of exporting app and filling so many
details, make template upload process a 1 click action.
Current, the step is manual. One has to export the app manually, and
then upload to s3, get the APP URL and page name correct and there is a
lot of room for error. All of this can be automated.

#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/cloud-services/issues/1454


#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
#### How Has This Been Tested?
- [ ] Manual


#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced a new feature for publishing templates under a "use-case"
category.
- Implemented a simplified endpoint for publishing community templates.

- **Bug Fixes**
- Streamlined the template publishing process to enhance user
experience.

- **Refactor**
- Consolidated template-related data transfer objects to a more generic
naming convention.
- Refactored the publishing methods to align with the new template
categorization.

- **Documentation**
- Updated API documentation to reflect new endpoints and usage patterns.

- **Tests**
- Modified existing tests to accommodate changes in template DTO naming
and publishing logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-15 17:31:25 +05:30
Nayan
d83f4e2fb1
chore: Added new analytics parameter for git auto commit (#29538)
## Description
A refactor in the analytics events for Git. Also adds
isSystemGenerated=false for regular commits.

#### PR fixes following issue(s)
Fixes #26769

#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Enhanced Git integration with the inclusion of repository URLs in
auto-commit events.
- Improved analytics tracking by utilizing repository URLs for version
information.

- **Refactor**
- Standardized event naming by replacing string literals with enum
constants in Git-related operations.

- **Bug Fixes**
- Fixed an issue in the analytics service by correcting the method
signature for user ID hashing.

- **Documentation**
- Updated internal documentation to reflect changes in analytics and Git
service logic.

- **Tests**
- Expanded test coverage to account for new repository URL handling in
auto-commit events.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-13 23:17:45 +05:30
Nayan
6e8bfc63fb
feat: Added auto commit feature (#29439)
## Description
This PR adds the auto commit feature for git connected applications.

#### PR fixes following issue(s)
Fixes #26769
2023-12-12 12:13:56 +06:00
Nilesh Sarupriya
165856e885
chore: remove FF4J (#28653)
## Description
> Remove FF4J 

#### PR fixes following issue(s)
Fixes #24872 
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)

## Testing
>
#### How Has This Been Tested?
- [ ] Manual
- [x] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Refactor**
- Simplified the feature flag checking process, removing dependencies on
external libraries.
- Improved error handling in feature flag services for more robust
operation.

- **Bug Fixes**
- Adjusted feature flag refresh logic to ensure accurate status
representation.

- **Tests**
- Updated test cases to align with the new feature flag checking logic
and error handling improvements.

- **Documentation**
- Removed outdated comments and documentation related to the old feature
flag system.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
Co-authored-by: Abhijeet <abhi.nagarnaik@gmail.com>
2023-12-12 10:44:58 +05:30
Rahul Barwal
2e8e307a95
fix: Community templates UX issue (#29164)
## Description
This pull request includes several fixes and improvements to the
codebase. Here is a summary of the changes:

- Improved searchability and tag visibility for the application.

- Disabled the public and forkable switches in ApplicationSettings.

- Refactored the CommunityTemplateForm to use the defaultPageId.

- Added a new event, COMMUNITY_TEMPLATE_PUBLISHED.

#### PR fixes following issue(s)
Fixes #29165

#### Type of change
- Bug fix (non-breaking change which fixes an issue)
## Testing
>
#### How Has This Been Tested?
- [x] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced the ability to publish community templates with enhanced
settings for visibility and collaboration.
- Added new analytics event tracking for community template publication.

- **Enhancements**
- Improved the search functionality in the template selection with
responsive tag count and search feature.
- Enhanced application settings with the ability to disable switches for
public and forkable options.

- **Documentation**
  - Updated instructions for triaging new changes and features.

- **Refactor**
- Simplified logic for determining default page ID in the template
publishing form.

- **Tests**
  - Extended unit tests to cover new session user service functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-12 09:42:36 +05:30
Manish Kumar
40e7e8b535
fix: moustache binding (#29450) 2023-12-08 15:38:53 +05:30
Arpit Mohan
5c5a99a7dd
ci: Adding a listener for failed Junit tests using TestWatcher (#29451)
Also modifying server-build to store the failed builds as an artifact that can be used later



<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Implemented a new step in the build process to upload reports for
failed tests, enhancing visibility into test failures during continuous
integration.

- **Bug Fixes**
- Adjusted test assertions in `AnalyticsServiceCEImplTest` to correctly
reflect the expected behavior.
- Modified the assertion logic in `ApplicationServiceCETest` to ensure
the test aligns with the intended application validation process.

- **Documentation**
  - No user-facing documentation changes in this release.

- **Refactor**
- Introduced `TestResultLoggerExtension` to improve test failure logging
and reporting.

- **Tests**
- Enabled auto-detection of JUnit Jupiter extensions to streamline the
testing framework setup.

- **Chores**
  - No significant chores affecting end-users in this release.

- **Revert**
  - No reverts in this release.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-08 11:55:38 +05:30
Abhijeet
441795c16e
feat: API for search entities (#29203)
### Description
As per updated homepage experience search functionality will be handled
by server and will be applicable for all the entities present on
homepage.

Request format:
```
curl --location 'https://dev.appsmith.com/api/v1/search-entities?keyword=test&page=0&size=10&entities={comma separated entity names e.g.Application,Workspace}' \
--header 'Cookie: SESSION={logged_in_user's_session_cookie}'
```

Note: We will be running a couple of experiment to optimise the search,
with this PR we have implemented basic search with contains
functionality and index is applied on the searchable fields. Mongo does
offer [text-search
functionality](https://www.mongodb.com/docs/manual/text-search/) based
on tokenisation which may tackle the incorrect spellings scenario. But
as the searches are for names we have avoided that route for now as
language tokenisation was not providing the expected results which basic
search was able to.

Design handoff:

https://app.zeplin.io/project/653f7de4c1d563203f817bce/screen/653f7eea5d02e7233ede382c
<img width="1095" alt="Screenshot 2023-12-07 at 3 09 02 AM"
src="https://github.com/appsmithorg/appsmith/assets/41686026/c26225ef-9d78-4969-b445-a78bc58c18a0">

#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/28793


#### Type of change
- New feature (non-breaking change which adds functionality)

## Testing
>
#### How Has This Been Tested?
- [x] Manual
- [x] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced a new search functionality that allows users to find and
sort applications and workspaces.
- Added the ability to view recently used applications in a sorted
order.

- **Improvements**
- Enhanced the application sorting mechanism to prioritize recently used
items.
- Streamlined the process of checking if an application is connected to
Git.

- **Bug Fixes**
- Fixed an issue where the list of applications was not updating
correctly for recently used items.

- **Deprecated Features**
  - Marked the `getAllApplicationsForHome` method as deprecated.

- **Tests**
- Added new test cases to ensure the reliability of the search and
sorting features.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-08 11:19:51 +05:30
Manish Kumar
73962885a5
fix: Revert "fix: added changes for mustache binding (#29264)" (#29444) 2023-12-07 19:54:48 +05:30
Anagh Hegde
e26f8dece2
fix: partial import resource deleted from original page if imported in same app on a different page (#29379) 2023-12-07 18:59:42 +05:30
Manish Kumar
d1eaeffe76
fix: added changes for mustache binding (#29264)
## Description
> Now moustache binding in Rest API and Graph QL are back.

- We can now add moustache binding the datasource in these plugins.
- Note that these are enabled only for Header section of the above
mentioned plugins

This is a temporary fix and we will move away from this once we have a
better solution implemented

Fixes: https://github.com/appsmithorg/appsmith/issues/25537

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Enhanced datasource management with asynchronous key extraction for
improved performance.
- Introduced new methods for retrieving binding tokens, aiding in better
datasource storage handling.

- **Refactor**
- Transitioned several methods to asynchronous processing to align with
reactive programming practices.

- **Tests**
- Added new test cases to ensure the correct behavior of actions with
various datasource types and moustache bindings.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-07 18:59:24 +05:30
Nayan
6dd187e14a
fix: JS library not found in view mode after importing from Git (#29297)
## Description
If an application has a custom js library set, it's not available in
view mode right after importing the application from git. User need to
add a commit to make it available in Git. This PR performs a publish
application operation right after git import so that any resource
available in edit mode is also available in view mode.

#### PR fixes following issue(s)
Fixes #29278

#### Media
#### Type of change
- Bug fix (non-breaking change which fixes an issue)

## Testing
#### How Has This Been Tested?
- [ ] Manual
- [ ] JUnit

#### Test Plan
#### Issues raised during DP testing
## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Applications can now be automatically published after being imported
from Git.

- **Tests**
- Updated tests to include new assertions for verifying the behavior of
unpublished custom JavaScript libraries.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-07 16:58:09 +05:30
Trisha Anand
0c6c8c43c2
chore: refactor js object crud for modules/workflows (#29110)
> Pull Request Template
>
> Use this template to quickly create a well written pull request.
Delete all quotes before creating the pull request.
>
## Description
> Add a TL;DR when description is extra long (helps content team)
>
> Please include a summary of the changes and which issue has been
fixed. Please also include relevant motivation
> and context. List any dependencies that are required for this change
>
> Links to Notion, Figma or any other documents that might be relevant
to the PR
>
>
#### PR fixes following issue(s)
Fixes # (issue number)
> if no issue exists, please create an issue and ask the maintainers
about this first
>
>
#### Media
> A video or a GIF is preferred. when using Loom, don’t embed because it
looks like it’s a GIF. instead, just link to the video
>
>
#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- Chore (housekeeping or task changes that don't impact user perception)
- This change requires a documentation update
>
>
>
## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Enhanced search capabilities with a new search bar for improved user
experience.
- Introduction of a context-specific feature to streamline action
collections based on user context.
- Asynchronous processing enhancements for action and page publishing
workflows.

- **Improvements**
  - Streamlined creation and validation process for action collections.
- Refined action domain generation and default resource updates for
actions.
- Optimized validation logic for action creation, removing unnecessary
checks.

- **Bug Fixes**
  - Fixed issues with action collection creation and validation logic.
- Addressed validation logic in action collections to ensure proper
error handling.

- **Refactor**
  - Codebase refactoring for better maintainability and performance.
- Refactored action creation to delegate responsibilities, improving
code clarity.

- **Documentation**
  - Updated documentation to reflect new features and improvements.

- **Tests**
- Extended test suites to cover new functionality and changes in the
application logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-07 12:05:41 +05:30
Nidhi
1257476751
chore: Split related to custom js libs for module instances (#29372) 2023-12-06 18:23:05 +05:30
Abhijeet
921a4830ba
feat: API to get applications and workspaces for homepage in recently used order (#29004)
## Description
As per updated homepage experience we are segregating the workspaces,
applications and members API. This PR adds the GET applications for the
user with at least read permission. As this will be consumed on the
homepage API should also filter out the non-default branched
applications if connected to git.

Request format: 
```
curl --location 'https://dev.appsmith.com/api/v1/workspaces/home' \
--header 'Cookie: <logged_in_user_cookie>'

curl --location 'https://dev.appsmith.com/api/v1/applications/home?workspaceId=<workspace_id>' \
--header 'Cookie: <logged_in_user_cookie>'
```

## Summary by CodeRabbit

- **New Features**
- Introduced a new method for fetching applications by workspace ID in a
recently used order.
- Added functionality to retrieve user workspaces based on recent usage.

- **Enhancements**
  - Improved application sorting to prioritize recently used items.
- Enhanced user data model to include recently used entities for better
user experience.

- **Bug Fixes**
- Fixed issues with updating the last used applications and workspaces.

- **Documentation**
  - Marked older methods as deprecated in favor of new implementations.

- **Refactor**
- Refactored services to use `WorkspaceService` instead of
`WorkspaceRepository`.
- Updated constructors to include new service dependencies for
`UserDataService`.

- **Tests**
- Added new test cases to ensure correct behavior of recently used
entities sorting.
- Modified existing tests to accommodate changes in user data handling.

- **Deprecations**
- Deprecated older methods and fields related to recently used
workspaces and applications.

- **Chores**
  - Performed code cleanup and removed unused imports.

Designs:
https://app.zeplin.io/project/653f7de4c1d563203f817bce/screen/653f7eeda2060c2345cf431f

#### PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/28791,
https://github.com/appsmithorg/appsmith/issues/28792

#### Type of change
- New feature (non-breaking change which adds functionality)

## Testing
>
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [x] Manual
- [x] JUnit
- [ ] Jest
- [ ] Cypress
>
>
#### Test Plan
> Add Testsmith test cases links that relate to this PR
>
>
#### Issues raised during DP testing
> Link issues raised during DP testing for better visiblity and tracking
(copy link from comments dropped on this PR)
>
>
>
## Checklist:
#### Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag


#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Search functionality now available with a new search bar at the top of
the home page.
  - Users can now sort applications and workspaces by recent usage.
- Added a new method to fetch applications by workspace ID in recently
used order.

- **Enhancements**
- Improved user experience by sorting applications and workspaces based
on recent interactions.
- Streamlined workspace retrieval to prioritize recently used
workspaces.

- **Bug Fixes**
- Addressed issues with application sorting to reflect recent usage
accurately.

- **Deprecated**
  - Deprecated methods related to old application sorting logic.

- **Documentation**
  - Updated method comments to reflect new sorting logic.

- **Refactor**
- Refactored application and workspace services to use new recently used
sorting logic.

- **Tests**
- Added new tests to ensure correct sorting of applications and
workspaces.
- Enhanced existing tests to accommodate new recently used entities
logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-06 15:54:32 +05:30
Shrikant Sharat Kandula
5da1129640
chore: Delete old repos (#29296) 2023-12-05 14:07:50 +05:30