Commit Graph

95 Commits

Author SHA1 Message Date
Aman Agarwal
5ffafd7fce
chore: added automatic option to run behaviour behind feature flag (#40608) 2025-05-16 16:29:31 +05:30
Ankita Kinger
bc2dcec672
chore: Updating the spelling for runBehaviour (#40490)
## Description

Updating the spelling for `runBehaviour`

Fixes #

## 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
2025-05-02 17:58:26 +05:30
Ankita Kinger
606b9401a1
feat: Replacing remaining instances of executeOnLoad with runBehavior on frontend (#40358)
## Description

Replacing remaining instances of `executeOnLoad` with `runBehavior` on
frontend

Fixes [#40311](https://github.com/appsmithorg/appsmith/issues/40311)
[#39830](https://github.com/appsmithorg/appsmith/issues/39830)

## Automation

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

### 🔍 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
2025-04-24 15:37:11 +05:30
Ankita Kinger
3858d4d763
feat: Replacing executeOnLoad with runBehavior in all action config settings (#40339)
## Description

Replacing `executeOnLoad` with `runBehavior` in all action config
settings

Figma:
https://www.figma.com/design/qFXimqMSH45aviBOdTfDXu/Reactive-Queries-JS?node-id=61-16773&t=rv594VlMSm75Bvcb-0

Fixes [#39831](https://github.com/appsmithorg/appsmith/issues/39831)

## Automation

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

### 🔍 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
2025-04-23 13:31:28 +05:30
Vemparala Surya Vamsi
2b2d786854
chore: added plugin tags (#39955)
## Description
Added plugin tags to distinguish between spans shared by different
plugin implementation.

Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags="@tag.Datasource,@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/14107363666>
> Commit: bddf47f89cc0abac19244db557fcf24fc63d1f9d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=14107363666&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource,@tag.Sanity`
> Spec:
> <hr>Thu, 27 Mar 2025 14:03:11 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

- **New Features**
- Enhanced observability across multiple integrations: Various
connectors have been updated to include additional contextual
identifiers during execution. This improvement enhances the monitoring
of API calls and data operations, potentially accelerating issue
detection and resolution while maintaining seamless performance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-03-27 23:14:45 +05:30
Vemparala Surya Vamsi
a8a831cd47
chore: added telemetry to the plugin flow (#39861)
## Description
added telemetry to the plugin flow

Fixes #`Issue Number`  
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!CAUTION]
> 🔴 🔴 🔴 Some tests have failed.
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/14052770190>
> Commit: e7102deb86e058bd472a80960930d1b9868f966c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=14052770190&attempt=2&selectiontype=test&testsstatus=failed&specsstatus=fail"
target="_blank">Cypress dashboard</a>.
> Tags: @tag.All
> Spec: 
> The following are new failures, please fix them before merging the PR:
<ol>
>
<li>cypress/e2e/Regression/ClientSide/Widgets/Custom/CustomWidgetEditorPropertyPane_spec.ts</ol>
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/identified-flaky-tests-65890b3c81d7400d08fa9ee3?branch=master"
target="_blank">List of identified flaky tests</a>.
> <hr>Tue, 25 Mar 2025 08:51:35 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

- **New Features**
  - Introduced new tracing constants for improved action tracking.
- Enhanced observability across multiple plugins (for databases and
APIs) by integrating monitoring capabilities into their execution flows.

- **Tests**
- Updated test setups to initialize plugins with observation support,
ensuring consistency with the enhanced monitoring features.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-03-25 14:30:37 +05:30
Trisha Anand
9aa065b195
fix: Scheduling the heavy database ops on bounded elastic thread pool for Ms-sql (#39176)
## Description
Production is seeing high number of pod restarts causing downtime. It
seems to be correlated with user MS-SQL query triggers. On the
hypothesis that its indeed the plugin executions causing this, it could
be the datasource create taking up redis thread pool (possibly because
of an upstream scheduling of a task on it)

Sample log lines displaying the behaviour (only user email removed from
the logs) :
traceId=bda95acf0e182c48037214d5173d0ac9 spanId=00fdca579a517b66 -
boundedElastic-13: datasourceCreate() called for MSSQL plugin.
Feb 11 05:38:05 appsmith-d6d86999-6djmx appsmith backend stdout |
[2025-02-11 00:08:05,357] [lettuce-epollEventLoop-10-3]
requestId=dd547055-d9bc-41ed-b7b4-03b0de691984 userEmail=<>
traceId=bda95acf0e182c48037214d5173d0ac9 spanId=00fdca579a517b66 -
lettuce-epollEventLoop-10-3: Connecting to SQL Server db
Feb 11 05:38:05 appsmith-d6d86999-6djmx appsmith backend stdout |
[2025-02-11 00:08:05,381] [lettuce-epollEventLoop-10-3]
requestId=dd547055-d9bc-41ed-b7b4-03b0de691984 userEmail=<>
traceId=bda95acf0e182c48037214d5173d0ac9 spanId=00fdca579a517b66 -
HikariPool-3 - Starting...
Feb 11 05:38:15 appsmith-d6d86999-6djmx appsmith backend stdout |
[2025-02-11 00:08:15,346] [parallel-2]
requestId=dd547055-d9bc-41ed-b7b4-03b0de691984 userEmail=<>
traceId=bda95acf0e182c48037214d5173d0ac9 spanId=88ee6f7444f698dc -
parallel-2: Action Query3 with id 67aa94d7b95fcb7ea3d5512c execution
time : 10002 ms

This was possibly brought on by the following PR : 
https://github.com/appsmithorg/appsmith/pull/38818

As part of the above PR, scheduleOn statement moved from Mono.callable()
which creates its own subscription chain to outside. This could be
causing the heavy database ops moving to event loop instead of bounded
elastic.

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

/test sanity

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/13265007600>
> Commit: 3e758fb8bbe536a653228d9d61c59eb0e9f1b0b1
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=13265007600&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Tue, 11 Feb 2025 14:53:05 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

- **Refactor**
- Optimized the connection creation workflow to defer resource
initialization until required. This enhancement improves the scheduling
and responsiveness of establishing connections, ensuring that system
resources are utilized more efficiently during runtime.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-02-11 20:24:31 +05:30
sneha122
b7c06d6c60
fix: added configurable connection pool support for mssql (#38818)
## Description
With current implementation, MSSQL is configured with HikariCP to have
maximum pool size of 10. But this means that if multiple concurrent
users are accessing multiple queries of the same datasource at the same
time, some of the queries might time out due to max pool size of 10. We
have encountered this issue in
https://theappsmith.slack.com/archives/C0341RERY4R/p1736150680663059.
Where 40-50 concurrent users are simultaneously making 20-30 queries to
MSSQL database.


This PR makes this connection pool size configurable from admin settings
for MSSQL as well.


Fixes #https://github.com/appsmithorg/appsmith-ee/issues/5928
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12925650660>
> Commit: ebda9364200b4df19c86b8ec4e68a95d6180f10c
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12925650660&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 23 Jan 2025 11:18:35 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

## Summary by CodeRabbit

- **New Features**
	- Enhanced connection pool configuration for MSSQL plugin
	- Added support for dynamically setting maximum connection pool size

- **Improvements**
	- Increased flexibility in database connection management
	- Implemented configurable connection pool settings

- **Tests**
	- Added mock configuration for testing connection pool settings

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

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2025-02-01 00:36:19 +05:30
Hetu Nandu
78718229da
chore: Remove style from editor and setting config (#38756) 2025-01-23 13:29:03 +05:30
Anagh Hegde
c2bf6c830e
chore: add spotless for sql files for postgres (#37016)
## Description
Add spotless check for SQL files. 

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11549507562>
> Commit: 5614181e15e5cfa768f43fb73d23b559ddaba782
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11549507562&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 28 Oct 2024 11:13:16 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

- **New Features**
- Added user guidance in SQL templates to prompt users for valid table
names.
- **Bug Fixes**
- Improved formatting of SQL statements for better readability across
various plugins.
- **Chores**
- Updated configuration to include SQL files for formatting by the
Spotless Maven plugin.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-11-09 11:21:30 +05:30
Ankita Kinger
2f7e4e5c96
chore: Updating the copy in the action settings pane (#37260)
## Description

Updating the copy in the action settings pane

Fixes [#37258](https://github.com/appsmithorg/appsmith/issues/37258)

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11704084082>
> Commit: 723332f1a22047bbda149e5d77f9e4ddb0b84d3e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11704084082&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 06 Nov 2024 15:09:44 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Release Notes

- **New Features**
- Enhanced testing coverage for promise handling in the Cypress
environment, improving validation of asynchronous operations.

- **Bug Fixes**
  - Updated labels in the settings tab of the query editor for clarity.
- Improved label consistency across various plugins and settings
configurations.

- **Documentation**
- Updated messaging in the `SettingsPopover` component for better user
guidance.

- **Chores**
- Standardized phrasing in multiple configuration files to enhance user
understanding across the application.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-11-07 00:20:52 +05:30
Hetu Nandu
ee02c0f17e
chore: Query Editor full width option (#37138) 2024-10-31 15:20:48 +05:30
Ankita Kinger
faed301e32
chore: Moving action settings from editor form to toolbar (#36894)
## Description

Moving action settings from editor form to toolbar to follow the new
designs under action redesign project.

Fixes [#35512](https://github.com/appsmithorg/appsmith/issues/35512)
[#34670](https://github.com/appsmithorg/appsmith/issues/34670)
[#35535](https://github.com/appsmithorg/appsmith/issues/35535)

## 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/11384449381>
> Commit: 027e2a33685e50c2cb16e513993fff62b0d62e08
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11384449381&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Thu, 17 Oct 2024 12:40:29 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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

## Summary by CodeRabbit

## Release Notes

- **New Features**
- Introduced new components for managing API and query settings in the
Plugin Action Settings.
- Added functionality to open plugin action settings directly from the
toolbar.
- Implemented a settings popover interface for improved user
interaction.
- Added documentation links for QUERY_SETTINGS to enhance user guidance.

- **Improvements**
- Simplified rendering logic in the Plugin Action Form for better
performance.
- Updated form naming conventions for consistency across API and GraphQL
editors.
- Streamlined configuration settings by replacing `subtitle` with
`tooltipText` for clarity.
- Enhanced styling in Action Settings for better layout and user
experience.

- **Bug Fixes**
- Corrected the navigation logic to open plugin action settings instead
of debugger state.

These enhancements aim to improve user experience and streamline plugin
action management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-10-18 11:18:08 +05:30
sneha122
765b1b304e
chore: unskip mssql tests (#36866)
## Description
This PR fixes the flaky mssql Junit test case by replacing the test
containers docker image to mssql server 2022 latest.

### Root cause of flakiness
MSSQL Junit test cases like `mssqlplugintest.java` and
`mssqlGetDBSchemaTest.java` recently started becoming flaky in the CI.
Sometimes they would pass, sometimes they would throw the error
`org.testcontainers.containers.ContainerLaunchException: Container
startup failed for image mcr.microsoft.com/azure-sql-edge:1.0.3`. This
was happening because MSSQL test cases create a docker container using
Azure SQL Edge 1.0.3 image. Upon further researching found two relevant
links as to why it has stopped working:
1.
https://forums.docker.com/t/sql-server-docker-container-fails-on-start-up-when-run-in-a-vm-with-ubuntu-24-04/142093
2. https://github.com/docker/for-mac/issues/7368

Although second link seems to be specific for Mac where as we use Ubuntu
when running tests in CI, this
[comment](https://github.com/docker/for-mac/issues/7368#issuecomment-2407843656)
and docker forum link above states that problem is there for Ubuntu as
well. Two possible workaround suggested in above threads were:
1. Downgrade docker desktop to 4.32 
2. Instead of Azure SQL Edge use MSSQL server 2022 latest image

This PR uses the second workaround and updates docker container image
from Azure SQL Edge 1.0.3 to MSSQL server 2022 latest image.

I have triggered the server-unit-tests workflow 12 times and all times
it passed, showing no flakiness, hence we should be good to go ahead
with the fix.

Equivalent EE PR: https://github.com/appsmithorg/appsmith-ee/pull/5366

Fixes #36774 
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11380762425>
> Commit: 4f95888f9470e92590c9c6b9fcfe95e5552e2fae
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11380762425&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Thu, 17 Oct 2024 08:33:37 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2024-10-17 14:06:26 +05:30
Abhijeet
c6eaed4ca6
chore: Disable MSSql tests as test container is unable to accept connection (#36451)
## Description
Ref:
https://theappsmith.slack.com/archives/C02GAUE9P5H/p1726806965773469

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!WARNING]
> Tests have not run on the HEAD
eab6cefe70e63404475892b31785ff5f35bbb90e yet
> <hr>Fri, 20 Sep 2024 10:21:35 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


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

- **Bug Fixes**
- Disabled test execution for the `MssqlGetDBSchemaTest` class to
improve test suite performance.
- Disabled test execution for the `MssqlPluginTest` class to streamline
testing processes.
- Disabled test execution for the `RedisPluginTest` class to enhance
overall testing efficiency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-20 17:09:57 +05:30
Anna Hariprasad
7aae152dee
fix: logger-not-working-in-plugins (#36231)
Fixes #36073 

Hi @NilanshBansal 

**Issue :**

**Missing Logging Implementation :**

- Without a logging implementation (such as SLF4J Simple or Logback) in
the project's classpath, the logging statements in the plugins cannot be
executed.
- As a result, no log output is being printed to the terminal.

**Solution :**

The solution is to add a logging implementation to the plugins parent
pom. In this case, you can add the slf4j-simple dependency to your
pom.xml file. This will provide a simple logging implementation that
will output log statements to the console.

```
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.36</version>
</dependency>

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>1.7.36</version> 
</dependency>
```
**Explanation:**

- slf4j-api provides the SLF4J API, which is the interface for logging.
  provides the SLF4J API, which is the interface for logging.
- slf4j-simple provides a simple implementation of the SLF4J API, which
is responsible for actually printing the log messages to the console.

**Screenshots :** 

Amazon S3 Plugin and Postgres Plugin 

![image](https://github.com/user-attachments/assets/d3e90b96-2b02-493d-8ffa-44e2aa348fc1)


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

## Summary by CodeRabbit

- **New Features**
- Enhanced logging capabilities with the integration of SLF4J API and
SLF4J Simple implementations.

- **Improvements**
- Improved log management and output formatting for better monitoring
and debugging across various plugins, transitioning from standard output
to structured logging.
- Refined logging practices in multiple plugins to support better
maintainability and performance.
- Removed method for console logging from the Stopwatch class to
streamline logging practices.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-17 10:47:58 +01:00
albinAppsmith
66c815f1cb
feat: Migrate DBform to UQI config (#36168)
## Description

This PR migrates the plugins which were old DBForm config to UQI config.
Plugins that got affected,
1. Snowflake
2. ArangoDB
3. Oracle
4. PostgreSQL
5. MySQL
6. Elasticsearch
7. DynamoDB
8. Redis
9. MSSQL
10. Redshift


Fixes #35496
Fixes #35497
Fixes #35500
Fixes #35487 
Fixes #35490 
Fixes #35491
Fixes #35499
Fixes #35501 
Fixes #35502
Fixes #35506 
Fixes #35890

## 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/10897087023>
> Commit: e8fe475a48aac1e2e1f3184181ae0bed154313ba
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10897087023&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Datasource`
> Spec:
> <hr>Tue, 17 Sep 2024 06:07:27 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


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


- **New Features**
- Enhanced rendering logic in the Query Editor to support additional UI
component types.
- Improved handling of form evaluations and query configurations across
various plugins, including ArangoDB, DynamoDB, Elasticsearch, and
others.
- Introduced structured layouts for editor configurations, enhancing
clarity and usability in multiple database plugins.

- **Bug Fixes**
- Adjusted control flow in sagas to ensure proper handling of UI
component types, improving user interactions.

- **Chores**
- Refined JSON configurations across multiple plugins for better
organization and maintainability.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-09-17 14:22:32 +05:30
Nilansh Bansal
1c14d698f1
chore: added thread logging info for plugins (#36077) 2024-09-05 17:19:57 +05:30
Nilansh Bansal
fe7ca6b98e
chore: added prettier spotless plugin for json files (#35447)
## Description
This PR adds the spotless formatter and validator for the JSON files
present in the project. If there is any invalid JSON file, the formatter
fails and logs the file and the error LOC to be fixed.
It uses the `prettier JSON` formatted in spotless for the same.
Since Spotless is already added to the pre-commit hook it also makes it
necessary to fix the JSON and then commit the changes.

- The prettier JSON formattor preserves the order of the keys.
- Indendation of 2 spaces has been added in the config

Screenshot of the errors displayed for Invalid JSONs
<img width="1427" alt="image"
src="https://github.com/user-attachments/assets/00bbd61c-7414-4787-b9ac-2f0d392f6f33">

### Last attempt to resolve this issue
The formatted used was `simple JSON` which led to change in order of
JSON keys.
PR: https://github.com/appsmithorg/appsmith/pull/35395
Ref:
https://theappsmith.slack.com/archives/CGBPVEJ5C/p1722929754593669?thread_ts=1722916121.682699&cid=CGBPVEJ5C


Fixes #34969 

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10264348935>
> Commit: 4957b647f3d5e0f9853e7f391411b62ee189547b
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10264348935&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Tue, 06 Aug 2024 12:40:47 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
2024-08-08 09:16:03 +05:30
Nilansh Bansal
3b3f64f1c0
Revert "chore: added JSON files linting check" (#35445)
Reverts appsmithorg/appsmith#35395
Reverting this PR as the formatter changes the sorting order of the keys
of our JSONs which affects our UI.
Ref:
https://theappsmith.slack.com/archives/CGBPVEJ5C/p1722929754593669?thread_ts=1722916121.682699&cid=CGBPVEJ5C
2024-08-06 14:15:23 +05:30
Nilansh Bansal
486662a2ed
chore: added JSON files linting check (#35395)
## Description
This PR adds the spotless formatter and validator for the JSON files
present in the project. If there is any invalid JSON file, the formatter
fails and logs the file and the error LOC to be fixed.
Since Spotless is already added to the pre-commit hook it also makes it
necessary to fix the JSON and then commit the changes.

Screenshot of the errors displayed for Invalid JSONs

![image](https://github.com/user-attachments/assets/f1661a1e-50a6-4b20-88a5-b7cfe0cc691a)


### Why is this Important?
All of our datasource forms appear on the UI from the JSON configuration
files in the plugins. If an Invalid JSON is added, it can break the
datasource usage experience for the users.
One such instance happened in the past, where due to a JSON formatting
error, the users could not use Smart Substitution feature on production.

[Reference](https://theappsmith.slack.com/archives/C040LHZN03V/p1721124893238579)

Fixes #34969 

## Automation

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

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/10243164292>
> Commit: 08bc87acd2e44c4a2677d3eed1bad002f991050a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10243164292&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Mon, 05 Aug 2024 05:50:07 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
2024-08-05 11:56:50 +05:30
Hetu Nandu
1194bd5a57
fix: Api pane and settings responsiveness (#33297)
## Description

Various style and layout changes for side by side responsiveness

Fixes #33249 

## 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/9006852734>
> Commit: de02d207d06524e3aace37647821ffd45ee17e64
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9006852734&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-09 17:02:48 +05:30
Aman Agarwal
796a4c8660
fix: default port numbers for the datasources (#32901) 2024-04-30 13:15:11 +05:30
Aman Agarwal
2a08e8ed52
fix: reverting the default port numbers for the datasources (#32726)
This PR is created to revert the changes from the PR #32592 due to
flakiness in the test specs.

Reverts appsmithorg/appsmith#32592


## 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/8717847856>
> Commit: e6b4c320d893490c37bf4b4a2efa02fc4c4a2c4b
> Cypress dashboard: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8717847856&attempt=2&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/ApiTests/API_MultiPart_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  -->
2024-04-17 13:44:18 +05:30
Aman Agarwal
ed1bb9273a
fix: default port numbers for the datasources (#32592) 2024-04-16 13:29:04 +05:30
Abhijeet
5eae03d2f0
chore: Remove Mongo BSON dependency for mssql plugin testcase (#32355) 2024-04-04 11:30:42 +05:30
Rishabh Rathod
5d47001dba
chore: Prepared statement description changes (#32042)
## Description



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

## Automation

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

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

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






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

## Summary by CodeRabbit

- **Documentation**
- Updated information text related to using Prepared Statements in
queries, emphasizing the prevention of SQL injections and highlighting
limitations on dynamic bindings.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-26 14:09:35 +05:30
sneha122
f91dc4889e
chore: JUnit test cases added for rate limit functions (#28399)
## Description

This PR adds JUnit test cases for rate limit functionality implemented
for datasource test and datasource connections.

#### PR fixes following issue(s)
Fixes ##27742
#### 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?
> 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
- [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
- [ ] 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

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2023-10-26 21:40:55 +05:30
sneha122
ff31d78ee9
chore: Rate limiting datasource test api is added (#27777)
## Description

This PR adds rate limiting functionality to datasource test API. The
rate limiting configuration is added in such a way that if test API
receives more than 3 failed authentication requests for the same host
name within 5 seconds, It will block this hostname for the next 5
minutes, so that brute force attack can be stopped.

Unit test for this will be covered in another PR. Refer #27742 

Currently this PR covers for postgres only, will need to extend the
implementation for all plugins. Refer #27737

#### PR fixes following issue(s)
Fixes #27736, #27739, #27744 
> 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?
> 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
- [ ] 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
- [ ] 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
- [x] 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

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2023-10-17 15:08:23 +05:30
Sumit Kumar
f54d062006
feat: enable generate CRUD page for MsSQL plugin (#27195) 2023-09-20 14:12:11 +05:30
Ayangade Adeoluwa
7dcff0d774
feat: Add isSuggested value to templates for all plugins (#26623)
This PR adds an isSuggested value to templates for all plugins that
support DatasourceStructure
2023-08-30 11:49:25 +01:00
Sumit Kumar
d7f940ffaa
chore: replace wildcard imports with specific imports (#25723) 2023-07-26 16:31:29 +05:30
Ayush Pahwa
75b297201a
chore: code splitting for multiple env feature (#25479)
code split for EE feature

---------

Co-authored-by: ChandanBalajiBP <104058110+ChandanBalajiBP@users.noreply.github.com>
Co-authored-by: Parthvi <80334441+Parthvi12@users.noreply.github.com>
2023-07-21 12:53:17 +07:00
Sumit Kumar
fb5600a54d
fix: fix MsSQL JDBC URL format error (#25094) 2023-07-11 17:44:33 +05:30
Nidhi
d6e74bf012
chore: Applied Spotless formatter (#25173) 2023-07-07 00:43:11 +05:30
Sumit Kumar
37e4154cf1
fix: update placeholder text for port numbers in datasource form (#24961) 2023-07-06 16:32:17 +05:30
Sumit Kumar
98a509227f
fix: fix MySQL stale connection error (#24429)
## Description
- Add changes to address the`StaleConnection` exception caused by MySQL plugin.
- Update MySQL driver version.
- Other refactor changes not related to the main issue: 
  - Explicit empty constructor definition is replaced with Lombok annotation for all error messages class.
  - A base class is created for plugin error messages class to store all common error messages.
  - Fix Indentation.
2023-06-30 11:40:05 +05:30
sneha122
f36bcf2a6c
feat: query creation dumb templates replaced with smart templates (#24234)
## Description
 
This PR replaces dumb template that is shown on new query creation with
smart templates. With current implementation whenever we create a new DB
query, we see this template before writing the query, when we select any
of the template options, it shows us template query like `SELECT * FROM
users ORDER BY id LIMIT 10;` Since its a template query, users table may
not exist in user's actual database, thus leading them to error results.
<img width="1174" alt="Screenshot 2023-06-09 at 2 45 40 PM"
src="https://github.com/appsmithorg/appsmith/assets/30018882/4dede184-439f-4064-abe0-faf7b236748e">

With new implementation, we are removing this template page, instead if
we have the structure of the datasource available, we would simply get
the first table from the structure, and create select query using that.
This way we are populating query editor with user's actual table names
rather than dumb table name like `users`. Thus leading users to create
successful query

Note: This change is done only for sql plugins like MySQL, MSSQL,
PostgreSQL, Redshift, Oracle, Snowflake.

#### PR fixes following issue(s)
Fixes #23960 
> 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
- 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
- [ ] Jest
- [x] Cypress
>
>
#### Test Plan
> Create a Connection on the DB 
> Create a Query from the established Query
> Ensure the 1st table data is placed when Add Query button is clicked
from the Review page
> If the query is created from Entity explorer ensure the right table
name is been added

#### Issues raised during DP testing
> Link issues raised during DP testing for better visibility 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
- [ ] 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/Test-plan-implementation#speedbreaker-features-to-consider-for-every-change)
have been covered
- [x] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans/_edit#areas-of-interest)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [x] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [x] Cypress test cases have been added and approved by SDET/manual QA
- [x] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2023-06-19 15:23:34 +05:30
Aman Agarwal
c49c42b0be
fix: functionality of placeholdertext in key value array control (#24483)
## Description
This PR fixes : 
- the functionality of placeholder for the key value array control which
was earlier accessing `placeholderText` key from a wrong path for host.
- Added placeholders for different datasources as well
2023-06-16 18:04:25 +05:30
ChandanBalajiBP
b5185ab8b5
fix: Update connection mode DropDown by Segmented Control (#23730)
## Description
> Update the Drop-Down component to Segemented Control as per the
designs in datasource configuration.
>Here is the FIGMA
[link](https://www.figma.com/file/xlYswIZx9noaldAPmv3ji4/Multiple-Environments-V2?type=design&node-id=79-36425&t=egGDXQsYmAFAWjBU-0)

>Current state 
><img width="393" alt="Screenshot 2023-05-25 at 3 08 38 PM"
src="https://github.com/appsmithorg/appsmith-ee/assets/104058110/5f623fee-5ba7-464d-be34-a106f0e7c438">

>Updated State 
><img width="393" alt="Screenshot 2023-05-25 at 3 08 38 PM"
src="https://user-images.githubusercontent.com/104058110/237018777-132f6607-a757-41c0-9d52-c00e70745f36.png">

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

#### Type of change
> Please delete options that are not relevant.
- Bug fix (non-breaking change which fixes an issue)
>
## Testing
>
#### How Has This Been Tested?
- [x] Manual
>
>
#### 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
- [ ] 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/Test-plan-implementation#speedbreaker-features-to-consider-for-every-change)
have been covered
- [x] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans/_edit#areas-of-interest)
- [x] Test plan has been peer reviewed by project stakeholders and other
QA members
- [x] 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
2023-05-29 16:45:52 +05:30
Sanveer Singh Osahan
3c688e772b
feat: Implemented Schema Fetch for MSSQL Plugin (#16014) (#23498)
## Description

Implemented Get Structure for MSSQL Plugin.
Refactored the existing code for MSSQL Plugin. Added the following
- `MssqlDatasourceUtils` - contains the utilities for getting
connection, logging Hikari CP Status and getting DB schema structure and
templates
- `MssqlExecuteUtils` - contains utilities for populating rows and
columns, and closing connection after query execution
- `MssqlTestDBContainerManager` - Test helper to create container,
datasource configuration and run queries for MSSQL unit tests

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

#### Media
<img width="1438" alt="Screenshot 2023-05-19 at 9 36 07 AM"
src="https://github.com/appsmithorg/appsmith/assets/28753975/aec5fe31-e3e1-43b4-a946-dfc946dcfd05">

#### Type of change
- New feature (non-breaking change which adds functionality)
- 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.
- [x] Manual
- [x] 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
- [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
- [ ] 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/Test-plan-implementation#speedbreaker-features-to-consider-for-every-change)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans/_edit#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
2023-05-24 11:38:06 +05:30
Sumit Kumar
5bc439d478
chore: MsSQL Integration: add JUnit TC for SSL options (#23528)
## Description
- Add JUnit TC to test for SSL options - (1) Disable (2) No Verify
- In order to check for the encryption status a SQL query is used which provides the encryption status of the connection used to make that query.

Fixes #20570
2023-05-22 13:17:30 +05:30
albinAppsmith
629999f124
feat: [epic] appsmith design system version 2 deduplication (#22030)
## Description

### Fixes
- [x] https://github.com/appsmithorg/appsmith/issues/19383
- [x] https://github.com/appsmithorg/appsmith/issues/19384
- [x] https://github.com/appsmithorg/appsmith/issues/19385
- [x] https://github.com/appsmithorg/appsmith/issues/19386
- [x] https://github.com/appsmithorg/appsmith/issues/19387
- [x] https://github.com/appsmithorg/appsmith/issues/19388
- [x] https://github.com/appsmithorg/appsmith/issues/19389
- [x] https://github.com/appsmithorg/appsmith/issues/19390
- [x] https://github.com/appsmithorg/appsmith/issues/19391
- [x] https://github.com/appsmithorg/appsmith/issues/19392
- [x] https://github.com/appsmithorg/appsmith/issues/19393
- [x] https://github.com/appsmithorg/appsmith/issues/19394
- [x] https://github.com/appsmithorg/appsmith/issues/19395
- [x] https://github.com/appsmithorg/appsmith/issues/19396
- [x] https://github.com/appsmithorg/appsmith/issues/19397
- [x] https://github.com/appsmithorg/appsmith/issues/19398
- [x] https://github.com/appsmithorg/appsmith/issues/19399
- [x] https://github.com/appsmithorg/appsmith/issues/19400
- [x] https://github.com/appsmithorg/appsmith/issues/19401
- [x] https://github.com/appsmithorg/appsmith/issues/19402
- [x] https://github.com/appsmithorg/appsmith/issues/19403
- [x] https://github.com/appsmithorg/appsmith/issues/19404
- [x] https://github.com/appsmithorg/appsmith/issues/19405
- [x] https://github.com/appsmithorg/appsmith/issues/19406
- [x] https://github.com/appsmithorg/appsmith/issues/19407
- [x] https://github.com/appsmithorg/appsmith/issues/19408
- [x] https://github.com/appsmithorg/appsmith/issues/19409

Fixes # (issue)
> 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


## How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Provide
instructions, so we can reproduce.
> Please also list any relevant details for your test configuration.
> Delete anything that is not important

- Manual
- 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: Ankita Kinger <ankita@appsmith.com>
Co-authored-by: akash-codemonk <67054171+akash-codemonk@users.noreply.github.com>
Co-authored-by: Tanvi Bhakta <tanvi@appsmith.com>
Co-authored-by: Arsalan <arsalanyaldram0211@outlook.com>
Co-authored-by: Aman Agarwal <aman@appsmith.com>
Co-authored-by: Rohit Agarwal <rohit_agarwal@live.in>
Co-authored-by: Nilesh Sarupriya <nilesh@appsmith.com>
Co-authored-by: Nilesh Sarupriya <20905988+nsarupr@users.noreply.github.com>
Co-authored-by: Tanvi Bhakta <tanvibhakta@gmail.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
Co-authored-by: Vijetha-Kaja <vijetha@appsmith.com>
Co-authored-by: Parthvi <80334441+Parthvi12@users.noreply.github.com>
Co-authored-by: Apple <nandan@thinkify.io>
Co-authored-by: Saroj <43822041+sarojsarab@users.noreply.github.com>
Co-authored-by: Sangeeth Sivan <74818788+berzerkeer@users.noreply.github.com>
Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: Aishwarya-U-R <91450662+Aishwarya-U-R@users.noreply.github.com>
Co-authored-by: rahulramesha <rahul@appsmith.com>
Co-authored-by: Aswath K <aswath.sana@gmail.com>
Co-authored-by: Preet Sidhu <preetsidhu.bits@gmail.com>
Co-authored-by: Vijetha-Kaja <119562824+Vijetha-Kaja@users.noreply.github.com>
Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2023-05-20 00:07:06 +05:30
SatVeer Singh
9dd1ef6ff0
fix: Hint text in create query (sql based datasources) (#22190)
## Description
Improve hint text in SQL type queries. 

Fixes #22011
Fixes #22117
2023-04-10 17:50:09 +05:30
Shrikant Sharat Kandula
4280ded88e
chore: Fix unnecessary re-shading of jars (#21994)
Solves a single thing in the build configurations, resulting in a few
wins.

1. Reduced number of warnings in the output.
   1. In release branch:
      ```
mvn clean package -DskipTests | grep --fixed-strings --count '[WARNING]'
      3233
      ```
   1. In this PR's branch:
      ```
mvn clean package -DskipTests | grep --fixed-strings --count '[WARNING]'
      172
      ```

2. All uber-jar files are shaded twice, currently. Once with the default
execution of `maven-shade-plugin`, and again with the `shade-plugin-jar`
execution in these `pom.xml` files. This is double-work, and is the
cause of most of the warnings we see.
1. This `shade-plugin-jar` was added to have the plugin information
included in the `/META-INF/MANIFEST.MF` file, since we can't configure
the default execution of the shade plugin (it comes to us from Spring
Boot).
2. Instead, we switch to configuring plugin information in a
`/plugin.properties` file.
3. Previously, we used `/plugin.properities` for plugin information in
dev time, and `/META-INF/MANIFEST.MF` in production. This PR will change
it so that we use `/plugin.properties` all the time. We configure PF4J
with a custom plugin manager to achieve this.

3. Moved all `plugin.properties` into `src/main/resources`, so that they
land up in the root of the final jar files. But this means, during
development, loading the plugin fails since it looks for a
`plugin.properties` at the root of the plugin module, i.e., next to the
`src` folder.
1. For this, in the custom plugin manager class, we change where we look
for the `plugin.properties` file during development mode. In this mode,
we look at the `target/classes/plugin.properties` file, which is where
maven saves this file, taken from
`src/main/resources/plugin.properties`.
2. This also solves the duplication of the plugin properties that's
currently present, between `plugin.properties` and the `<properties>`
section of `pom.xml` files.


Here's the shade plugin's default execution and configuration, from
Spring Boot:
https://github.com/spring-projects/spring-boot/blob/v3.0.1/spring-boot-project/spring-boot-starters/spring-boot-starter-parent/build.gradle#L174.
2023-04-03 17:49:21 +05:30
Sumit Kumar
8b32fb6e59
fix: allow MsSQL plugin to connect with ssl encryption (#20568)
## Description
- Currently MsSQL plugin enforces SSL setting to be disabled when
connecting with a database, hence any database that does not allow
non-encrypted connection would fail the connection.
- This PR introduces SSL dropdown to MsSQL datasource config page with
two modes - (1) `disabled` (2) `encryption with no verify`
- `encryption with no verify` means that an encrypted connection would
be established but the client would not seek to verify the authenticity
of the database server.
- This PR also migrates the older existing MsSQL datasources to include
the SSL config with mode being `disabled` since this is how the plugin
is effectively configured at the moment.
- An attempt was made to use the new `ChangeUnit` way of writing the
migration but was abandoned in the interest of time after some re-tries
due to some error during runtime.

Fixes #19039 #20048

## Type of change
- Bug fix (non-breaking change which fixes an issue)
- New feature (non-breaking change which adds functionality)

## How Has This Been Tested?
- Manual
- Attempted to add JUnit TC but had to roll back because of some issues
with DB connections opened via other JUnit TCs. Tracking this issue
here: https://github.com/appsmithorg/appsmith/issues/20570

### Steps for manual testing
(1) Run MSSQL using docker cmd: `docker run -d --name sql_server -e
'ACCEPT_EULA=Y' -e 'SA_PASSWORD=someThingComplicated1234' -p 1433:1433
mcr.microsoft.com/mssql/server:2019-latest`
(2) Switch to `release branch`. 
(3) Create a MSSQL datasource and create valid connection to the DB
created in step (1). Check that the datasource has no SSL dropdown
config.
(4) Create a query on datasource created in (3). Verify that the query
runs.
(5) Switch to this PR branch. Spin up the sever. 
(6) Edit the datasource created in (3) and check that there is a SSL
dropdown with `Disabled` config set.
(7) Check that test datsource passes and query in (4) still works. 
(8) Create a new datsource and check that it has SSL option set to
`Enable with no verify`.
(9) Check that datasource in (8) works.

### 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
- [ ] 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:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
2023-02-20 18:32:46 +05:30
ChandanBalajiBP
b72dea33f3
feat: Error handling phase 1 (#20629)
## Description
This PR updates the error logs 
- Establishing a consistent format for all error messages.
- Revising error titles and details for improved understanding.
- Compiling internal documentation of all error categories,
subcategories, and error descriptions.

Updated Error Interface:
https://www.notion.so/appsmith/Error-Interface-for-Plugin-Execution-Error-7b3f5323ba4c40bfad281ae717ccf79b

PRD:
https://www.notion.so/appsmith/PRD-Error-Handling-Framework-4ac9747057fd4105a9d52cb8b42f4452?pvs=4#008e9c79ff3c484abf0250a5416cf052

>TL;DR 

Fixes # 


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

- New feature (non-breaking change which adds functionality)


## How Has This Been Tested?

- Manual
- 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
- [x] PR is being merged under a feature flag


### QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or
manual QA
- [ ] Organized project review call with relevant stakeholders after
Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test

---------

Co-authored-by: subrata <subrata@appsmith.com>
2023-02-18 18:25:46 +05:30
Nidhi
dfccd5a058
chore: Upgrade to Spring Boot 3.0.1 (#19044)
This upgrade takes care of our move to JDK 17, Spring Boot 3.0.1 and a
few other security upgrades along the way.

Fixes #18993 

TODO:

- [x] Check CI changes for Java 17
- [x] Check vulnerability report
- [x] Mongock needs an upgrade
- [x] Add JVM args at all possible places for exposing java.time module
- [x] Add type adapters everywhere / use the same config for type
adapters everywhere
2023-01-02 19:40:59 +07:00
Nidhi
5329010415
fix: Refactor entities based on AST parsing logic (#18517)
* feat: Refactor entities based on AST parsing logic

* Deleted jmh file

* rts updates for the edge cases

* adding jest test cases

* update review comments

* Fixed issue with references outside of bindings and some other stuff

* Added tests for DSLUtils

* bug fix 18699

* Test fixes

* Test fixes

* Review comments

* Changed type to boxed

Co-authored-by: ChandanBalajiBP <chandan@appsmith.com>
Co-authored-by: ChandanBalajiBP <104058110+ChandanBalajiBP@users.noreply.github.com>
2022-12-12 08:12:21 +03:00
subratadeypappu
19e2e5785e
Fix/16994 refactor common datatype handling (#17429)
* fix:Add array datatype to execute request

* feat: Consume and store type of array elements in Param class (#16994)

* Append param instead of clientDataType in varargs (#16994)

* Refactor common data type handling w.r.t newer structure (#16994)

This commit takes care of the following items:
- It minimizes the number of usage to the older stringToKnownDataTypeConverter method
- Modifies the existing test cases to conform to the newer structure
- Marks stringToKnownDataTypeConverter method as deprecated to discourage further use

* Remove comma delimited numbers from valid test cases (#16994)

* Fix extracting clientDataType from varargs in MySQL (#16994)

* Pass param as a dedicated parameter in json smart replacement (#16994)

* Remove varargs from json smart replacement method (#16994)

* Move BsonType to mongoplugin module (#16994)

* Introduce NullArrayType and refactor BsonType test cases (#16994)

* Add new test cases on numeric string with leading zero (#16994)

* Refactor test case name (#16994)

* Add comment on the ordering of Json and Bson types (#16994)

* Add comment on the ordering of Json and Bson types (#16994)

* Add NullArrayType in Postgres and introduce postgres-specific types (#16994)

* Add data type test cases for Postgres and change as per review comments (#16994)

Co-authored-by: ChandanBalajiBP <chandan@appsmith.com>
2022-10-18 11:02:37 +05:30