Commit Graph

3539 Commits

Author SHA1 Message Date
Nilansh Bansal
a5edfb025a
fix: authenticationType field saved to database (#33196)
## Description
With the introduction of FromRequest for the create datasource API in
[this](https://github.com/appsmithorg/appsmith/pull/33039) PR, we have
restricted the fields that will be accepted from the client in the
request body. Due to this the `authenticationType` field was not getting
accepted from the client in the create datasource API, which lead to the
failure of airtable queries.

This PR allows the acceptance of `authenticationType` field from the
client.
Discussions
[here](https://theappsmith.slack.com/archives/CTHN8GX5Y/p1714974437746959).

Fixes #33184   

## Automation

/ok-to-test tags="@tag.Datasource"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!CAUTION]
> 🔴 🔴 🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8966382606>
> Commit: a292aa075d3598389410b5c201f58c489fd2dfc2
> Cypress dashboard: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8966382606&attempt=3&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank"> Click here!</a>
> The following are new failures, please fix them before merging the PR:
<ol>
> <li>cypress/e2e/Regression/ServerSide/QueryPane/DSDocs_Spec.ts </ol>
> To know the list of identified flaky tests - <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">Refer here</a>

<!-- end of auto-generated comment: Cypress test results  -->






## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
2024-05-06 16:30:29 +05:30
Manish Kumar
2d1e292a2e
chore: added cache miss solution (#33193) 2024-05-06 16:07:14 +05:30
Shrikant Sharat Kandula
2f37edea8e
chore: Remove more unused methods in BaseService & ApplicationServiceCE (#33172)
/ok-to-test tags="@tag.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/8944427065>
> Commit: 3e939b8cc507b8ada7cbeefb94b1750a90b615f7
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8944427065&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->
2024-05-04 12:50:50 +05:30
Shrikant Sharat Kandula
1453b8e4d3
chore: Don't mask 415 with 500 (#33173)
/ok-to-test tags="@tag.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/8947042815>
> Commit: d55ecae565e42f4d05a26eb6c642a4b3e34df09e
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8947042815&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->
2024-05-04 12:50:38 +05:30
Shrikant Sharat Kandula
f3f39c3c82
chore: Fix status code inconsistency on CSRF failure 2024-05-04 00:20:28 +05:30
Abhijeet
bea3cc1598
chore: Move to interface based projection as for columns with jsonb type record based projections does not work in PG (#32909)
## Description
- Move away from record based projections to interface classes as record
based projections does not work for jsonb column in PG branch.
- Remove ID generation within testclass and let DB handle the generation
to fix failing tests on the PG branch.

## Automation

/ok-to-test tags="@tag.Sanity, @tag.GenerateCRUD, "@tag.Fork""

### 🔍 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/8919248892>
> Commit: f43425a9c1e29a35dcaba3abf47f8e63cf607def
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8919248892&attempt=1"
target="_blank">Click here!</a>

<!-- 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**
- Updated the method for generating workspace names to enhance
uniqueness and reliability.
- **Bug Fixes**
- Improved the `updateCurrentUser` method to update the current user
based on their ID for accuracy.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-05-03 16:56:02 +05:30
Shrikant Sharat Kandula
894be58813
test: Refactor tests ahead of upgrading Spring (#33135)
Only refactors, only in tests, needed to get these tests to work/pass
with the upgraded Spring coming up separately.

/ok-to-test tags="@tag.Sanity"
2024-05-03 16:54:03 +05:30
Shrikant Sharat Kandula
feb9eb7d41
chore: Remove API to get all objects (#33006)
The `.get(params)` method in `BaseService` has a dangerous default
implementation. It loads _all_ objects from the DB and returns them.
Although it's not used by any services in that form, it's nevertheless a
liability, and not an asset.

For example, the User service explicitly overrides it and always
responds with an error.

This PR removes this method, and we add the signature to just those
services that leverage it.

EE at https://github.com/appsmithorg/appsmith-ee/pull/3698. Tests and
Cypress pass.

/ok-to-test tags="@tag.Sanity"
2024-05-03 13:45:10 +05:30
Nidhi
8c6c5d8f72
fix: Fixed path creation during commit (#33153) 2024-05-03 12:10:59 +05:30
Shrikant Sharat Kandula
f0d837c599
chore: Remove unused User.currentWorkspaceId (#33149)
/ok-to-test tags="@tag.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/8934500674>
> Commit: 849a786269d97024b2b22a158845de7e48a08900
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8934500674&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->
2024-05-03 11:54:39 +05:30
Shrikant Sharat Kandula
0dda55780a
chore: Respond with 403 for missing CSRF header (#33145)
/ok-to-test tags="@tag.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/8933699110>
> Commit: 4cdfd6a4c04e69fb16d841359df7cbd727f8254b
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8933699110&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->
2024-05-03 09:34:25 +05:30
Nidhi
718490f5bc
fix: Make file locking reactive compatible (#33109) 2024-05-02 22:24:49 +05:30
Shrikant Sharat Kandula
1a4a08e673
chore: Fix warnings in ConsolidatedAPIServiceImpl (#33114)
This is an effort to reduce warnings from `javac`, towards adding a
linter to the backend.

I recently had to troubleshoot some code in this class and the array
based zipping of 10+ Monos was very hard to parse and debug. This PR
simplifies that implementation as well as fixes all/most warnings in
this class.

/ok-to-test tags="@tag.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/8918809242>
> Commit: f37ef41d41b9925de233f10ca300f89bc3ffe044
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8918809242&attempt=2"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->
2024-05-02 16:16:51 +05:30
Shrikant Sharat Kandula
258e92e368
chore: Use FromRequest for datasource APIs (#33039)
This PR removes use of `@JsonProperty` in Datasource entity so that it
encrypted fields can be stored to the database in Postgres version.

EE Unit and Cypress `All` pass.

/ok-to-test tags="@tag.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/8904366086>
> Commit: 1546722f4248b95f624960fe4d888d6082c60ce0
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8904366086&attempt=2"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->
2024-05-02 16:16:25 +05:30
Shrikant Sharat Kandula
3eb1bfb63c
chore: Add migration to cleanup of invalid plugins in workspaces (#33102)
The migration takes 3.5mins on production database.

Reason and details at [Slack
conversation](https://theappsmith.slack.com/archives/C02GAUE9P5H/p1714451552333709?thread_ts=1714425219.357599&cid=C02GAUE9P5H).

/ok-to-test tags="@tag.Sanity"
2024-05-02 13:10:16 +05:30
Shrikant Sharat Kandula
809710245d
chore: Add an internal request ID for logging (#33086)
/ok-to-test tags="@tag.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/8918415111>
> Commit: f902355ece5445d27fd8a65dcf4607afb4c5d656
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8918415111&attempt=2"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->
2024-05-02 13:00:23 +05:30
Nilansh Bansal
c0aaab89bf
chore: added function overloading to remove redundant db call (#33060)
## Description
This PR overloads the function `getTenantConfiguration()` to avoid
calling `getDefaultTenant()` multiple times and eventually reducing the
number of database calls.
Subsequent EE PR - https://github.com/appsmithorg/appsmith-ee/pull/4073

Fixes #https://github.com/appsmithorg/appsmith-ee/issues/4061 

## Automation

/ok-to-test tags="@tag.Settings,@tag.Perf,@tag.IDE"

### 🔍 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/8893900698>
> Commit: 446e4f7c38525568249496bd6bd1ba5d1a920486
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8893900698&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->




## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
2024-05-01 07:33:47 +05:30
Anagh Hegde
0d89168d00
fix: collection id not updated in import block API response (#32933)
## 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 https://github.com/appsmithorg/appsmith/issues/32903

## 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/8892306251>
> Commit: 6b2c1c8e637dc89eebf51d431f5e78f92ae9ac23
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8892306251&attempt=1"
target="_blank">Click here!</a>

<!-- 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**
- Enhanced functionality to set collection IDs during partial imports.
- **Tests**
- Improved testing for partial imports by adding new assertions to
verify action names.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Jacques Ikot <jacquesikot@gmail.com>
Co-authored-by: Rahul Barwal <rahul.barwal@appsmith.com>
2024-04-30 11:03:46 +01:00
Aman Agarwal
796a4c8660
fix: default port numbers for the datasources (#32901) 2024-04-30 13:15:11 +05:30
Nidhi
2bf091df94
fix: Remove atomic pushes temporarily (#33052) 2024-04-30 13:05:13 +05:30
Nidhi
ef89875ca2
fix: Empty plugin ids in workspaces are breaking application load (#33042) 2024-04-30 04:44:35 +05:30
sneha122
5f2a9ef387
fix: REST API multimedia file upload issue fixed (#32921)
## Description
If we use REST API action and file picker widget to upload any
multimedia files (image, audio, video, pdf, xlsx), The file upload would
be successful but file would get corrupted upon uploading. This was
happening because file picker widget encodes this file to base64 format,
and we were uploading this same base64 string using REST API url.
Instead we should have decoded this base64 and then uploaded the file to
retain the original contents of the file.

This PR fixes that issue by adding a new tab in body of the REST API
action called `binary`, once we select this tab, we get autogenerated
header for `Content-Type: application/octet-stream`, in this binary
input field we can then provide base64 encoded file contents, the server
then decodes the contents before triggering the respective REST API and
uploading the file.

### Steps to test the issue
1. Add a file picker widget on canvas
2. Select data format as `Base64`
3. Upload any of pdf, image, audio, video, xlsx in file picker
4. Create a REST API action using [Dropbox upload
API](https://www.dropbox.com/developers/documentation/http/documentation#files-upload)
5. Configure the API headers as mentioned in the documentation, also
configure file name in the header correctly
6. Go to body tab, select binary and file contents in input box using
binding like {{Filepicker1.files[0].data}}
7. Execute this API
8. Now go to your dropbox account and check the uploaded file, you
should be able to successfully preview it


Fixes #32378  
_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.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/8844375718>
> Commit: 3316290a4d7d77ae3f9d8969245c5f470ef1ab5c
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8844375718&attempt=1"
target="_blank">Click here!</a>

<!-- 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**
- Added support for binary file uploads in API requests, including
handling of base64-encoded files.
- Expanded content type options to include a new "BINARY" type for API
requests.

- **Tests**
- Implemented new tests to verify the functionality of binary file
uploads with dynamic data binding.

- **Bug Fixes**
- Ensured correct handling and auto-generation of headers for binary
file types and form urlencoded data formats.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2024-04-29 17:08:33 +05:30
Shrikant Sharat Kandula
b4bc7f00b7
chore: remove unused DatasourceDTO (#33020) 2024-04-29 15:11:26 +05:30
Shrikant Sharat Kandula
0d0341165e
chore: Use default repo methods when possible (#32997)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Introduced new functionalities to count and retrieve Git-connected
applications within a specific workspace.
  
- **Bug Fixes**
- Removed outdated method for counting applications by workspace ID to
enhance performance and accuracy.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-29 12:12:43 +05:30
Rishabh Rathod
45172ac8ae
fix: firestore pagination issue (#32912)
## Description

As per the documentation the where clause must always come before the
order by clause, and the startAfter clause must come after the order by
clause i.e the recommended order : `where clause --> order by --> start
after`. However, the way code was written it applies the where clause
after the startAfter i.e as per the code : `order by --> start after -->
where clause` .

In this PR, we change the logic to make sure we follow the order `where
clause -> order by and startAfter / endBefore` when generating query.

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

documentation link. -
https://firebase.google.com/docs/firestore/query-data/query-cursors

Changes were taken from the PR created by @sumitsum here
https://github.com/appsmithorg/appsmith-ee/pull/4001




## 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/8814737910>
> Commit: 4c7ed97cc1808a537d40682fc0e930cd0e30be70
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8814737910&attempt=1"
target="_blank">Click here!</a>

<!-- 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 the order of operations in Firestore queries to enhance query
performance and reliability.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-29 11:23:34 +05:30
subratadeypappu
1330485f4f
fix: NPE in analytics service (#33005)
## Description
This is to resolve the NPE introduced in this
[PR](https://github.com/appsmithorg/appsmith/pull/32552)


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

- **Refactor**
- Improved handling of null values in event tracking properties to
ensure more reliable analytics data.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-29 10:57:35 +05:30
subratadeypappu
cc306b0c84
chore: add code split for refactoring inputs (#32928) 2024-04-29 10:56:04 +05:30
Shrikant Sharat Kandula
e71876f3b6
chore: Add search method to Bridge API (#32999)
We're abstracting the search function here, as a search query, instead
of a generic regex query, so that is can be implemented with regex on
MongoDB, but with SQL's `LIKE` operator on Postgres.

/ok-to-test tags="@tag.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/8859444126>
> Commit: 60f0086858a8add161f483572d0cd0dbd41e9217
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8859444126&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->



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

## Summary by CodeRabbit

- **New Features**
- Introduced new methods for enhanced search capabilities, including
case-insensitive searches.
  - Improved entity field filtering using custom query methods.

- **Refactor**
- Updated entity field references in `Workspace` and `Application` for
consistency.
- Replaced traditional criteria with custom query classes to simplify
logic in filtering processes.

- **Deprecations**
- Deprecated older methods for case-insensitive regex matching in favor
of new search methods.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-28 17:31:42 +05:30
Shrikant Sharat Kandula
f8a3a54df9
chore: Use CS to get Appsmith server IP (#32998)
We're currently relying on ipify.org for this, and this PR will move to
using CS for this information. This is so that all external
communication from the core of the product's backend, is only to
cs.appsmith.com, which makes whitelisting easier for users.

Also removing the unused variables `APPSMITH_CLOUD_SERVICES_USERNAME`
and `APPSMITH_CLOUD_SERVICES_PASSWORD`.

⚠️ This will cause conflicts on sync.

/ok-to-test tags="@tag.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/8859016811>
> Commit: 46576ca46adcba288693c3d5aaa9cc547c1e8f57
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8859016811&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->



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

## Summary by CodeRabbit

- **Refactor**
- Removed username and password fields from cloud services configuration
to enhance security.
- Updated network utilities to initialize with new cloud services
configuration, improving integration and functionality.
  
- **Bug Fixes**
- Adjusted the method of fetching and handling IP address data to
improve reliability and accuracy of network services.

- **Chores**
- Updated application properties and deployment scripts to align with
the new configuration and address retrieval methods.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-28 17:31:13 +05:30
Shrikant Sharat Kandula
e4b6363712
chore: Remove BaseController on PluginControllerCE (#32996)
Remove the `BaseController`, not used anymore, and have the Plugin
controller only define the routes used by the client.

Unit tests and All tag Cypress passes on EE.

[Slack
conversation](https://theappsmith.slack.com/archives/C03RPDB936Z/p1714194492847219).

/ok-to-test tags="@tag.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/8857896676>
> Commit: be346ec2892fa70727e3b686c251c914ef998615
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8857896676&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->
2024-04-28 17:30:46 +05:30
Goutham Pratapa
947add2f20
[ops]: get infra details (#32552)
Outputs on having the container up and running

On kubernetes:
```
root@ce32552-appsmith-66fc68d7f-97tjn:/opt/appsmith# cat /tmp/appsmith/infra.json
{"cloudProvider":"amazon","Tool":"kubernetes","EFS":"present","Hostname":"ce32552-appsmith-66fc68d7f-97tjn"}
```

On local setup:
```
root@26327db8d65a:/opt/appsmith# cat /tmp/appsmith/infra.json
{"cloudProvider":"local","Tool":"docker","EFS":"absent","Hostname":"26327db8d65a"}
```

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

- **New Features**
- Introduced infrastructure detection to enhance system insights,
including cloud provider, deployment tools, and host details.
- Enhanced analytics by incorporating deployment properties into event
tracking.

- **Refactor**
- Modified server configuration and initialization to integrate new
deployment properties.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2024-04-26 18:56:45 +05:30
Nidhi
fe1839a132
fix: NOOP spans when context is missing (#32987) 2024-04-26 18:25:21 +05:30
Shrikant Sharat Kandula
bba0ecb112
chore: Remove blockNavigation in Page create API body (#32859)
1. The `blockNavigation` parameter in request body isn't being used, so
removing it.
2. We're sending the page `id` in both the URL path as well as the
request body. This is confusing, and may lead to a security regression
in the future. Removing it from the body.

All tag Cypress tests pass on EE, with no extra changes over the diff
here.
Ref: https://github.com/appsmithorg/appsmith-ee/pull/3698

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

## Summary by CodeRabbit

- **New Features**
- Enhanced page creation process with streamlined parameters and
validation constraints.

- **Refactor**
	- Simplified navigation and page creation logic in the application.
- Updated method parameters and logging to improve clarity and
maintainability.

- **Bug Fixes**
- Fixed the issue where unnecessary data was included in page update
requests.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-25 21:31:51 +05:30
Nidhi
7edd5c5a2f
Revert "chore: GitSynced and BranchAware are two different types (#32… (#32965) 2024-04-25 17:26:52 +05:30
Nidhi
5823e06057
chore: Added indices for collection id in actions (#32953) 2024-04-25 15:27:54 +05:30
Nidhi
b69de462b9
chore: GitSynced and BranchAware are two different types (#32932) 2024-04-25 11:22:17 +05:30
Nidhi
58671d6e8b
CE equivalent for removing js obj action id map (#32917) 2024-04-24 19:10:53 +05:30
Abhijeet
6cc4b028e5
chore: Remove un-necessary test from NewPageServiceTest (#32895)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Tests**
- Removed a test case related to default page creation with specific
permissions and policies.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-24 11:09:15 +05:30
Abhijeet
9406439bbb
chore: Add separate DTO class for projection and move CustomNewActionRepo method to NewActionRepo class (#32818)
## Description
PR to move to class based projection for NewActionRepo method instead of
relying of list of fields. Also as the permissions were not required
converted the existing method to JPA based query.

## Automation

/ok-to-test tags="@tag.Sanity, @tag.Binding, @tag.Datasource,
@tag.GenerateCRUD"

### 🔍 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/8782210714>
> Commit: 80e40e840989db48954aafed914a801fbba995aa
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8782210714&attempt=1"
target="_blank">Click here!</a>

<!-- 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 data fetching capabilities for actions within applications,
improving performance and efficiency.

- **Refactor**
- Optimized data source validation process during application creation
to ensure smoother user experiences.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-23 12:51:22 +05:30
Abhijeet
a6daa4838d
chore: Deprecate recentlyUsedWorkspaceId and recentlyUsedAppIds from user data (#32756)
## Description
PR to remove usage of `recentlyUsedWorkspaceIds` and
`recentlyUsedAppIds` from the codebase. We need to clear this debt as
after the homepage revamp project, we have updated the fields to store
entities in [separate DTO
class](https://github.com/appsmithorg/appsmith/blob/release/app/server/appsmith-server/src/main/java/com/appsmith/server/dtos/ce/RecentlyUsedEntityCE_DTO.java)
instead of bare list of strings.

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

## 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/8752116697>
> Commit: 0be31ca9c9a02030b215f4c5c19f188b2ed481d9
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8752116697&attempt=1"
target="_blank">Click here!</a>

<!-- 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 a new interface for managing user release notes.
- Added functionality to handle removal of entities from recently used
lists more efficiently.

- **Bug Fixes**
- Corrected API call errors for deprecated methods in application
controllers.

- **Refactor**
- Updated various classes to use new user release notes management
system.
- Renamed methods to better reflect their functionality related to
recent workspace and application usage.

- **Tests**
- Updated unit tests to align with the new changes in application and
user data management.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-23 10:14:31 +05:30
Shrikant Sharat Kandula
71867f9bcd
chore: Page name validation closer to file name validation (#32830)
1. Introducing a custom validation annotation, `@FileName` to be used on
fields that are used as file/folder names as part of the product.

2. Updated the validation logic to only accept valid file names on
Linux, macOS as well as on Windows.



/ok-to-test tags="@tag.Settings, @tag.IDE"

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8784587443>
> Commit: a13f700d490845a9d3c53d0da9c1a763fde6be9b
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8784587443&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->











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

- **New Features**
- Enhanced page name validation to include more special characters and
reserved names, ensuring compatibility and preventing errors.

- **Bug Fixes**
- Updated regular expression for replacing disallowed characters in page
names to improve system stability and user experience.

- **Tests**
- Expanded testing for invalid page names to cover a broader range of
scenarios, enhancing reliability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-22 19:22:41 +05:30
Shrikant Sharat Kandula
7fb01b31e3
test: Better assertion failure message for duplicate error test (#32834)
Currently, when this fails we see this:

```
org.opentest4j.AssertionFailedError: 
expected: 156L
 but was: 155L
Expected :156L
Actual   :155L
```

(It's comparing the count vs distinct-count).

This PR makes the failure show up like this:

```
java.lang.AssertionError: 
Expecting empty but was: ["AE-APP-4001"]
```

Making the failure message much more useful.

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


- **Tests**
- Updated the method for verifying the uniqueness of error codes in the
system to enhance reliability by using a new approach.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-22 11:22:10 +05:30
Shrikant Sharat Kandula
85bed5bfc7
ci: Publish port 4200 for TED (#32835)
This changes to publish TED's canonical app port, `4200`.

What's wrong with the currently used ports?


57f63003ef/app/app.ts (L18-L20)

Quoting here:

> 8000, // Past static webserver port, to be removed, after switching to
4200, clashes with CloudServices on CI.
> 5000, // Past Postgraphile port, to be removed, after switching to
4200, clashes with macOS AirDrop.
> 3000, // Past Gitea port, to be removed, after removing Gitea, because
it clashes with `yarn start` in Appsmith.

/ok-to-test tags="@tag.Sanity"
2024-04-22 10:33:07 +05:30
Shrikant Sharat Kandula
489255f3ca
fix: Fix duplicate error code 2024-04-22 08:19:34 +05:30
Shrikant Sharat Kandula
9649d8561c
chore: Remove unneeded fields in snapshot response body (#32813)
These extra fields don't hold much semantic value, and are completely
ignored by the client. This PR removes them and only keeps the one field
that's used by the client.


/ok-to-test tags="@tag.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/8755978321>
> Commit: 9b680799db0d30fb56c908f02260abbb4b590ac3
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8755978321&attempt=2"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->










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

## Summary by CodeRabbit

- **Refactor**
- Improved consistency in naming conventions related to snapshot details
across the platform.
- Enhanced data handling in snapshot fetching and updating processes for
better performance.
- Streamlined snapshot-related data structures and service responses to
focus on relevant information.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-22 08:08:45 +05:30
Shrikant Sharat Kandula
37696bb3ec
chore: Don't mask 405 as 500 (#32829)
/ok-to-test tags="@tag.Sanity"

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

## Summary by CodeRabbit

- **New Features**
- Introduced handling for "HTTP method not allowed" errors to improve
user feedback on unsupported actions.

- **Refactor**
- Optimized error handling structure by using annotations and removing
outdated constructors.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-20 13:46:43 +05:30
Shrikant Sharat Kandula
efc088e509
chore: Fix star-imports (#32826)
/ok-to-test tags="@tag.Sanity"

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

## Summary by CodeRabbit

- **Refactor**
- Updated import statements across various services to enhance code
efficiency and maintainability.
- Introduced advanced image processing capabilities in asset management.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-19 18:59:53 +05:30
Shrikant Sharat Kandula
b25d36fdf7 chore: Fix build error in ApplicationForkingServiceTests 2024-04-19 17:07:45 +05:30
Shrikant Sharat Kandula
3d5e240a3f
chore: Remove PEMCertificate and fix @Document annotations (#32705)
/ok-to-test tags="@tag.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/8748422171>
> Commit: 5e44cffe2a66b8bb932162f4292ac0957c28d89f
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8748422171&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->





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


- **Refactor**
- Improved maintainability of the PEMCertificate class by streamlining
annotations.
- **New Features**
	- Enhanced database integration for Git deployment keys.
- **Bug Fixes**
- Removed redundant fields from SSLDetails class, improving logic
related to PEM certificates.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-04-19 16:29:17 +05:30
Manish Kumar
8749cf1f92
chore: added CE changes for second set of apis (#31898) 2024-04-19 12:48:53 +05:30