Commit Graph

2291 Commits

Author SHA1 Message Date
Sumit Kumar
3c8583210f
feat: remove region requirement from s3 plugin (#8829)
* Remove Region field from S3 datasource editor page for AWS S3, Upcloud, Digital Ocean Spaces, Dream Objects, Wasabi.
  * Use SDK provided property for AWS S3 to delegate region selection to the SDK.
  * Extract region info from endpoint URL for Upcloud, Digital Ocean Spaces, Dream Objects and Wasabi, since the SDK property does not work for these service providers.
* Removed some redundant checks from datasourceCreate that were already part of validateDatasource
* Fix show clause in list.json
2021-11-03 16:23:53 +05:30
Trisha Anand
9d97f2322f
Adding field evaluation version in application (#8993) 2021-11-03 15:38:48 +05:30
Nidhi
81f0bff6f3
fix: Make organization plugins unique (#8987) 2021-11-03 09:56:52 +00:00
Nayan
3e3f97f1ee
feat: [Feature] Add isConfigurable property in profile response for the super admins (#8616)
Added a new property to the response of `/me` API. This property will indicate whether super user can edit the configuration or not.
2021-11-03 11:19:05 +06:00
Nayan
4722ff153d
feat: [Feature] Add API to send test email (#8856)
Added an API for super users to send test email
2021-11-03 11:17:53 +06:00
Shrikant Sharat Kandula
d5ec98f7cb
Fix allowed domains breaking OAuth (#8953)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-11-02 10:57:41 +05:30
Shrikant Sharat Kandula
507ce6581b
Fixed migration causing OOM (#8952)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-11-01 18:09:37 +05:30
Nayan
8e568d6056
feat: [Feature] Add slug for applications and pages (#8860)
Generates and stores a slug from application name and page names when they are created or updated. Also adds a migration to set slug to existing applications and pages.
2021-11-01 14:18:21 +06:00
Nayan
5637b4dfa4
fix: [Bugfix] Delete comments when unpublished page is deleted (#8698)
When a page is deleted, the comment threads in that page should also be deleted and should not appear to user.
The Edit mode comments should not be visible to app viewers.
2021-11-01 14:17:42 +06:00
Nayan
2181f47632
fix: Update admin settings API for changes in UI (#8818)
Set a default name as Appsmith to new instances. Also adds super user's email to admin email configuration.
2021-11-01 14:16:56 +06:00
Rishabh Rathod
19be98bd46
Updated Template (#8920)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-10-29 15:36:31 +05:30
Anagh Hegde
b951d8db21
Get default branch from DB instead of remote to save time (#8844) 2021-10-29 09:32:02 +00:00
Anagh Hegde
ebb9665d42
fix: check for repoName while deleting apps (#8866)
* check for repoName while deleting apps

* Added tests
2021-10-29 07:21:31 +00:00
Nidhi
6b0ef6e236
fix: Added JS collection body to view mode (#8899) 2021-10-29 07:02:28 +00:00
Arpit Mohan
86ad475e30 Revert "chore: Updated Template (#8813)"
This reverts commit f72d6b5777.
2021-10-29 11:21:32 +05:30
Rishabh Rathod
f72d6b5777
chore: Updated Template (#8813)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2021-10-29 10:16:56 +05:30
Shrikant Sharat Kandula
10bff6d80e
Update identify data with role and goal (#8809) 2021-10-28 16:38:30 +05:30
balajisoundar
1b596be6f5
chore: Fix misc admin settings issues (#8838) 2021-10-28 10:17:02 +05:30
Anagh Hegde
338e8ba8d0
fix: git push relevent error messages (#8769)
* WIP

* Add relevant error messages for push action

* fix tests

* changes per review comments

* Add error message for the file system related error

* Fix test failures

* Fix test failures
2021-10-27 14:15:46 +00:00
Nidhi
295f8b9631
fix: Forking with JS collections (#8799) 2021-10-26 11:04:04 +05:30
Shrikant Sharat Kandula
c82bb751e1
Fix deleting datasources with deleted actions (#8627) 2021-10-26 06:20:59 +05:30
Trisha Anand
b57e0c245d
fix: Get buckets in S3 plugin during generate CRUD page (#8781)
* Fix: Generate page fix for S3 plugin

* Fixed the replacement of template variables in form data failure for S3
2021-10-25 22:38:22 +05:30
Shrikant Sharat Kandula
47511640e5
Don't hash identify data points on cloud (#8790) 2021-10-25 18:57:24 +05:30
Rafael Baldasso Audibert
0e22f26621
fix: Change "Allow Horizontal Scroll" text to "Allow scroll" (#8085)
* chore: Change "Allow Horizontal Scroll" to "Allow Scroll"

* chore: Hide option to choose scroll for pie chart

* fix: Fix prettier errors

* feat: Add migration to allowScroll for `CHART_WIDGET`s

Closes #4227

* fix: Fix chart widget prop recursively

Per https://github.com/appsmithorg/appsmith/pull/8085#discussion_r733442011
Closes #4227
2021-10-25 17:09:39 +05:30
Shrikant Sharat Kandula
87ed846194
Close Redshift connections every time (#8776) 2021-10-25 16:48:28 +05:30
Trisha Anand
0300fa9486
feat: Migrating S3 plugin to UQI framework (#8575) 2021-10-25 11:19:22 +05:30
Nayan
5fc00a6cd0
fix: check with url path when redirecting to default application url (#8207)
When deciding whether to redirect to default application or the redirect url provided during signup, it'll compare with url path now. Earlier it was considering any query params added to the redirect url.
2021-10-25 11:43:02 +06:00
Trisha Anand
4a11a10ee0
fix: on page load actions take into account widget dependencies as well to compute correct order of action computaion on page load (#7829) 2021-10-25 08:03:08 +05:30
Shrikant Sharat Kandula
9f770ae871
Include role in first_login event (#8654) 2021-10-23 07:55:30 +05:30
Nidhi
03a92776f7
fix: Refactor with escape sequences (#8713)
* fix: Refactor with escape sequences

* Remove comments
2021-10-22 16:09:53 +00:00
Anagh Hegde
4717b4bcf0
feat: git merge status (#8692)
* git merge status
2021-10-22 12:31:13 +00:00
Nikhil Nandagopal
122d897617
Updated S3 CRUD Template (#8722) 2021-10-22 11:33:27 +00:00
Trisha Anand
a5eb79b2e1
Fixing the substitution type for JSON fields (#8652) 2021-10-21 09:52:35 +05:30
Nayan
98ca448f9f
feat: [Feature] Add API to download docker config (#8587)
Added API to download docker config for super admin users
2021-10-20 15:58:31 +06:00
Anagh Hegde
6faaa33936
feat: Git version control functionality with connect to remote, commit, push flows (#8403)
* core workflows of git - branch, clone, commit, pull, merge, status, log

* Rehydrate file system before merge operation

* Add logic to handle merge conflict for merge and pull flow

* Add defaultBranch to listBranch API

* Add Unit tests for git commands

* Upgrade JGit dependencies to fix the security issue

* Git command tests

* Revert unwanted changes and update delete application flow

* Disable git feature until the FE changes are merged

Co-authored-by: Abhijeet <ABHI.NAGARNAIK@GMAIL.COM>
2021-10-20 09:47:34 +00:00
Sumit Kumar
c9172f8079
fix: data migration to set default value for permanent url toggle where none exists (#8507)
* Recently a change was introduced to modify the default value of s3 plugin's permanent URL toggle from NO to YES. This created an issue with the older actions where the toggle didn't exist and hence no value was saved against its property. Hence, since the default is now ON and the older actions don't have any value saved, the action editor shows the toggle value as ON but behaves like the value is OFF. To fix this issue, this method adds URL toggle as NO where no toggle value exists.
2021-10-15 11:24:04 +05:30
Yyee
870dadd777
fix: Refresh current user in edit profile (#8267) 2021-10-15 11:07:27 +05:30
Nidhi
1cefa7e51b
fix: Expose actions with collections in view mode (#8509)
* fix: Expose actions with collections in view mode

* Dummy commit for tests to pass

* Test fixes
2021-10-14 06:53:46 +00:00
Sumit Kumar
d7411be855
fix: show hint message on using duplicate header or query parameters in API (#8263)
* show hint message on using duplicate headers or query parameters in API.
2021-10-13 18:02:16 +05:30
Nayan
c288df157b
Show profile picture from the uploaded photo id of the user (#8402)
Sends photoId in user profile response. Shows profile picture from the uploaded photo id instead of email address.
2021-10-11 18:28:08 +06:00
Shrikant Sharat Kandula
09c2875e4f
Server restart API, and restart detection API (#7480) 2021-10-11 16:29:39 +05:30
Nayan
1fa4a175a3
feat: upgraded spring boot vesion from 2.2.4 to 2.2.13 (#8381) 2021-10-11 15:58:37 +06:00
Shrikant Sharat Kandula
d9c7de28d4
feat: Handle extra Java arguments to server Docker image (#8244) 2021-10-08 22:47:25 +05:30
Sheetal Patel
f939ebbe8a
chore: Fixing yoda conditions in the code (#8297) 2021-10-08 22:21:24 +05:30
Nayan
72dd22d490
fix: added a check to address NPE in home page when user has no organization (#8259) 2021-10-08 19:27:16 +06:00
Shrikant Sharat Kandula
a4975c5bff
Add API for updating role and goal for users (#8242) 2021-10-08 09:40:19 +05:30
Shrikant Sharat Kandula
a13f674752
Make port customizable from env variable (#8288) 2021-10-07 17:02:49 +05:30
Nidhi
82dc82633f
fix: Make JS objects visible to anon users (#8260)
* Make JS objects visible to anon users

* Dummy commit
2021-10-07 00:30:16 +05:30
Nidhi
4498810cef
fix: Added graceful check for failure in mock data endpoint (#8211)
* fix: Added graceful check for failure in mock data endpoint

* Modified error type
2021-10-06 09:18:21 +05:30
Trisha Anand
915484b7e5
Removing where clause from postgres template (#8202) 2021-10-05 16:47:42 +05:30
Abhijeet
24c1fbee7d
test: Update TC to include Smart Substitution and prepared statement check for generate page (#7922)
* Added prepared statement and smart substitution checks, in TC for generate page

* Updated Template

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-10-05 14:10:56 +05:30
Shrikant Sharat Kandula
08a775d63d
chore: Fix role and goal in event data (#8180)
Signed-off-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-10-05 01:24:54 +05:30
Shrikant Sharat Kandula
89cc2555ab
Fix role and goal saving before using (#8177) 2021-10-04 23:09:56 +05:30
Shrikant Sharat Kandula
edeec80d00
Fix role and goal usage and docker.env location (#8174) 2021-10-04 21:23:11 +05:30
albinAppsmith
31cdfe0fe5
feat: Appsmith design system changes (#8125)
Introducing a much improved design system with new components in the Appsmith Design System.
2021-10-04 21:04:37 +05:30
Abhijeet
bacf29848b
test: Update testcases to check forking app is possible for user even with VIEW permission (#8079) 2021-10-04 13:24:17 +05:30
Abhijeet
82fac6405e
fix: Exclude the deleted page in applicationPages for export application flow (#7967)
* Added check for applicationPages to include only if not deleted
2021-10-03 10:51:33 +00:00
Shrikant Sharat Kandula
cb4d059e5f
Effect the telemetry choice in welcome page (#7902)
Solves for two things:

1. From the welcome page signup, depending on telemetry being enabled or disabled, we report.
2. When telemetry is changed from welcome page (which, it obviously will), we make the change persistent by writing to the env file.
2021-10-02 11:45:17 +05:30
Nayan
a8ab1e4cb6
fix: update user names in notifications when users update their name (#8043)
Fix: update user names in notifications when users update their name
2021-10-02 00:42:50 +06:00
Nayan
12acbf4a55
feat: added API to get unread comment thread count in an application (#7975) 2021-10-02 00:42:11 +06:00
Abhijeet
49182e7060
chore: Update success asset urls for generate page (#7579)
* Update asset urls

* fix: use successImageUrl for CRUD success popup

* Increase delay to switch between GIF and image

* Use ASSETS_CDN_URL instead of S3_BUCKET_URL

Co-authored-by: Rishabh-Rathod <rishabh.rathod@appsmith.com>
2021-10-01 15:09:41 +00:00
Nidhi
60f53546d2
Refactor now uses FQN when available (#7964) 2021-10-01 15:09:27 +00:00
Nidhi
70c282da5a
fix: Refactor collection API (#7962)
* Refactor collection API

* Refactor collaction API
2021-10-01 15:08:56 +00:00
Nidhi
e4c1c2a9ca
Converting headers safely into jsonnode (#8021) 2021-09-30 16:08:40 +00:00
Trisha Anand
9dafd3207f
fix: [Filter Library]Prepared Statements doesn't set value if the data type is not supported in H2. Defaulting to String for unsupported types. (#8015)
* Prepared Statements doesn't set value if the data type is not supported in H2. Defaulting to String for unsupported types.

* Incorporated review comment
2021-09-30 15:48:52 +00:00
Trisha Anand
d8dec82565
Handling the empty object set for where clause in new actions (#8017) 2021-09-30 14:58:32 +00:00
Nidhi
713ed76676
Fixed check for missing action collections (#8006) 2021-09-30 19:04:33 +05:30
Abhijeet
35442e2d42
fix: Update application permission for forking functionality, to enable templates forking (#8007) 2021-09-30 12:47:16 +00:00
Shrikant Sharat Kandula
4c1ed4a67e
Fix migration to not load full actions into memory (#8005) 2021-09-30 17:42:36 +05:30
Rishabh Rathod
70e6e54815
fix: Avoid sending param with no initialValue (#7647)
- Add initialValue for spreadSheetURL
- Pass only params having initialValue defined in generate CRUD
2021-09-30 11:29:09 +00:00
Nidhi
a6a6c7e702
fix: Delete action collections on deleting page (#7957) 2021-09-30 05:59:40 +00:00
Nayan
81d78ca9e8
fix: Signposting when user signs up with oauth is not working (#7918)
Creates a default application when users signs up from oauth
2021-09-29 20:07:28 +06:00
Nayan
c3724d5df2
feat: Skip bot-comment when onboarding is skipped (#7816)
Backend changes to skip the bot comment and onboarding
2021-09-29 15:50:57 +06:00
Nidhi
883b0215a6
Changes for JS actions in the import/export feature (#7892) 2021-09-28 18:13:26 +05:30
Abhijeet
0729ab3211
fix: Display result in tabular format for action response in imported app for SQL datasource (#7889)
* Added pluginId to nested datasource object within actionDTO

* Added check in TC for plugin id
2021-09-28 16:03:56 +05:30
Nikhil Nandagopal
5c3e4ba715
fix: Update crud template (#7891)
* Delete CRUD-DB-Table-Template-Application.json

* Updated Template

* Update TC to replace selectedRow with triggeredRow as per the updated template

Co-authored-by: Abhijeet <ABHI.NAGARNAIK@GMAIL.COM>
2021-09-28 15:28:33 +05:30
Shrikant Sharat Kandula
f6d2e89ae3
fix: Actions not being deleted when app is deleted (#7880) 2021-09-28 13:28:50 +05:30
Sumit Kumar
611ff3b776
feat: make Mongodb plugin error messages more readable. (#7857)
* Make MongoDB plugin's error messages more readable. A Client side change is required before this change becomes visible to the end user.
2021-09-27 15:10:14 +00:00
Sumit Kumar
a7dcfae491
- remove feature flag for snippet. (#7824) 2021-09-27 08:12:04 +05:30
Trisha Anand
eb0f88244a
Adding where key in generate CRUD application with google sheets for SelectQuery (#7812) 2021-09-24 12:37:42 +00:00
Nidhi
85f5382a31
fix: Modified unique index for plugin collection (#7804) 2021-09-24 11:17:46 +00:00
Nidhi
59ec853498
Fixed installation for multiple plugins into organizations (#7767) 2021-09-24 05:44:14 +00:00
Sumit Kumar
0f83f79840
- Set Generate un-signed url default option to true. (#7776)
* Set the default setting for permanent / un-signed url for S3 list action to true.
2021-09-24 11:07:29 +05:30
Shrikant Sharat Kandula
d5262d14b3
Remove Spring startup banner (#7761) 2021-09-24 08:20:35 +05:30
Trisha Anand
a2e68c9724
Minor grammar/language change in the errors for filtering library (#7779) 2021-09-23 23:56:20 +05:30
Trisha Anand
57ed477510
fix: Adding Prepared Statement setting to the main query pane for Postgres, MySQL and MS SQL plugins (#7762) 2021-09-23 14:39:22 +00:00
Trisha Anand
3412644a75
feat: Adding Prepared Statement for H2 database for handling all user data without special error handling (#7653) 2021-09-23 18:29:15 +05:30
Sumit Kumar
f3880f32ca
fix: validate database, warehouse and schema name (#7683)
* Validate database, warehouse and schema name during test datasource and get structure calls.
* Minor refactor to avoid repeating code.
2021-09-23 15:35:21 +05:30
Anagh Hegde
101b21b901
fix: Widget suggestion for firestore datasource (#7375)
* Add tests for ArrayList data type response

* Refactor WidgetSuggestion logic

* use getters and setters
2021-09-23 09:52:11 +00:00
Nidhi
688b75af22
Changes to introduce peader prefix in API key authentication type (#7742) 2021-09-23 13:20:44 +05:30
Shrikant Sharat Kandula
0ded7a4c71
Announce that we are up! (#7735) 2021-09-23 09:54:05 +05:30
Nidhi
8b7f1a7f01
fix: Use populated actionDTO for json path keys in JS during refactor (#7650)
* Use populated actionDTO for json path keys in JS

* Review comment
2021-09-22 21:23:56 +05:30
Trisha Anand
2121050177
Adding migrations for dynamic binding path list for mongo actions post uqi migrations (#7718) 2021-09-22 14:13:25 +05:30
Abhijeet
391674fc75
fix: Update crud template to fix mongo queries after the page generation (#7657) 2021-09-21 21:55:25 +05:30
Nidhi
c3f4cdaa15
feat: Introducing SaaS integrations as a plugin (#7560)
* WIP client side changes

* Saas execution flow + scheduled import of remote plugins
2021-09-21 17:35:29 +05:30
Shrikant Sharat Kandula
78d5447d98 Fix jar name in build script 2021-09-21 15:59:14 +05:30
Shrikant Sharat Kandula
04356a8d3b
Fix server image jar paths (#7676) 2021-09-21 15:20:51 +05:30
Trisha Anand
12e97835bf
Where clause is also visible now for command Fetch sheet rows for both Query range as well as Query rows sub methods (#7655) 2021-09-21 13:48:30 +05:30
Nidhi
0fadf83c86
Default type of where conditions converted to array (#7637) 2021-09-20 12:30:31 +00:00
Nayan
1296faef8e
feat: [Feature] Use photo asset id instead of email address for profile picture in comments (#7434)
* -set user photo id when adding a new comment thread

* -update user data when users remove their profile photo

* -updated photo id in comments when user changes or set a profile photo

* -remove photoid from thread, kept it in comment only

* -resized uploaded profile image

* -added test for delete profile photo

* -add test for the comment set user photo

* -check user change event handler is called in delete user photo

* -add test for checking user photo change event is triggered after upload photo

* -fixed tests due to changes

* -make profile pictures thumbnail only

* - used get photo by asset id API to show user photo in comment card
- set cache control header in get asset by id API

* - stop using email address to show user photo
2021-09-20 15:03:39 +06:00
Trisha Anand
0ef0b3c3da
fix: Adding handling for columns with multiple words in name for filtering data in filtering library (#7602)
* Adding handling for columns with multiple words in name

* Maintaining the order of columns by using LinkedHashMap instead of Map

* Incorporating review comments

* Migrating the test from Set to List to assert the order of the columns as well in the response
2021-09-20 08:36:28 +00:00
Trisha Anand
240816e01c
feat: Adding "where" clause support for Google Sheets Plugin (#7597)
* Adding UI changes for inputting where conditions

* Working version of filtering! Woot woot!
2021-09-19 17:53:19 +00:00
Trisha Anand
17baadfb84
Adding input type to BSON fields to ensure future client side validations can be added to these fields (#7596) 2021-09-19 15:34:28 +00:00
Trisha Anand
659d7c3866
feat: Where condition helper library using H2 in memory database (#7592) 2021-09-19 20:33:47 +05:30
Trisha Anand
eaa9d783df
fix: Datasource structure command failure for Google Sheets (#7595) 2021-09-19 07:15:08 +00:00
Trisha Anand
98fd6205ff
Fixing NPE error (#7588) 2021-09-18 12:34:57 +05:30
Trisha Anand
936f014b3e
feat: Add UQI infrastructure to Mongo Plugin (#7238) 2021-09-17 12:22:22 +00:00
Nayan
624a8d1e9c
fix: on page load actions are disabled after fork app (#7490)
* fix: on page load actions are disabled after fork app
* -fix: change permission check during fetch application in fork app
2021-09-17 17:42:06 +06:00
Nayan
28adc4e928
feat: set modified by during create, clone, fork, import app (#7452) 2021-09-17 17:10:08 +06:00
Sumit Kumar
146f536190
fix: fix mysql prepared statement integer and boolean type handling (#6987)
* fix mysql prepared statement integer and boolean type handling
2021-09-17 08:56:12 +00:00
Trisha Anand
60f85bd88b
fix: Add migrations for all google sheet actions to turn off smart substitution for existing actions (#7517) 2021-09-16 12:08:34 +00:00
Arpit Mohan
37e7a61792
chore: Minor changes for fixing some strings on the home page & action settings page (#7469) 2021-09-15 12:20:25 +00:00
Shrikant Sharat Kandula
851abd5a06
fix: Add missing variables in env file in config (#7100)
The env config API currently only changes values that are already defined in the env file. It is not capable of adding anything to the file.

This commit adds the capability to do so. However, since we don't want to let the client add just any variable, we've switched from a black list to a white list of env variables that can be managed by this API. If the requested variable is present in the whitelist, we add it, if its missing in the env file.
2021-09-15 17:03:47 +05:30
Shrikant Sharat Kandula
c509a640b7
feat: Add an API to get env values for superusers (#7043)
This commit adds the following API:

`/api/v1/admin/env` — Responds with the names and values of all environment variables currently configured, that are allowed for configuration from the UI. Some variables will be missing from this, ones that are not allowed to be edited from the configuration UI.

Doesn't take any query params. Only usable by the superuser.

Also added a `isSuperUser` boolean field to the response of `api/v1/users/me`, that will indicate whether the current user is a superuser or not.
2021-09-15 13:56:41 +05:30
Nikhil Nandagopal
01f01cd565
fix: Updated Template (#7447)
* Updated Template

* Updated Template

* Modified TC accoording to updated template

Co-authored-by: Abhijeet <ABHI.NAGARNAIK@GMAIL.COM>
2021-09-15 12:36:56 +05:30
Sumit Kumar
4d847336d0
fix: update on-page-load actions on action delete. (#7439)
* Currently, the list of actions to be run on page load is not updated when an action object gets deleted. Hence, sometimes, a previously deleted action may be set to run on page load which throws an error when the application tries to run it on page load.
* This PR updates the list of actions to be run on page load whenever any action gets deleted.
2021-09-14 14:46:24 +00:00
Trisha Anand
ef2f2d7751
feat: Smart Substitution for Google Sheets Plugin (#7397) 2021-09-14 13:04:49 +00:00
Nayan
d9a57b7b49
fix: set thread mode to comment mode in the create when creating a comment (#7303) 2021-09-13 22:18:34 +06:00
Anagh Hegde
9ca16e954e
Classify the error messages to validation or plugin errors (#7161) 2021-09-13 16:16:01 +05:30
Arpit Mohan
3a071864dd
fix: Fixing the previous page pagination for Firestore (#7374)
The problem was that the pagination was designed & tested with only 2 pages. Firestore has a different function `limitToLast` which solves for previous page pagination commands.
2021-09-13 09:07:30 +00:00
Nikhil Nandagopal
b949b7030f Updated Template 2021-09-10 23:42:49 +05:30
Nidhi
e87973454d
Switched image to latest release image to avoid breaks while developing (#7289) 2021-09-10 08:05:10 +05:30
Nidhi
7ac1017b80
fix: Js editor view mode collections accessible to anonymous users (#7321)
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-09-09 23:26:02 +05:30
dependabot[bot]
02784d9b4e
chore(deps-dev): bump axios in /app/server/scripts/node (#7318)
Bumps [axios](https://github.com/axios/axios) from 0.21.1 to 0.21.2.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.21.1...v0.21.2)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-09 22:14:58 +05:30
Trisha Anand
a272a0ec7a
feat: Add consumption of UQI UI templates (#7082)
* Same templates for mongo fetch

* WIP

* Working version

* Minor refactoring and addition of comments for understanding the code flow

* Minor fileName change

* Extra check added to only try to read options for command
2021-09-09 16:39:42 +00:00
Shrikant Sharat Kandula
9b98621010
Restore a few missing fields on appsmith.user object (#7295)
With latest update, the following fields are unavailable on the `appsmith.user` object:

- `accountNonExpired`
- `accountNonLocked`
- `credentialsNonExpired`
- `isAnonymous`
- `isEnabled`

These fields are necessary for building applications and many apps were relying on these, despite them not being listed in the documentation at <https://docs.appsmith.com/framework-reference/appsmith#user>.
2021-09-09 15:34:02 +05:30
Apeksha Bhosale
09eea59330
feat: JS Editor (#6003)
* Changes to add js plugin

* routes+reducer+create template

* added debugger to js editor page

* entity explorer changes

* create js function

* added copy, move and delete action

* added js plugin

* added existing js functions to data tree

* removed actionconfig for js collection

* new js function added to data tree and entity as well

* parsing flow added

* changes to data tree

* parse and update js functions

* small changes for def creator for js action

* create delete modified

* small changes for update

* update flow change

* entity properties added

* removed linting errors

* small changes in entity explorer

* changes for update

* move, copy implementation

* conflict resolved

* changes for dependecy map creation

* Only make the variables the binding paths

* Basic eval sync working

* Minor fixes

* removed unwanted code

* entity props and autocomplete

* saving in progress show

* redirection fix after delete js action

* removed unnecessary line

* Fixing merge conflict

* added sample body

* removed dummy data and added plugin Type

* few PR comments fixed

* automplete fix

* few more PR comments fix

* PR commnets fix

* move and copy api change

* js colleciton name refactor & 'move to page' changes & search

* view changes

* autocomplete added for js collections

* removing till async is implemented

* small changes

* separate js pane response view

* Executing functions

* js collection to js objects

* entity explorer issue and resolve action on page switch

* removed unused line

* small color fix

* js file icon added

* added js action to property pane

* Property pane changes for actions

* property pane changes for js functions

* showing syntax error for now

* actions sorted in response tab

* added js objects to slash and recent entitties

* enabling this to be used inside of function

* eval fix

* feature flag changes for entity explorer and property pane

* debugger changes

* copy bug fix

* small changes for eval

* debugger bug fix

* chnaged any to specific types

* error in console fix

* icons update

* fixed test case

* test case fix

* non empty check for functions

* evaluate test case fix

* added new icons

* text change

* updated time for debounce for trial

* after release mereg

* changed icon

* after merge

* PR comments simple

* fixed PR comments - redux form, settings remove

* js object interface changes

* name refactor

* export default change

* delete resolve actions chnage

* after merge

* adding execute fn as 3rd option and removed create new js function

* issue 7054 fixed - app crash

* execute function on response tab changes

* refactor function name part 1

* refactor of js function name

* try catch added refactor

* test fix

* not used line removed

* test cases locator fixed

Co-authored-by: Nidhi <nidhi.nair93@gmail.com>
Co-authored-by: hetunandu <hetu@appsmith.com>
2021-09-08 23:02:22 +05:30
Nayan
6247b6a3a5
feat: Generate and store ssh key to git meta data of application (#7184)
- Added new API that generates a new ssh key pair and stores that inside the git meta data of an application. The key is generated in open ssh format. The private key is stored as encrypted in DB.
2021-09-08 20:54:20 +06:00
Nidhi
a7239cfa5b
feat: Changes to add js plugin (#4861)
Adds server side changes for supporting JS editor
2021-09-08 19:17:30 +05:30
Nayan
61eaaf1aab
fix: stop creating private thread if someone tagged a user in their first comment (#7205) 2021-09-08 10:50:11 +06:00
Abhijeet
19e21e10c0
fix: Fetch all the schemas present in the postgres DB (#7204)
* Remove schema check from tables query for postgres DB in fetch structure
2021-09-07 18:50:46 +05:30
Nayan
a17be566a9
feat: Removed unnecessary fields from exported application (#7198)
Removed unnecessary fields from exported application
2021-09-07 18:33:45 +06:00
Nidhi
8b8e57f010
Use BigDecimal to maintain precision (#7189) 2021-09-07 09:14:13 +00:00
Sumit Kumar
77a33f770d
fix: fix Arangodb plugin response on update commands (#7182)
* ArangoDB has two types of command - one that fetches a response and the other that updates a document. Currently, ArangoDB plugin treats all cmds like the one that returns a response, hence when update cmds are run then an empty response is returned to the client since there is nothing to fetch. This PR adds a check to fetch the response based on the type of cmd. Hence, for an update cmd the number of writes succeeded or failed would be returned as a response.
2021-09-07 09:38:23 +05:30
Nikhil Nandagopal
1d2bcb277b Updated Template 2021-09-06 23:30:19 +05:30
Nikhil Nandagopal
e7b95d2fd9
fix: Updated Template (#7169)
* Updated Template

* Updated Template

* Updated Template
2021-09-06 22:28:48 +05:30
Anagh Hegde
31180a4b28
feat: API to save git config data (#6930)
* API to save git config data

* Store the git config data as global/default property in user data object

* Add API to fetch the config for the user
2021-09-06 19:50:12 +05:30
Abhijeet
168000be92
[skip_changelog] Feature/directory structure for version control (#6757)
* Insert git application metadata to application object, for git sync/version control feature there is a need to save the application in the structured format

* Added changelog to index application collection with git branch and remoteurl

* Rehydrate and dehydrate applications among different instances

* Added serailisation purpose while exporting the application to make distinction between version control and regular import-export flow 

* Git file operations moved to appsmith-git module

* Delete json reference from directory for deleted resource in DB

* Added git authentication in application metadata

* Replace String with Path to handle file path in git file structure
2021-09-06 18:18:18 +05:30
Rishabh Saxena
685aa3b98c
feat: make comments publicly available (#7143) 2021-09-06 18:04:40 +05:30
Nayan
c4a7c1fb01
feat: add last edit information to application (#6948)
Adds the last edit time and editor username to the application when there is a change in the application.
2021-09-06 16:17:02 +06:00
Rishabh Saxena
a2b38c86eb
feat: init bottom bar skeleton, add feature flag for git (#7105) 2021-09-06 14:59:35 +05:30
Shrikant Sharat Kandula
0a08f9b807
fix: Rename user company to user's useCase (#7093)
We're not going to be collecting the company name for the self-hosted installation, but instead we'll be collecting the use-case that is being solved with Appsmith.
2021-09-06 12:28:47 +05:30
Trisha Anand
7526129a3a
feat: Adding APPSMITH_PLUGIN_MAX_RESPONSE_SIZE which can be configured as an environment variable to increase plugin response size (currently only supported for Postgres Plugin) (#7126)
* Adding `APPSMITH_PLUGIN_MAX_RESPONSE_SIZE` which can be configured as an environment variable to increase plugin response size (currently only supported for Postgres Plugin)

* Updated error message + added the environment variable to the template docker env files for new installations
2021-09-05 15:38:36 +00:00
Anagh Hegde
a4434872b0
Classify the Plugin errors to Action and Datasource configuration issues (#7095) 2021-09-04 02:54:23 +05:30
Nayan
b5529310d1
feat: Removed check on template organization ID when creating the default organization and application after signup (#7084) 2021-09-03 15:32:53 +06:00
Anagh Hegde
d4ee07ab58
Remove list widget from suggested widget on action execution (#7038) 2021-09-03 11:52:27 +05:30
Trisha Anand
cbf7dc2745
feat: New Mongo UQI Plugin with new datastructures (with old UI) (#6666) 2021-09-02 14:00:18 +00:00
Trisha Anand
f6df16bde4
fix: Json smart substitution breaks when evaluated value contains the character '?' (#7031)
* Minor refactoring

* Partial code change to replace question mark with appsmith placeholder

* Working version

* Removing unnecessary code

* Added test case to assert that when evaluated value contains a "?", the replacements are still correct

* Added test case in Mongo Plugin as well for the same scenario

* Minor change in the language of the comment
2021-09-02 12:30:04 +00:00
Nayan
b98f646642
feat: Redirect after signup (#6962)
* WIP

* -redirect to newly created application after signup

* feat: create default application if no redirect url exists. also add a param to indicate first time user experience

* -updated function comment as per PR review

* -updated the create application using existing function

* -added check whether application is null when creating application page url

* -removed unnecessary refactoring

* -removed unused parameter from method
2021-09-02 12:25:39 +06:00
Abhijeet
3414195b69
[skip_changelog] Update error message for sign-in source capitalization issue for OAuth (#7004) 2021-08-31 16:13:21 +05:30
Abhijeet
85323b2de3
[skip_changelog] Show table schema alongwith table name for the generated CRUD page (#6992) 2021-08-31 13:59:02 +05:30
Arpit Mohan
2186802889 Minor changes to the Google Sheets form labels 2021-08-31 12:30:39 +05:30
Trisha Anand
104fd168de
Distinct command output now results a JSON object instead of an array of strings (#6964) 2021-08-30 12:37:13 +00:00
Trisha Anand
23ce13ce98
[Mongo] Added default values for query for Find, Count and Distinct commands (#6960)
* Added smart defaults for query in Count, Distinct & Find commands

* Added test cases for smart inputs for query and limit for find, and query for count and distinct
2021-08-30 11:02:48 +00:00
Sumit Kumar
96144d5103
remove outermost quotes (#6938)
* This method removes the outermost quotes - single or double quotes - so that end users don't have to do it via javascript inside widget fields where they are meant to be bound.
2021-08-30 08:11:32 +05:30
Abhijeet
ea8116863e
revert: "Add version check from import-export flow (#6552)" (#6935) 2021-08-27 18:46:13 +05:30
Abhijeet
e57755e426
Revert "[skip_changelog] Update error message for import flow (#6779)" (#6927)
This reverts commit bc55021994.
2021-08-27 17:04:31 +05:30
Anagh Hegde
078ad25613
feat: Create interface for git service and add all the required classes (#6903)
* Create interface for git service and add all the requireq classes

* Fix name of the service class

* Fix name of the service class as per review
2021-08-27 14:17:35 +05:30
Rishabh Rathod
dc86c9b82b
feat: Show Crud Info Modal data from backend (#6882)
CRUD Info modal which pops up on successful CRUD generation, will now have dynamic data for each CRUD template.

Modal success `message` and `Image` to explain the working of the CRUD template is fetched from the backend.

Co-authored-by: Abhijeet <ABHI.NAGARNAIK@GMAIL.COM>
2021-08-26 12:53:39 +05:30
Shrikant Sharat Kandula
e0273ecc03
Add form data support for superuser signup API (#6844)
The superuser signup api available at /users/super currently only supports JSON payload. This PR adds support for form-data payload at the same endpoint, and makes it consistent with the normal user's signup API endpoint.
2021-08-26 06:35:32 +05:30
Anagh Hegde
58fad5f3fb
feat: Add maven module for the git operations (#6825)
* Add appsmith-git maven module for all the git related operations
2021-08-25 21:30:29 +05:30
Nayan
b1885358cb
feat: add feature flag for multiplayer feature (#6878) 2021-08-25 13:03:35 +00:00
Sumit Kumar
42273043da
- change action editor field label (#6845)
* The input box label in the Firestore plugin action editor reads Document / Collection Path which is misleading since a document is nested inside a collection and not the other way round. Hence changing it to Collection / Document Path
2021-08-25 16:04:51 +05:30
Sumit Kumar
163192d851
Feature flags snippet and linting features. (#6828)
* Introduce feature flags for snippets feature and linting feature.
2021-08-24 18:50:50 +05:30
Trisha Anand
81fb86261d
Adding support for JSON object fields in Postgres for Prepared Statement (#6761) 2021-08-23 19:03:20 +05:30
Abhijeet
bc55021994
[skip_changelog] Update error message for import flow (#6779)
* Modified the error message for import version check, to make it more humane and actionable

* Update TC
2021-08-23 13:54:43 +05:30
Nayan
843666f1fc
[Feature] - Add lastDeployedAt date to application object (#6753)
* -add lastDeployedAt date to application object

* -skip setting published date when application is forked
2021-08-23 11:33:13 +06:00
Nayan
a5ec0add23
-allow login with case insensitive emails (#6712) 2021-08-22 18:48:53 +06:00
Shrikant Sharat Kandula
094b77832f
Accept richer inputs from welcome signup form (#6650)
* Accept richer inputs from welcome signup form

* Send subscribe event when user has approved it
2021-08-20 10:10:04 +05:30
Sumit Kumar
6061206970
Feature: s3 plugin: add option to get un-signed url (#6697)
* add option to fetch un-signed url when doing list action.
* this url never expires and is generally useful when sharing access to public objects.
2021-08-20 05:48:48 +05:30
Anagh Hegde
e08c5b83e4
Add errorType to Categorise Debugger Errors (#6413)
* Add errorType to response

* Fix Test Failures

* group the errors

* Add errorType to categorise the issue/error

* remove the helper class

* update changes as per review

* Update the logical groupings of errors

* Fix formatting issues

* Updated the error types

* Update error classification
2021-08-19 19:59:25 +05:30
Anagh Hegde
e76d8c2c15
Change the name of the mock datasource (#6498)
* Change the name of the mock datasource

* Remove the hardcoded value for Cloud services

* Handle index out of exception

* Add check if the response contains necessary credentials for mockdb

* Change as per review comments

* Fix cypress test failures

* minor changes to fix cypress test for mock data according to new changes

* updated mock data locator

* Update the mockdata source name

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-08-19 17:53:30 +05:30
Nidhi
8be0580c77
Fixed template queries for PG, MySQL and Snowflake (#6698)
* Fixed template queries

* Fixed tests
2021-08-19 16:35:32 +05:30
Abhijeet
9677a4fb8f
[Skip_changelog] Enable S3 and GSheet from backend for generate CRUD page (#6706)
* Update appsmithVersion for static json file used in import application cypruss test
2021-08-19 12:04:14 +05:30
Nidhi
0cc738122a
Enable JS editor by email (#6701) 2021-08-19 09:43:32 +05:30
Abhijeet
7b98079ee8
Updated Template (#6688)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-08-18 16:59:45 +05:30
Nidhi
f5895872d4
Allow extra fields in multipart file data (#6689)
* Allow extra fields in multipart file data

* Remove extra annotation

* Reuse object mapper

* Reuse object mapper
2021-08-18 16:55:33 +05:30
Nidhi
a65bcb74b3
Fixed ds form not functional because of eval supported fields (#6665) 2021-08-18 08:16:56 +05:30
Sumit Kumar
9faa22ad58
Fix: Dynamodb Plugin: remove data type info keys from raw values. (#6652)
* A fix had been introduced earlier (I had introduced it a few months back) to remove data type info keys from the raw response. However, the transformation was not getting applied to the Query action as the transformation was explicitly limited to few actions. This PR removes that check and allows the transformation for all actions as there does not seem to be any reason to withhold this transformation for other actions.
* The earlier fix also restricted this transformation to results that had specific keys. This PR removes this check as well as it does not seem to be required and further may lead to similar issues if any particular key gets missed.
* Some other redundant checks have been removed from the flow as the transformation function itself takes care of it as edge/base case.
2021-08-17 19:18:25 +05:30
Nayan
919a420aa7
[Improvement]- Improve the password reset feature (#6545)
* -limit the rate for sending password reset requests

* -used encrypted token in password reset

* -add unit tests for the password reset issue

* -improved formatting

* -updated PR as per review comments

* -hanled IllegalStateException instead of Exception when parsing the encrypted token
2021-08-17 12:35:00 +00:00
Nidhi
92f4d878ab
Adding form data for uqi consumption (#6655) 2021-08-17 15:34:45 +05:30
Sumit Kumar
fc30554cb5
Fix: Redis plugin: extract cmd and args based on regex (#6648)
* Earlier split method was used to segregate cmd and args which failed when multiple words inside a quoted string formed one argument. e.g. set key "my value" would produce set, key, "my, value" as the tokens when split method is used, which is not correct. This change introduces a regex that would create the following tokens: set, key, "my value"
2021-08-17 13:41:41 +05:30
Nidhi
f8e6854434
Correction in auth type value for OAuth2 in view mode of datasource (#6639)
* Correction in auth type value for OAuth2
2021-08-16 22:06:02 +05:30
Abhijeet
c3f7bea904
Add version check for import-export flow (#6552)
* Added version check

* Added error message for version check while importing the file

* Added TC to check version in exported file

* Added version in FE assets for cypruss test
2021-08-16 21:32:51 +05:30
Nayan
22e477da8f
- add page name in comment notification emails (#6608) 2021-08-16 18:40:31 +06:00
Nidhi
a0462a5697
Added user email to logging context (#6619) 2021-08-16 16:36:03 +05:30
Nidhi
f05e32a97e
Throw a stale connection exception when authentication token expires in Snowflake (#6612)
* Throw a stale connection on authentication token expired

* Added JUnit test
2021-08-16 10:33:39 +00:00
Shrikant Sharat Kandula
e20d616c33
Env Manager API and super user signup API (#6473)
* Add API for env management and super user

* Add missing files

* Add API for signing up for super user

* Fix types in client code

* Add docs for env manager API

* Minor refactoring

* Remove unused updates to app startup

* Better error logging when unable to write file

Co-authored-by: Nidhi <nidhi@appsmith.com>

* Don't cache the user count (duh!)

Co-authored-by: Nidhi <nidhi@appsmith.com>
2021-08-14 07:01:54 +05:30
Shrikant Sharat Kandula
0f41886ce7
Fix NPE when Referer header is missing (#6601) 2021-08-13 22:49:09 +05:30
Nidhi
dc8673c22c
Changes to props (#6574) 2021-08-13 19:32:00 +05:30
Nidhi
f2cba9a601
Escaped inputs for bson substitution (#6565) 2021-08-13 14:44:51 +05:30
Trisha Anand
b4b1706946
BSON documents for aggregate pipelines are not valid JSON. Using BSON parse instead of JSON parse to ensure valid Mongo commands don't throw an error (#6583) 2021-08-13 08:00:34 +00:00
Abhijeet
a1398ad9b4
[skip_changelog] Check datasource validity before creating a CRUD page (#6562)
* Added check for valid datasource before generating a page

* Sanitise column names for binding in widgets

* Refactor

* Update TC
2021-08-13 11:19:06 +05:30
Nayan
c3b44aa3b3
Bugfix: Create notification when comment added, deleted and thread resolved, deleted (#6495)
* bugfix: notification not created if user is mentioned in the first comment of a thread

* -add notification event type in comment notifications
-show different message for create thread and create comment in UI

* -send notification when comment is deleted

* -send notification when comment thread is deleted
2021-08-13 10:58:42 +06:00
Abhijeet
1d0f5011ec
Update CRUD template
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-08-12 19:17:20 +05:30
Sumit Kumar
8f9963515b
Fix: Mysql plugin: add timeout to validation check to avoid connection block. (#6555)
* add timeout to validation check to avoid connection block.
2021-08-12 17:32:29 +05:30
Arpit Mohan
be675fbc6b
Adding the email rollout strategy to feature flag (#6541)
This PR adds the email based rollout strategy to features. We can now define a list of domain names in the init-flags.yml file and define the domains for which the feature will be active.

Also added tests to assert the functionality for this flag flipping strategy.
2021-08-12 04:57:45 +00:00
Nikhil Nandagopal
d6e5c0d19e Updated Template 2021-08-11 17:20:22 +05:30
Sumit Kumar
21e7dea190
hide certificate string using dots on UI (#6533)
* replace actual certificate string with '*' like it is done for hiding password on the UI.
2021-08-11 16:42:53 +05:30
Sumit Kumar
15061765da
Encrypt attributes (#6508)
* encrypt attributes
2021-08-11 11:43:57 +05:30
Trisha Anand
9251312cf1
Adding a max size of approximately 1 MB of data fetched using appsmith (#6491)
* WIP Restrict fetch size

* Adding a cut off of approximately 1 MB of data fetched in postgres plugin

* Code cleanup

* Minor cleanup
2021-08-10 11:02:19 +05:30
Anagh Hegde
e2284e4199
Add null check for the nested data structure (#6479)
* Add null check for the nested data structure

* Add unit test for the null nested data
2021-08-09 19:24:19 +05:30
Abhijeet
eb7dd49457
[skip_changelog] Form login disabled after user uses OAuth login method (#6425)
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-08-09 12:50:06 +05:30
Abhijeet
87beed34d6
[Bugfix] Empty object creation in published pages for application object fixed 2021-08-09 11:43:51 +05:30
Abhijeet
786f7f8ec9
Update CRUD template For S3 page (#6426)
Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-08-06 12:50:42 +05:30
Anagh Hegde
42c2d1f708
Fix binding query for the nested data responses (#6372)
* Fix binding query for the nested data responses

* Fix formatting issues and add comments

* Updated comments

* remove code duplications
2021-08-04 15:23:33 +05:30
Nayan
0d106a5c9d
Improvement: Add limit on password length in user signup (#6312)
* -add max password validation in FE and password validation in BE for signup

* -added unit test for password length limit

* - set max password length to 48
- add password length check in reset password

* -removed password limit check from login
2021-08-04 15:33:33 +06:00
Nidhi
57436bb2d1
Added logic to show form data requests in debugger (#6350)
* Added logic to show form data requests in debugger

* Tests and comments

* Tests
2021-08-04 10:47:41 +05:30
Anagh Hegde
528716cc7a
Fix authentication issue while creating mockdata (#6294)
* Re set password to avoid double encryption while creating suffix datasource

* Add test to query on mockdata source

* Check the Authentication type before setting the password
2021-08-03 21:17:58 +05:30
Abhijeet
365c6e3f39
Added null check to verify empty layout in generate CRUD page flow (#6359) 2021-08-03 19:28:36 +05:30
Abhijeet
60cbaad9bd
Add list buckets API to S3 (#6334)
* Add list buckets action method to S3

* Added TC for list bucket method
2021-08-03 18:04:47 +05:30
Abhijeet
7052e97547
Added instance Id in analytics datapoint (#6252) 2021-08-03 12:24:21 +05:30
Abhijeet
70cf1e39b8
Snowflake get structure error resolved for columns query (#6316)
* Table name reference copied from templates body to avoid misconfiguration in action body
2021-08-02 19:03:28 +05:30
Arpit Mohan
538fe8ea00 Merge branch 'release' of github.com:appsmithorg/appsmith into release 2021-08-02 14:42:58 +05:30
Arpit Mohan
c466056223 Fixing bug where the comment feature flag was disabled for all users 2021-08-02 14:42:43 +05:30
Anagh Hegde
9dbb16747e
Add analytics event for mock-data creation (#6136)
* Add analytics event for mockdata creation

* Use the correct name for the mockdatasource

* Added FE analytics for mock datasource

* Changes per review

* Remove the method call

* Fix indentation issue

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-08-02 08:30:56 +05:30
Nayan
183cc97b50
Fix: Mark comment threads as viewed when they are resolved (#6251)
* -log widget type in analytics service when new thread created
-set viewed=true for resolved threads

* fixed typo

* fix the test case when there is not widget type
2021-08-02 00:12:41 +06:00
Shrikant Sharat Kandula
1c70a104a6
Fix NPE when Segment key not available correctly (#6244) 2021-07-30 11:36:42 +05:30
Arpit Mohan
8dd41ab947
Adding expiry of 30 days to session cookies (#6224)
Fixes #5872

Adding an expiry of 30 days to the cookie to ensure that browsers don't delete the cookie when the browser session is closed.
2021-07-29 18:13:22 +05:30
Abhijeet
c8928d34ed
Remove autogenerate column from insert query for generate CRUD page from DB table (#6183)
* Removed autogenerated column reference from InsertQuery

* Disable page generation flow for layout with widgets

* Updated Template

* TCs modify for updated template application

* Allow column with only String datatype as a search column in SelectQuery

* Remove AtomicRef as not needed

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-07-28 13:14:04 +05:30
Abhijeet
8aebeb50dd
Add analytics event for self-hosted instances (#6198)
* Enable analytics event to get triggered for self-hosted instances

* Add conditional logic for analyticsRunner method
2021-07-28 12:15:48 +05:30
Nidhi
2cb1aa3de1
Added validation for refactor name (#6165) 2021-07-28 11:19:23 +05:30
Nidhi
337e6b7682
Minor fixes on the Google Sheets plugin (#6188)
* Delete method messages #5302

* Delete method case sensitivity #5293
2021-07-27 16:43:34 +05:30
Nidhi
8d341a40a6
Setting ActionExecutionRequest in response from executed API call (#6147)
* Setting ActionExecutionRequest in response from executed API call

* Added logic during error state
2021-07-27 15:45:28 +05:30
Nidhi
4927f64262
Updated multipart dto (#6157) 2021-07-27 12:23:57 +05:30
Nayan
8b1c5f486d
[Feature] Add filter in get comment threads (#6122)
* -added filter by resolved state in get comment thread API

* -add aggregation and lookup to fetch comment threads

* -added unit test for the repository aggregation method

* -reverted the aggregation lookup

* -add unit test for get all thread

* -removed unused method

* -resolved merge conflicts

* -skip hardcoded property value in query
2021-07-26 17:14:47 +00:00
Nayan
667179d5a1
Stop creating bot comment thread when user is app viewer (#6111)
* -stop creating bot comment thread when user is app viewer

* -added comments to the method
2021-07-26 15:28:49 +06:00
Snyk bot
decd171b8f
fix: app/server/appsmith-server/pom.xml to reduce vulnerabilities (#5163)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JAVA-COMGOOGLEGUAVA-1015415
- https://snyk.io/vuln/SNYK-JAVA-ORGSPRINGFRAMEWORK-1009832
- https://snyk.io/vuln/SNYK-JAVA-ORGSPRINGFRAMEWORK-1296829
- https://snyk.io/vuln/SNYK-JAVA-ORGSPRINGFRAMEWORKSECURITY-1290497

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2021-07-26 08:39:13 +00:00
Snyk bot
652ad3506a
fix: app/server/appsmith-plugins/firestorePlugin/pom.xml to reduce vulnerabilities (#5864)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JAVA-IONETTY-1317097
2021-07-26 08:26:40 +00:00
Snyk bot
8428990cee
fix: app/server/appsmith-interfaces/pom.xml to reduce vulnerabilities (#6063)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JAVA-COMGOOGLEGUAVA-1015415
- https://snyk.io/vuln/SNYK-JAVA-COMGOOGLEGUAVA-32236
2021-07-26 13:30:27 +05:30
Arpit Mohan
a99bb17c1a
Feature flags on the server (#5926) 2021-07-26 12:31:26 +05:30
yatinappsmith
7573bbe661
Added mvn failure check (#6107) 2021-07-26 05:37:10 +05:30
Abhijeet
102e36ce95
Bugfix for generate page from db table, Analytics event after the successful CRUD page creation (#6087)
* Analytics datapoint after the successful page generation

* S3 bucket referenced from plugin specified template
2021-07-23 20:09:02 +05:30
Nayan
2c437a41e6
[Bugfix] Mark a comment thread as unread when there is a new comment in the thread (#6100)
* -mark thread as unread and unresolved when new comments added

* -added test
2021-07-23 19:30:36 +06:00
Sumit Kumar
f486be1979
fix data type appearing with data value for un-indentified types. (#6099)
* fix data type appearing with data value for types that JDBC does not internally map.
2021-07-23 17:07:25 +05:30
Trisha Anand
a8df4ee010
Adding e.printStackTrace to errors in redshift as a hotfix (#6094) 2021-07-23 14:39:48 +05:30
Anagh Hegde
cef530e835
Add binding query to the suggested widget to improve the experience (#6016)
* Add binding query to the suggested widget to improve the experience

* Fix test failures

* Add comments and change as per review

* Move the query template to enum class

* Change Test cases as per review

* Remove unused methods from the test class

* Remove commented code

* Use proper attributes in binding query

* Refactor suggestWidget method to support node

* Add unit tests
2021-07-23 14:29:27 +05:30
Anagh Hegde
c82c518f60
[Bug] - Add check for duplicate name issue while creating mock data set (#6039)
* Add check for duplicate name issue while creating mock data set

* Fix Test failures
2021-07-23 13:34:03 +05:30
Abhijeet
9633d1e1c3
Add autogenerate field in datasource structure for each column (#6018)
* Added field to autogenerate values in DB column

* Added comment and refactor

* Autogenerate field update according to names instead of type for ArangoDB
2021-07-23 09:00:32 +05:30
Snyk bot
d8dcdb8323
fix: app/server/appsmith-server/pom.xml to reduce vulnerabilities (#6062)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JAVA-COMGOOGLEGUAVA-1015415
2021-07-22 23:23:45 +05:30
Abhijeet
a6c357ac16
Removed support for S3 and GSheets for generate CRUD page (#6076)
* Removed support for S3 and GSheets for now as FE code does not have support for these plugins yet

* Commented TCs for S3 and GSheets
2021-07-22 19:12:32 +05:30
Nikhil Nandagopal
ee1c624426 Updated Template 2021-07-22 15:24:05 +05:30
Nikhil Nandagopal
fe71345768 Updated Template 2021-07-22 15:21:54 +05:30
Nikhil Nandagopal
5cc21dbe1d Updated Template 2021-07-22 15:19:39 +05:30
Abhijeet
886ed672ca
Extend backend support for S3 and Google Sheets plugin for generating page from DB table feature (#5997)
* Comments update

* S3 plugin support added

* Support for GSheet

* GSheet and S3 support, TCs update

* TC added for MongoDB datasource

* ilike opertor for SQL fixed

* Resolve merge conflicts

* Seperate template page for postgresql and other SQL datasources as there are minor changes in action bodies

* Added ListFiles query as on page load action, Insert all the columns from user's table in SelectWidget

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-07-22 14:24:22 +05:30
Bhavin K
7259d1e908
Bug/mustache binding extra space (#5587)
Table data was not populating when extra space inside the mustache binding, This is now fixed for list and table widget

* removed return statements from computed values

* list widget responce update

* table data handled return, added migration

* removed unused function

* updatetd rowBinding string generator

* fix failing cypress test

* fix cypress tests
2021-07-22 14:13:58 +05:30
Abhijeet
597a53c4d5
[Bug] Fix for immutable map in analytics service (#6051)
* Updates are made on local Map to avoid ImmutableCollection issue in analytics service
2021-07-21 17:39:53 +05:30
Nayan
5970d06164
[Improvement] Update the positioning parameters for bot threads (#6036)
* -updated the position field for comment threads

* -use default origin header when origin header not present in comment email
2021-07-21 15:24:39 +06:00
Nayan
5261f782df
Fixed comment missing issue when user role is changed (#5898)
* -fixed comment missing issue when user role is changed

* WIP: add test for policy utils

* -added test for policy utils comment permission when users are added or removed

* -removed unused code

* -removed public access modifier for an internal function

* -add test to verify comment thread policy updated when user role changed in organization

* -add tests for add user and remove user from organization to test comment thread policies
2021-07-21 12:30:34 +06:00
Arpit Mohan
9f29dd028d
Improving error message for invalid entities (#5977)
Also removing the toast message for successful action runs. With the debugger, this is no longer required.
2021-07-20 11:07:20 +05:30
Anagh Hegde
ed7e4457fe
Bug - Fix page order sorting (#5971)
* Use the order from Application object

* Fix the bug in test cases
2021-07-20 09:09:20 +05:30
Nayan
6efe78479f
[Enhancement] Add link to unsubscribe from email notification for a comment thread (#5769)
* -added API to and template for unsubscribe  comment thread

* -changed public API url to make it sepratate from client public pages
-included the unsubscribe link to email body

* -made unsubscribe email notification API to private

* -added unsubscribe page

* -removed unused code

* Update app/client/cypress/integration/Smoke_TestSuite/ClientSideTests/Comments/UnsubscribeEmail_spec.js

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Update app/client/src/pages/common/UnsubscribeEmail.tsx

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Update app/client/src/pages/common/UnsubscribeEmail.tsx

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/BaseAppsmithRepositoryImpl.java

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* -updated text as per lint error

* -updated text as per lint error

* -moved unsubscribe screen texts to messages.ts

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-07-20 00:14:38 +06:00
Rishabh Saxena
25a6fd2240
Fixes related to the comments feature (#5904) 2021-07-19 20:58:41 +05:30
Nayan
5185a0af5c
Log analytics event when comment created (#5953)
* -log analytics event when comment created

* -mocked analytics for comment tests

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/CommentServiceImpl.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-07-19 20:45:37 +06:00
Trisha Anand
1dfc624a13
[Bug Fix : Rest Api] Base64 encode binary response before sending it out to client (#5958)
* 1. For binary data in the response, base64 encoding the same before sending it out on the wire (instead of default conversion to string)
2. Added a new header which sets the data type of the response body.

* Minor code reformatting

* Fixed failing test cases

* The new header created should send the values in an array instead of a single value
2021-07-19 19:29:19 +05:30
Anagh Hegde
d5d6c3fa9c
Feature/page order API refactor (#5799)
* Refactor Page order API - Instead of the order filed use the Order persistency in Array offered by Mongo

* Add migration script to remove the order filed from the Application Pages

* Change unit tests as per the new implementation

* Fix indentation issues

* Compute pages based on the view mode

* Removed order field in response and changed the page order API response to List of pages instead of the application object

* Remove the Order filed from the Response class

* Use the $push instead of $addToSet to maintain order of pages in array
2021-07-19 15:12:29 +05:30
Arpit Mohan
9a4b9c27cd
Locking mongo Docker container to 4.4.6 (#5950)
Mongo v5 has some issues with seeding data. Refer:  https://stackoverflow.com/questions/68392064/error-when-running-mongo-image-docker-entrypoint-sh-line-381
Hence, locking the mongo version to a known working tag till we have more information on the problem.
2021-07-19 13:39:37 +05:30
Abhijeet
db0445c64a
Fix failing server testcases (#5948)
* Add constructor in AnalyticsService
2021-07-19 13:04:59 +05:30
Abhijeet
bf9257d543
Refactor analytics events to encrypt or remove sensitive information (#5920)
* Applied encryption for self-hosted instances username field, removed sensitive fields from request

* Request field added for Appsmith cloud instance

* Config variables moved to a central file
2021-07-18 15:18:11 +05:30
Nayan
ac654d754f
Fix datetime parsing error in notifications (#5893)
* -fix datetime parser exception in comment thread notifications

* -resolved merge conflicts
2021-07-17 16:26:30 +06:00
Trisha Anand
ede0df21bc
Adding timeout on execution of postgres and ms sql actions (#5922) 2021-07-16 20:24:18 +05:30
Abhijeet
c5a909ddc8
Google sheet APIs for getting all the spreadsheet, getting all sheets within spreadsheet and column headers (#5875)
* API to run DB query using plugin specified templates

* Included get spreadsheet metadata in get info method

* Added TCs for checking Spreadsheet info response

* Added error message for invalid datasources

* Authentication check for datasource modified to AuthenticationStatus field
2021-07-16 16:15:29 +05:30
Anagh Hegde
3a4de769ee
Call the WidgetSuggestion method before processing data types. (#5907) 2021-07-16 15:40:27 +05:30
Nayan
8fcbb6e4c1
Add a bot thread when someone adds first comment or tags someone is the comment for the first time (#5521)
* resolved conflicts

* -fixed some issues in PR

* -used sequence in generating thread number

* -refactored the create thread method

* -refactored comment service

* -add bot reply to the first comment thread of an user

* -added a new bot thread when user resolves the first bot thread

* -handle the case when user data can be absent

* -add organization id and widget type to comment and comment threads

* -resolved conflicts

* -mark appsmith bot username as a tagged user in the bot comment

* -turn a private thread to a public thread when someone is tagged in it

* -updated as per the review comments

* -fixed compile error in unit test

* -updated as per PR review comments

* -removed commented code
2021-07-15 23:45:08 +06:00
Trisha Anand
b8eb2f1aa5
Adding support for explicit data type casting in postgres prepared statement (#5842)
* Adding support for explicit data type casting in postgres prepared statement

* Added text and int psql data types for support in explicit typecasting

* Documenting the code
2021-07-15 19:33:32 +05:30
Anagh Hegde
f169c8c5a0
Add login mode to track for analytics purpose (#5870) 2021-07-15 14:36:57 +05:30
lifeneedspassion
95d5557749
Add UTF-8 encoding in the RestApiPlugin for all invocations
The default charset is determined during virtual-machine startup and typically depends upon the locale and charset of the underlying operating system (#5788)

Co-authored-by: 王昆 <quincy@cloudtogo.cn>
2021-07-15 11:36:18 +05:30
Sumit Kumar
50ae200350
Fix: fix read only option for postgres connection (#5848)
* fix read only option for Postgres connection.
2021-07-15 09:55:35 +05:30
Anagh Hegde
99a06728d4
Suggest List of possible widgets and add exception handling (#5800)
* Add try catch block to handle the data conversion exception

* Suggest widget only in edit mode

* Add JsonNodeType to the widget suggestion logic

* Use ClassCastException instead of generic exception

* add tests for the array data type

* Suggest list of possible widgets instead of one

* Use constant in if condition to avoid possible NPE
Fix typo
2021-07-14 22:25:13 +05:30
Nikhil Nandagopal
ce38354b41 Updated Template 2021-07-14 17:40:45 +05:30
Nidhi
597033e623
Modified error message and code for authentication failure (#5810) 2021-07-14 11:36:25 +05:30
Nidhi
4f42c29f95
Ignore comments while preparing executable statement in MySQL plugin (#5838)
* Ignore comments while preparing executable statement in MySQL plugin

* Added tests
2021-07-14 11:36:10 +05:30
Sumit Kumar
9c2ac9f26a
Feature: add support in Redis plugin to select database when creating db connection. (#5807)
* add support in Redis plugin to select database when creating db connection.
* refactor code to use URI string instead of constructor call, because of lack of appropriate constructor.
* add TCs.
* fix validate datasource.
2021-07-13 15:22:08 +05:30
Sumit Kumar
727f4aa4b3
Feature: return hint message to user if the expected content type is json but the api response is not a valid json. (#5666)
* return hint message to user if the expected content type is json but the api response is not a valid json.

Co-authored-by: Apeksha Bhosale <7846888+ApekshaBhosale@users.noreply.github.com>
2021-07-09 22:31:50 +05:30
Confidence Okoghenun
f5f73b47c6
Adds YT Setup Videos to Docs (#5744) 2021-07-09 15:54:34 +05:30
Nidhi
193f20ad7a
Redirecting to view mode of datasource after authorization (#5758)
* view mode true

* removed new query btn from view mode for google sheet datasource

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-07-09 15:13:54 +05:30
Nayan
45198c7d68
Increased maximum image size to be uploaded as profile picture (#5641)
* -increased max image size to upload as profile picture

* -removed unnecessary changes

* -show message on maximum allowed file size
2021-07-09 15:38:14 +06:00
dependabot[bot]
aafefe8ce9
Bump hibernate-validator in /app/server/appsmith-interfaces (#4937)
Bumps [hibernate-validator](https://github.com/hibernate/hibernate-validator) from 6.0.18.Final to 6.0.20.Final.
- [Release notes](https://github.com/hibernate/hibernate-validator/releases)
- [Changelog](https://github.com/hibernate/hibernate-validator/blob/6.0.20.Final/changelog.txt)
- [Commits](https://github.com/hibernate/hibernate-validator/compare/6.0.18.Final...6.0.20.Final)

---
updated-dependencies:
- dependency-name: org.hibernate.validator:hibernate-validator
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-08 18:12:58 +05:30
Nikhil Nandagopal
4ffeca4a56 Updated Template 2021-07-08 17:26:49 +05:30
Rishabh Rathod
c27974b2a2
Replace pluginName with packageName in mockDB creation (#5720)
* replace pluginName with packageName in mockDB creation

* Replace pluginName with packageName

Co-authored-by: Anagh Hegde <anagh@appsmith.com>
2021-07-08 16:03:41 +05:30
Nikhil Nandagopal
6bcb7c2f62 Updated Template 2021-07-08 14:40:50 +05:30
Shrikant Sharat Kandula
37db1ef376
Fix new user event being fired on every login (#5675) 2021-07-08 13:51:00 +05:30
Nikhil Nandagopal
3ad73cd2c7 Updated Template 2021-07-08 12:01:12 +05:30
Nikhil Nandagopal
fb35594bf2 Updated Template 2021-07-08 11:59:20 +05:30
Anagh Hegde
0154017836
Refactor Get mock-data set API (#5620)
* Call cloud services to fetch mock datasets

* Call cloud services to fetch mock datasets

* Change the MockData Config,

* Remove unused import statements and fix small indentation issues

* 1. Moved the mock data creation and fetching to a separate class
2. Added plugin type to mockdata class
3. Used pluginName to identify the db type
4. Removed the block call mock data creating method
5. Added unit tests for the mockdata

* 1. Removed unused field from contract and
2. Updated the url to cloud service

* 1. renamed the field of mockdata contract
2. Updated the test cases

* using new mock datasources apis

* 1. Added the Cloud Service release end point to env variable

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-07-08 11:29:11 +05:30
Trisha Anand
18fa47e2b4
Taking Smart Substitution for Mongo out of Beta (#5650) 2021-07-08 11:25:53 +05:30
Abhijeet
07944f214b
Provide API for MongoDB datasource to generate page from DB table feature (#5590)
* Template application updated to include separate page for MongoDB as a datasource

* Support for mongoDB as datasource added

* Added comments

Co-authored-by: Nikhil Nandagopal <nikhil.nandagopal@gmail.com>
2021-07-08 07:18:23 +05:30
Nayan
500efb0dd7
Updated plugin logos from png to svg (#5671)
* -updated svg logo for plugins

* -added svg logo for ArangoDB plugin
-used MongockTemplate instead of MongoTemplate in the db migration
2021-07-07 20:02:59 +06:00
Aswath K
2c6e8a388e
Shows 'last saved' time on hovering over the 'saved' icon (#5092) 2021-07-07 18:17:01 +05:30
Abhijeet
de511e47f6
Bugfix OAuth2.0 datasource authentication for import export application feature (#5658) 2021-07-07 17:49:16 +05:30
Nayan
eb557035b2
Added new API to get unread comment thread count (#5429)
* -added new API to get unread comment thread count

* -changed query to get unread comments so that it only searches where user has permission

* -added unit test for unread comment thread count

* -improved formatting

* -updated as per PR review
2021-07-07 13:00:33 +06:00
Abhijeet
17006ffe0e
Minimise DB calls to throw duplicate app name error message (#5625)
* Minimise DB calls to throw duplicate error message for updating application name
2021-07-06 22:20:47 +05:30
Trisha Anand
d1ef21dce3
Reliable change application access from public to private & vice versa (#5530)
* Changing application public/private view can no longer be cancelled (for example by client timeout, etc.)

* Update test to only read the datasource used in the application

* Incorporated review comment

* Comment update
2021-07-06 21:49:35 +05:30
Sumit Kumar
d68ca405a8
Feature: integrate ArangoDB plugin (#5518)
* integrate arangoDB plugin.

Co-authored-by: Ming Fang <mingfang@mac.com>
Co-authored-by: Automated Github Action <automated@github.com>
Co-authored-by: Trisha Anand <trisha@appsmith.com>
2021-07-06 18:40:19 +05:30
Anagh Hegde
027603697a
Suggest widget after executing Action (#5574)
* Add widget suggestion to query execution flow

* Change the logic for Chart widget suggestion

* Add tests for the all the suggested widgets

* Added enum class to store widget types
2021-07-06 18:15:48 +05:30
Arpit Mohan
28284b7207
Setting string response if the JSON is not valid (#5642) 2021-07-06 18:07:08 +05:30
Nidhi
7da59a4afe
Content length for multipart (#5556) 2021-07-05 19:28:45 +05:30
Trisha Anand
9dfe66d45c
[Bug] Mongo Plugin : Handle socket exception when the connection is dropped by Mongo database (#5499) 2021-07-01 17:23:24 +05:30
Nidhi
def5cb5c1d
Content type and filename for multipart form data parts (#5509)
* Content type and filename for multipart form data parts

* Handling empty json

* Handling empty json
2021-07-01 15:53:53 +05:30
Nayan
13fec4e30e
Update email notification template when there is comment (#5392)
* WIP: updated the email template

* -updated the comment link in email as per the user role

* -rebased from release

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/solutions/EmailEventHandler.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* -updated the template as per review comment

* -removed unused email template file

* -fixed compile error

* -checked application policy instead of role when sending email for comment

* -minor changes as per PR review comment

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-06-30 20:46:56 +06:00
Nikhil Nandagopal
ed40980f2d
Update CRUD-DB-Table-Template-Application.json 2021-06-30 11:24:37 +05:30
Anagh Hegde
40d147d5b5
Feature/editor simplify - API to work with mock data sets (#5421)
* Added an API to get list of mock datsets
Removed the flow of

* Removed the auto populate of mock datasets flow when the user sign up first time

* Fixed indentation issues

* Instead of sending empty datasource, change template value to empty

* Add only the configs to response instead of entire mongo doc

* Add API to create mock data set
2021-06-29 20:17:00 +05:30
Nikhil Nandagopal
1112c20f7c Updated Template 2021-06-29 17:20:53 +05:30
Nikhil Nandagopal
95b41f36d3 Updated Template 2021-06-29 16:19:46 +05:30
Nikhil Nandagopal
8c2f5f50ce Updated Template 2021-06-29 13:10:04 +05:30
Nikhil Nandagopal
82fbf1c95d Updated Template 2021-06-29 12:18:38 +05:30
Nikhil Nandagopal
4c3f63305d Updated Template 2021-06-29 12:16:11 +05:30
Trisha Anand
02e5445731
[Mongo Plugin] Raw is now a command option instead of Form vs Raw (#5446)
* Raw is now a command option instead of Form vs Raw

* Added database migration for migration raw input type to be of raw command type

* Fixed test case failure

* Minor cleanup
2021-06-29 11:13:17 +05:30
Nayan
36c399ac4f
Fix the comment missing issue when new users added to organization (#5314)
* -Add the newly added user to existing comment threads

* -update PR as per review comment

* -updated the PR as per review
2021-06-28 14:50:39 +06:00
Nikhil Nandagopal
e8ba1bee7f
removed quotes from sql templates because of prepared statements being on (#5404)
removed comments from sql templates confusing users with errors because of linting
2021-06-25 14:39:39 +05:30
Sumit Kumar
b2d4454492
Feature: add api key based and bearer token based authentication options to REST API datasource (#5367)
* add api key based and bearer token based authentication options to REST API datasource
* this change is ported to release from Feature: datasource changes for api key auth, bearer token auth, combine config. #4683
2021-06-25 12:15:48 +05:30
Abhijeet
6ec6f9578c
API for generating a page with UI based on the structure of a given database table (#5269)
* Keymapping, Clone actions from template application, Used exported application JSON file as template app

* Delete references of widgets from action config if extra widgets not required

* Separate API added when pageId is not present with the client

* Added TCs

* Update in regex, enable reqArgsConstructor, separate DTO for CRUD page
2021-06-24 14:58:57 +05:30
Nayan
9a247f3e78
Fix bug where some fields are missing for notifications from the API (#5336)
* -set createdAt and type fields in notification
-add threadId in response for comment

* -fixed bug with unread notification count
2021-06-24 14:35:30 +06:00
Rishabh Saxena
29a6136380
Set mode for comments (#5372) 2021-06-24 12:51:01 +05:30
Nayan
e52680fb1f
Feature/implement comment thread subscriber (#5261)
* -send email to users who are subscribed to a thread only

* -fixed null pointer exception while set subscriber in create thread

* -updated as per PR comments and review
2021-06-23 17:24:57 +06:00
Abhijeet
7fc04f043f
Error message when updating duplicate application name modified to give more contextual information (#5341) 2021-06-23 13:08:12 +05:30
Anagh Hegde
a1defb9544
Remove the unnecessary comments 2021-06-23 11:16:15 +05:30
Anagh Hegde
0d57f3c132
Merge branch 'release' into feature/page-order-api 2021-06-23 10:54:17 +05:30
Anagh Hegde
fa9a1bc488 Set the order to published pages 2021-06-23 10:51:25 +05:30
Sumit Kumar
7787a0ddac
Bug Fix: Fix dynamic binding substitution failure with Firestore where condition input boxes. (#5280)
Modify dynamic binding substitution method to handle list and map types containing generic type values.
2021-06-21 19:36:06 +05:30
Trisha Anand
a89990e157
Mongo For Update Migrations (#5291)
* Commenting out migration for quick fix to bring up release

* Added null checks for the incomplete configured update single and update many queries
2021-06-21 18:37:33 +05:30
Abhijeet
598a48cea7
Migration for createdAt and updatedAt field for userCollection if not present (#5249) 2021-06-19 18:03:23 +05:30
Anagh Hegde
32ecffbf8f Merge remote-tracking branch 'origin/feature/page-order-api' into feature/page-order-api 2021-06-18 22:40:43 +05:30
Anagh Hegde
9ad742e97e Change the test method name to more meaningful,.equals for boolean comparision, fix indentation 2021-06-18 22:40:16 +05:30
abhishek nayak
37708a4128
Merge pull request #5231 from appsmithorg/snyk-fix-45d4107a9d315a1ce1ee74338cb35c92
[Snyk] Fix for 26 vulnerabilities
2021-06-18 20:42:01 +05:30
Anagh Hegde
82a1289f45
Merge branch 'release' into feature/page-order-api 2021-06-18 15:15:48 +05:30
Anagh Hegde
e02e572df7 Change the logic to have check for the order of all the pages 2021-06-18 14:53:33 +05:30
Shrikant Sharat Kandula
040d3b0cc4 Fix publish application event not being sent 2021-06-18 13:27:31 +05:30
Trisha Anand
ee4429b973
Commenting out migration for quick fix to bring up release (#5248) 2021-06-18 12:10:15 +05:30
Nidhi
57adbd7777
Schema info in templates query (#5244) 2021-06-18 11:31:17 +05:30
Shrikant Sharat Kandula
7d08187677
Merge pull request #5233 from appsmithorg/fix/send-publish-event-only-on-client-publish
Fix app publish event sent at wrong times
2021-06-18 11:19:36 +05:30
Trisha Anand
388418cec5
Merge the two update commands into a single update command in Mongo Form (#5171)
* Update commands have been merged into a single update command for both single and multi updates

* Added migrations to migrate any update one mongo form command to new update command

* Incorporated review comments
2021-06-18 11:04:39 +05:30
Snyk bot
5c17d962a0
[Snyk] Security upgrade net.minidev:json-smart from 2.3 to 2.4.7 (#5225)
* fix: app/server/appsmith-interfaces/pom.xml to reduce vulnerabilities

The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JAVA-NETMINIDEV-1078499
- https://snyk.io/vuln/SNYK-JAVA-NETMINIDEV-1298655

* Updating the json-smart dependency to the latest one

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-06-18 10:54:34 +05:30
Shrikant Sharat Kandula
6c67c20576 Another typo 🤦🏻‍♂️ 2021-06-18 10:48:58 +05:30
Shrikant Sharat Kandula
45b062b83b Typo 2021-06-18 10:43:10 +05:30
Anagh Hegde
bd3369dd03 Remove * import statements 2021-06-18 10:25:36 +05:30
Abhijeet
b87825523e
Support for orphan API without any datasource added for import-export functionality (#5232) 2021-06-18 07:20:28 +05:30
Shrikant Sharat Kandula
11218c2b19 Fix app publish event sent at wrong times 2021-06-17 19:28:50 +05:30
snyk-bot
e8d731a21a
fix: app/server/appsmith-interfaces/pom.xml & app/server/appsmith-server/pom.xml to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1052449
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1052450
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1054588
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1056414
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1056416
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1056417
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1056418
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1056419
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1056420
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1056421
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1056424
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1056425
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1056426
- https://snyk.io/vuln/SNYK-JAVA-COMFASTERXMLJACKSONCORE-1056427
- https://snyk.io/vuln/SNYK-JAVA-COMMONSBEANUTILS-460111
- https://snyk.io/vuln/SNYK-JAVA-IONETTY-1020439
- https://snyk.io/vuln/SNYK-JAVA-IONETTY-1070799
- https://snyk.io/vuln/SNYK-JAVA-IONETTY-1082238
- https://snyk.io/vuln/SNYK-JAVA-IONETTY-1083991
- https://snyk.io/vuln/SNYK-JAVA-IONETTY-1089809
- https://snyk.io/vuln/SNYK-JAVA-IOPROJECTREACTORNETTY-559154
- https://snyk.io/vuln/SNYK-JAVA-IOPROJECTREACTORNETTY-559155
- https://snyk.io/vuln/SNYK-JAVA-ORGSPRINGFRAMEWORK-1009832
- https://snyk.io/vuln/SNYK-JAVA-ORGSPRINGFRAMEWORK-1296829
- https://snyk.io/vuln/SNYK-JAVA-ORGSPRINGFRAMEWORKSECURITY-1290497
- https://snyk.io/vuln/SNYK-JAVA-ORGYAML-537645
2021-06-17 13:27:03 +00:00
Nidhi
884636f33f
Snowflake integration (#5176)
* POC for snowflake integration with Appsmith

This is just a rough version to see if the functionality works. Needs to be cleaned up & enhanced for production usage.

* Plugin with connection, monos, ds testing, validation, templates, structure and forms

* Better comments

* Default schema to public

* Changed logging destination, populated request in result and used thread group for datasource creation

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2021-06-17 15:03:18 +05:30
Rishabh Saxena
9c99f36bd6
Comments feature fixes (view mode) (#5081) 2021-06-17 13:07:27 +05:30
Sumit Kumar
26cd46ea53
Fix: parse json/jsonb data type values as json for postgres plugin (#5135)
* parse json/jsonb data type values as json
* add support for json (non binary, earlier support for jsonb was added)
2021-06-17 11:31:34 +05:30
Nayan
a1a4f0ef3f
Fature/add pagination in notifications (#5096)
* -added pagination to notifications API

* -add unit tests for notification pagination

* -added unread count in get notifications API

* -moved notification creations to notification service from comment service

* -add repository method to mark a notification as read

* -added repository to update isRead by for username

* -add API to mark notification as read

* -addd application id and application name in notification

* -save application id and name in notification when creating notification for comment and comment threads

* -added page id, from user information in notifications

* -fixed failing unit test due to dependency error

* -removed unused imports

* -extended base controller in notification controller

* - introduced pagination based on before created data instead of offset based pagination

* -moved application id, name and page id inside comment from notification

* -moved author information from notification to comment thread

* -return data from notification service instead of the response object in the mark read or unread API
2021-06-16 23:24:03 +06:00
Rishabh Saxena
10b3f7e790
Feature/signup success url (#5124) 2021-06-16 21:21:18 +05:30
Anagh Hegde
e119bd716c Ignore the order of the page while checking the published and edited pages test 2021-06-16 21:12:18 +05:30
Anagh Hegde
8296f416cc Merge remote-tracking branch 'origin/feature/page-order-api' into feature/page-order-api 2021-06-16 14:29:37 +05:30
Anagh Hegde
2ccc1ef1f2 Change the test scenario 2021-06-16 14:29:03 +05:30
Anagh Hegde
e748623e57
Merge branch 'release' into feature/page-order-api 2021-06-16 13:56:52 +05:30
Anagh Hegde
1b36f79a4e Fix merge conficts 2021-06-16 13:44:46 +05:30
Trisha Anand
77e965523c
[Feature] Smart Substitution for JSON fields in Mongo Form (#5136)
* Reduced verbosity of the command names for Insert, Find and Delete

* WIP : Smart substitution untested changes for mongo form

* Tested code for smart substitution working for mongo form fields

* Added test case for assert for smart substitution
2021-06-16 13:31:00 +05:30
Anagh Hegde
5a8ac3fd33 1. Fix failing unit tests for the page reorder 2021-06-16 11:21:19 +05:30
Anagh Hegde
3e1702b4f9 1. Add migration logic
2. Add order while creating pages
2021-06-16 09:12:53 +05:30
Abhijeet
7c430303aa
Allow only organization admins to export application (#5085)
* Added permission export:applications for admin role

* Only admins are allowed to export applications

Co-authored-by: Pranav Kanade <pranav@appsmith.com>
2021-06-15 18:18:21 +05:30
Sumit Kumar
64408df8fa
Fix: Use connection pool for Redis (#5093)
* Replace single connection instance with a connection pool. This will ensure that simultaneous actions don't fail / break the connection.
2021-06-15 10:59:49 +05:30
Anagh Hegde
9932f918f9 Use assertThat type of assertions and move the order initialization logic to migration 2021-06-15 10:03:39 +05:30
Anagh Hegde
1ca7a0cb20 Add test for page reorder and add order to the response 2021-06-14 15:34:07 +05:30
Anagh Hegde
ccd04b14d9 1. Added logic to handle pageDown scenario
2. Added comments
2021-06-14 10:19:02 +05:30
Anagh Hegde
fea54e2fa0 Moved constructor to the top. 2021-06-10 17:12:29 +05:30
Shrikant Sharat Kandula
8db64e6355
Merge pull request #4980 from appsmithorg/feature/send-email-on-comment
Feature/send email on comment
2021-06-10 15:20:34 +05:30
Trisha Anand
06cafb6066
Getting Prepared Statement for Postgres, MySQL, and MS-SQL and Smart Substitution for Rest API plugins out of beta (#5019)
* Correcting text for Mongo Form Insert command

* Getting Prepared Statement for Postgres, MySQL, and MS-SQL and Smart Substitution for Rest API plugins out of beta

* Fixed failing test case

* Fixed Ms-sql plugin test failure
2021-06-10 13:55:56 +05:30
Nayan
87ab6ff926 -removed commented code as per PR review 2021-06-10 13:09:36 +06:00
Anagh Hegde
bcd5f0600d Add page re-order API 2021-06-10 12:23:47 +05:30
Anagh Hegde
7acba5e1df Add page re-order API 2021-06-10 12:12:48 +05:30
Abhijeet
0246563bd2
Bugfix for applications with MongoDB datasources authenticated with SRV string (#4944)
* Avoid updating authenticationDTO for mongo-plugin with SRV if the authentication object is already present
2021-06-10 10:52:23 +05:30
Rishabh Saxena
07a292328a
Comments feature fixes (#4738) 2021-06-09 16:05:10 +05:30
Shrikant Sharat Kandula
4787b74958 Add API for setting page order in an application 2021-06-09 15:17:31 +05:30
Trisha Anand
1bb54b0c7c
[Bug Fix] : Mongo Form Find - Projection field is parsed correctly (#4976)
* Parsing the field projection in Mongo Form

* Added test case to assert Projection field working.
2021-06-08 19:27:55 +05:30
Anagh Hegde
1a44df90e1
Merge pull request #4921 from appsmithorg/bug/tests-failing-on-silicon
Fix - tests don't run on an M1 Silicon Mac
2021-06-08 16:52:10 +05:30
Nayan
b3bde4eb95 -organized imports 2021-06-08 15:52:25 +06:00
Nayan
ba4ea3a61b -fixed issue in unit test 2021-06-08 15:34:10 +06:00
Nayan
280155ac89 -added test for the email event handler 2021-06-08 14:43:21 +06:00
Nayan
5550c9310f -moved email sender to background task 2021-06-08 14:43:20 +06:00
Nayan
f9493a4bd2 -add unit test for utils 2021-06-08 14:43:19 +06:00
Nayan
db7363fac6 -Issue #4706 - send email when new comment added or comment thread resolved 2021-06-08 14:43:18 +06:00
Sumit Kumar
d2a74b5ac9
Feature: firestore plugin support for multiple where conditions (#3740)
* allow users to add multiple where conditions to firestore's get documents query.
2021-06-07 10:43:16 +05:30
Anagh Hegde
4268e4caaa Replace the repoTag from latest to fixed version 2021-06-04 13:49:20 +05:30
Anagh Hegde
b73f5c8ed1 Replace the repoTag from latest to fixed version 2021-06-04 12:37:16 +05:30
Anagh Hegde
b7ccb1da01 Fix - tests don't run on an M1 Silicon Mac 2021-06-04 11:15:44 +05:30
dependabot[bot]
98d5a0ff50
Bump httpclient from 4.5.10 to 4.5.13 in /app/server/appsmith-server (#4917)
Bumps httpclient from 4.5.10 to 4.5.13.

---
updated-dependencies:
- dependency-name: org.apache.httpcomponents:httpclient
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-04 10:19:06 +05:30
Sumit Kumar
8199db669a
- remove DB Auth type check. (#4896)
* remove DB Auth type check, since the type is not getting set and the check does not seem to be required in any way.
2021-06-03 23:31:37 +05:30
Shrikant Sharat Kandula
80b6d6578c Fix migration NPE 2021-06-03 10:58:26 +05:30
Nidhi
226c0720bd
Default state for mongo actions that were already configured (#4873)
* Default state for mongo actions that were already configured

* Clean up
2021-06-03 09:20:47 +05:30
Abhijeet
8fea689b4d
Actions are updated to page level resource, application name included in json file name (#4879) 2021-06-03 08:59:27 +05:30
Nayan
77940c0cfa
[Issue #3785][Bug] User names in organization management page are stale (#4702)
* [Issue #3785][Bug] User names in organization management page are stale

* -update name in userroles in background when there is a change in user
2021-06-02 15:56:52 +06:00
Nayan
78915301e3
[Issue #4572]-Allow users to leave an organization (#4634)
* [Issue #4572]-Added API to leave organisation by any user

[Issue #4572]-Add option for organization admins to leave an organization

* -add option to leave organization in frontend for non-admin users

* -updated the leave org endpoint path and HTTP method as per PR review

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationServiceImpl.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationServiceImpl.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* -add cypress test and some minor changes as per PR comment

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-06-02 15:56:22 +06:00
Abhijeet
51addbc963
Feature/import-export-application (#4553)
* Decryption for dbauth, basic and OAuth datasources added in exported file

* All authentications for datasources included while exporting as deserialization is done through json file otherwise cast is throwing error

* Content-Disposition header implemented 

* MongoEscapedWidget names segregated for published and unpublished layout, to prevent overwrite while exporting

* Published pages and actions explicitly handled in cases where unpublished resources are deleted
2021-06-01 17:38:26 +05:30
Nidhi
f9a4b0e0dc
Fixes failure due to extra spaces in authorization url in OAuth2 datasource (#4818)
* Trimmed authorization url

* Using validation instead

* Update app/server/appsmith-plugins/restApiPlugin/src/main/java/com/external/helpers/DatasourceValidator.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Update app/server/appsmith-plugins/restApiPlugin/src/main/java/com/external/helpers/DatasourceValidator.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-06-01 13:45:04 +05:30
Sumit Kumar
e2f4fd5e94
Fix: Fix redis plugin socket error (#4791)
* fix socket error
* fix default port
* remove invalid check for missing port, since default port would be supplied if user leaves the port field empty.
2021-05-31 11:55:47 +05:30
Nidhi
5ddd58cdfd
Added optional audience and resource fields for oauth2 datasources (#4678)
* Added optional audience and resource fields for oauth2

* Review changes

* Don't show audience and resource fields by default
2021-05-27 21:53:59 +05:30
Shrikant Sharat Kandula
3c4f0ace72 Fix API error when marking threads as read 2021-05-26 17:18:26 +05:30
Nayan
caf7f3678c
[Issue #2689][Bug] Duplicate Accounts with Same Email - Field is Case… (#4529)
* [Issue #2689][Bug] Duplicate Accounts with Same Email - Field is Case Sensitive

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

Co-authored-by: Nayan <83352306+nayan-appsmith@users.noreply.github.com>
Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-05-26 15:25:48 +06:00
Nidhi
2bf1fbff04
Removed check for encryption since this is not handled manually anymore (#4673)
* Removed check for encryption since this is not handled manually anymore

* Removed migration for isEncrypted
2021-05-25 20:29:57 +05:30
Nidhi
49c489dac0
Assume tokens with expiry have always expired (#4644) 2021-05-24 16:35:32 +05:30
Abhijeet
578c1d8506
Fork application event added (#4620) 2021-05-21 17:10:19 +05:30
Abhijeet
1845de739e
Added pluginName in execute_ACTION_TRIGGERED analytics event (#4610) 2021-05-21 15:50:48 +05:30
Sumit Kumar
c156560313
[Bug] fix NPE (#4613)
* fix NPE
* add ip check for localhost
2021-05-21 13:47:51 +05:30
Rishabh Saxena
8964aea9df
[Feature] Comments feature updates (#4579) 2021-05-20 17:33:08 +05:30
Shrikant Sharat Kandula
94d4302bcb
Merge pull request #4571 from appsmithorg/feature/notifications-api
Basics and infrastructure for a Notifications system
2021-05-20 13:49:56 +05:30
Confidence Okoghenun
639cba9095
Improve server setup experience documentation (#4441)
* fix: Updates appsmith server docker-compose

* fix: Updates server docker-compose

* fix: Removes exposed ports

* docs: Adds updates for server docker-compose

* docs: Adds updates for server docker-compose

* docs: Updates app/server/README.md

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* chore: Removes deprecated env vars

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-05-19 19:29:08 +05:30
Shrikant Sharat Kandula
de4c66bf4e
Merge pull request #4570 from appsmithorg/feature/signup-query-param
Add a isFromSignup query param to /applications after signing up
2021-05-19 14:23:49 +05:30
Shrikant Sharat Kandula
efca2d0e47 Remove unused socketio dependency 2021-05-19 12:14:58 +05:30
Trisha Anand
d5e5be5d6a
[Feature] Mongo Form (#4378) 2021-05-19 11:05:24 +05:30
Arpit Mohan
b1d7258dcb
Adding support for multipart form data (#4547)
* Handling multipart form data in the CURL import flow

* Adding Cypress test for curl import with multipart/form-data

* Also fixing minor bug where the form values need not always be double-quoted
2021-05-19 10:48:51 +05:30
Shrikant Sharat Kandula
b1c523eef4 Fix flaky UserData test 2021-05-18 17:48:40 +05:30
Shrikant Sharat Kandula
28cab61e5b Separate notifications for comment threads 2021-05-18 17:16:09 +05:30
Shrikant Sharat Kandula
5f770b963f Merge branch 'release' into feature/notifications-api 2021-05-18 14:21:20 +05:30
Sumit Kumar
7df8581a5f
change java version to 11.0.10 to allow TLSv1 for mysql (#4528)
* Change docker image java version to 11.0.10 to allow TLSv1 for mysql.
2021-05-17 18:42:54 +05:30
Shrikant Sharat Kandula
ea02205259 Merge branch 'release' into feature/notifications-api
# Conflicts:
#	app/server/appsmith-server/src/main/java/com/appsmith/server/domains/Comment.java
#	app/server/appsmith-server/src/main/java/com/appsmith/server/services/CommentServiceImpl.java
2021-05-17 14:55:34 +05:30
Shrikant Sharat Kandula
95a385dad7
Update names in comments when user name is changed (#4466)
* Update names in comments when changed

* Move database operation to repository class
2021-05-17 12:01:09 +05:30
Sumit Kumar
21948ab254
Fix: postgres plugin: add support for jsonb type (#4519)
* add support for jsonb type
2021-05-17 11:19:19 +05:30
Sumit Kumar
247e5d7ea4
Feature: return prepared stmt / smart substitution params under request params section for debugging (#4421)
- return prepared stmt / smart substitution params under request params section for debugging
2021-05-17 08:59:17 +05:30
Nayan
51dd6587cf
[Issue #2093]-show last used organizations first in home page (#4461)
* [Issue #2093]-show last used organizations first in home page

* -updated as per the comments in PR
2021-05-16 09:42:10 +06:00
Shrikant Sharat Kandula
2c2da7327d Add a isFromSignup to /applications 2021-05-14 12:39:58 +05:30
Trisha Anand
3e016296e6 Merge branch 'master' into release
# Conflicts:
#	app/client/src/workers/DataTreeEvaluator.ts
2021-05-13 14:43:00 +05:30
Shrikant Sharat Kandula
27af947852
APIs for adding and removing reactions on comments (#4457)
* Add APIs for reacting and unreacting on comments

* Add tests for Reactions APIs

* Fix s/create/delete typo

Co-authored-by: Nidhi <nidhi@appsmith.com>

* Deletion is successful if more than one are deleted

Co-authored-by: Nidhi <nidhi@appsmith.com>
2021-05-13 12:52:43 +05:30
Sumit Kumar
e74d99b794
fix NPE (#4448)
fix NPE
2021-05-13 11:59:43 +05:30
Nidhi
53c2d815f6
Fixes refresh token flow (#4450)
* Fixes refresh token flow

* Review comments

* Reverting mistake with CI cs url
2021-05-12 17:07:59 +05:30
Shrikant Sharat Kandula
c2af4a97fd
Fix sporadic build errors (#4453)
Because of the Java version not being explicitly set
in this plugin, the build of the whole project fails
sporadically in IntelliJ since it's trying to compile the
code as Java 8, which will obviously fail.
2021-05-12 16:41:42 +05:30
Snyk bot
5671494b9e
fix: upgrade com.github.cloudyrock.mongock:mongock-spring from 3.2.5 to 3.3.2 (#4355)
Snyk has created this PR to upgrade com.github.cloudyrock.mongock:mongock-spring from 3.2.5 to 3.3.2.

See this package in Maven Repository:
https://mvnrepository.com/artifact/com.github.cloudyrock.mongock/mongock-spring/

See this project in Snyk:
https://app.snyk.io/org/nikhil-nu4/project/b1eb6091-e23c-476f-bcc4-c4ae240497f8?utm_source=github&utm_medium=upgrade-pr
2021-05-10 19:53:59 +05:30
Shrikant Sharat Kandula
7b222b27fb
Don't create new org, if the new user has been invited to one (#4380) 2021-05-10 13:51:43 +05:30
Sumit Kumar
0ec3604eac
Feature: connect to mongo db via connection string URI (#4131)
allow user to connect using a mongo connection string URI directly.
2021-05-10 10:35:45 +05:30
dependabot[bot]
3573ea3913
Bump commons-io from 2.6 to 2.7 in /app/server/appsmith-interfaces (#4172)
Bumps commons-io from 2.6 to 2.7.

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-09 09:49:43 +05:30
dependabot[bot]
5a289b51ed
Bump commons-io from 2.6 to 2.7 in /app/server/appsmith-server (#4171)
Bumps commons-io from 2.6 to 2.7.

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-09 09:49:19 +05:30
Snyk bot
5b9b348035
fix: upgrade org.springframework.boot:spring-boot-starter-mail from 2.2.1.RELEASE to 2.4.4 (#4305)
Snyk has created this PR to upgrade org.springframework.boot:spring-boot-starter-mail from 2.2.1.RELEASE to 2.4.4.

See this package in Maven Repository:
https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-mail/

See this project in Snyk:
https://app.snyk.io/org/nikhil-nu4/project/b1eb6091-e23c-476f-bcc4-c4ae240497f8?utm_source=github&utm_medium=upgrade-pr
2021-05-09 09:47:45 +05:30
Snyk bot
11c1a01566
fix: upgrade org.springframework.boot:spring-boot-starter-actuator from 2.3.4.RELEASE to 2.4.4 (#4308)
Snyk has created this PR to upgrade org.springframework.boot:spring-boot-starter-actuator from 2.3.4.RELEASE to 2.4.4.

See this package in Maven Repository:
https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-actuator/

See this project in Snyk:
https://app.snyk.io/org/nikhil-nu4/project/b1eb6091-e23c-476f-bcc4-c4ae240497f8?utm_source=github&utm_medium=upgrade-pr
2021-05-09 09:47:12 +05:30
Confidence Okoghenun
c7fa504d5c
docs: Updates server readme.md (#4375) 2021-05-09 09:44:20 +05:30
Nidhi
39bb0ac805
Removed prod url from default config (#4377) 2021-05-07 23:22:20 +05:30
Nidhi
4a288439f0
Added basic authentication type to REST APIs (#4040)
* Added basic authentication type to REST APIs

* Spacing for prefix

* Tests and json ignore for password

* Client side form changes

* Review comments
2021-05-07 17:24:05 +05:30
Nayan
212678a540
[Docs] Imrove readme file in server, improve client getting started g… (#4327)
* [Docs] Imrove readme file in server, improve client getting started guide

* -updated the ClientSetup readme as per PR comment
2021-05-07 16:55:48 +06:00
Shrikant Sharat Kandula
3b3e24f8cf
Add delete thread API (#4363) 2021-05-07 15:58:02 +05:30
Shrikant Sharat Kandula
8c7e844d80
Accept PUT requests for thread updates (#4357)
We were using PATCH, because that was semantically more
correct for what we are doing here. But since PUT is used
everywhere else in the project, changing this to PUT for
consistency.
2021-05-07 14:02:41 +05:30
Shrikant Sharat Kandula
1f2f5ec227
Fix ACL not applied on editing comments (#4351) 2021-05-07 12:35:53 +05:30
Trisha Anand
f7d3beef50
Added success log when the email is sent out successfully. (#4233) 2021-05-06 16:27:17 +05:30
Trisha Anand
aa51040c99
Small housekeeping server side changes (#4245)
* Minor refactor datasource policy generation for easy re-use.

* Added simple widget name refactor test
2021-05-06 16:27:08 +05:30
Snyk bot
bf81709492
fix: upgrade org.hibernate.validator:hibernate-validator from 6.0.18.Final to 6.2.0.Final (#4307)
Snyk has created this PR to upgrade org.hibernate.validator:hibernate-validator from 6.0.18.Final to 6.2.0.Final.

See this package in Maven Repository:
https://mvnrepository.com/artifact/org.hibernate.validator/hibernate-validator/

See this project in Snyk:
https://app.snyk.io/org/nikhil-nu4/project/b1eb6091-e23c-476f-bcc4-c4ae240497f8?utm_source=github&utm_medium=upgrade-pr
2021-05-06 16:23:37 +05:30
Nidhi
6c0668e74d Tests for encryption 2021-05-06 13:36:37 +05:30
Nidhi
b2aaa7787c Merge branch 'release' of github.com:appsmithorg/appsmith into task/apply-encryption 2021-05-06 12:55:25 +05:30
Nidhi
96123890cd
Merge pull request #4296 from appsmithorg/release
Fixes for broken evaluation
2021-05-04 22:49:00 +05:30
Sumit Kumar
1286af4285
fix for NPE (#4288) 2021-05-04 18:39:45 +05:30
Shrikant Sharat Kandula
568c0f92ac Merge branch 'release'
# Conflicts:
#	app/client/public/privacy-policy.html
#	app/server/appsmith-server/src/main/java/com/appsmith/server/services/NewActionServiceImpl.java
2021-05-04 13:16:26 +05:30
Nidhi
e855123542
DB change for SAAS editor UI component (#4268) 2021-05-04 00:05:48 +05:30
Shrikant Sharat Kandula
d950aeca22
Check for error class type before casting (#4256) 2021-05-03 16:13:26 +05:30
Sumit Kumar
52bfd25824
Feature: return request parameters with type for debug tab (#4078)
- return request parameters with type for debug tab.
- request params are stored in a RequestParamDTO object.
- a configProperty -> label map is cached in pluginService, which returns the param label as per the configProperty it is mapped to via editor.json file.
- This feature currently only works with prepared statements disabled.
2021-04-30 16:26:51 +05:30
Shrikant Sharat Kandula
0895c68f1f
Send time information in comments and threads even from RTS (#4235)
* Include time information in comments from RTS

* Fix ISO formatting missing Z suffix
2021-04-30 15:32:34 +05:30
Nidhi
11556b0bbb
Add authorized check (#4222) 2021-04-30 11:10:20 +05:30
Shrikant Sharat Kandula
914eb6f0c2 Initial version that creates and gets notifications 2021-04-29 16:11:40 +05:30
Rishabh Saxena
a0d2e8533d
Initialise comments (#3328)
* Initial scaffolding for comments CRUD APIs

* add actions

* add assets

* state management for existing comments and creating new

* add ui components

* add overlay comments wrapper to baseWidget

* add toggle comment mode button at editor header

* trigger tests

* Disallow commenting as someone else

* Add applicationId for comments

* lint

* Add overlay blacklist to prevent component interaction while adding comments

* Comment thread style updates

* Placeholder comment context menu

* Controlled comment thread visibility for making new comments visible by default

* Update comment type description

* Reset input on save

* Resolve comment thread button ui

* fix close on esc key, dont create new comment on outside click

* Submit on enter

* add emoji picker

* Attempt at adding a websocket server in Java

* CRUD APIs for comment threads

* Add API for getting all threads in application

* Move types to a separate file

* Initial commit for real time server (RTS)

* Add script to start RTS

* Fix position property

* Use create comment thread API

* Use add comment to thread API

* Add custom cursor

* Dispatch logout init on 401 errors

* Allow CORS for real time connection

* Add more logs to RTS

* Fix construction of MongoClient

* WIP: Real time comments

* Enable comments

* Minor updates

* Read backend API base URL from environment

* Escape to reset comments mode

* Set popover position as auto and boundary as scroll parent

* Disable warning

* Added permissions for comment threads

* Add resolved API for comment threads

* Migration to set commenting permission on existing apps

* Fix updates bringing the RTS down

* Show view latest button, scroll to bottom on creating a new comment

* Cleanup comment reducer

* Move to typescript for RTS

* Add missing server.ts and tsconfig files

* Resolve / unresolve comment

* Scaffold app comments

* Minor fixes: comment on top of all widgets, add toggle button at viewer header

* Reconnect socket on creating a new app, set connected status in store

* Retry socket connection flow

* Integration tests for comments with api mocks using msw

* Fix circular depependency

* rm file

* Minor cleanup and comments

* Minor refactors: move isScrolledToBottom to common hooks, decouple prevent interactions overlay from comments wrapper

* Use policies when pushing updates in RTS

* ENV var to set if comments are enabled

* Fix: check if editor/viewer is initialised before waiting for init action

* Add tests for comments reducer

* Revert "ENV var to set if comments are enabled"

This reverts commit 988efeaa69d378d943a387e1e73510334958adc5.

* Enable comments for users with appsmith email

* lint

* fix

* Try running a socket.io server inside backend

* Update comment reducer tests

* Init mentions within comments

* Fix comment thread updates with email rooms

* Minor fixes

* Refactors / review suggestions

* lint

* increase cache limit for builds

* Comment out tests for feature that's under development

* Add Dockerfile for RTS

* Fix policies missing for first comment in threads

* Use draftJS for comments input with mentions support

* fix fixtures

* Use thread's policies when querying for threads

* Update socket.io to v4

* Add support for richer body with mentions

* Update comment body type to RawDraftContentState

* fix stale method

* Fix mentions search

* Minor cleanups

* Comment context menu and thread UI updates

* revert: Scaffold app comments

* Yarn dependencies

* Delete comment using id api added

* Init app comments

* Add test for creating thread

* Api for delete comment with id

* Test comment creation response and policies

* Copy comment links

* Fix reset editor state

* Delete valid comment testcase added

* Delete comment TC : code refactor

* Don't allow creating comments with an empty body

* Pin comments WIP[]

* Ignore dependency-reduced-pom.xml files from VCS

* Cleanup of some dev-only files, for review

* Delete comment

* Update socket.io to v4 in RTS

* Pin and resolve comment thread object added in commentThread

* Pin and resolve comment thread object added in commentThread

* Update comment thread API

* Added creationTime and updationTime in comment thread response

* Added creationTime and updationTime in comment thread response

* Added human readable id to comment threads, fallback to username for null name in user document

* Refactor

* lint

* fix test, rm duplicate selector

* comment out saga used for dev

* CommentThread viewed status, username fallback for getName=null, username field added in pin & resolve status

* lint

* trigger tests

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
Co-authored-by: Abhijeet <abhi.nagarnaik@gmail.com>
2021-04-29 16:03:51 +05:30
Trisha Anand
09748de6c0 NPE check when there are no mongo escaped widgets (#4200) 2021-04-28 22:31:13 +05:30
Trisha Anand
9884135cb7
NPE check when there are no mongo escaped widgets (#4200) 2021-04-28 22:27:01 +05:30
Shrikant Sharat Kandula
8a6cd10102 Set explicit Java version for CI (#4091)
* Set explicit Java version for CI

* Trigger

Co-authored-by: Nidhi <nidhi.nair93@gmail.com>
2021-04-28 17:56:51 +05:30
Trisha Anand
4a441b5ca2 [Bug Fix] : In case the table being renamed has mongo escaped fields, rename the table name in set keeping a track of these widgets as well (#4195) 2021-04-28 17:39:13 +05:30
Trisha Anand
73c2b09dc4
[Bug Fix] : In case the table being renamed has mongo escaped fields, rename the table name in set keeping a track of these widgets as well (#4195) 2021-04-28 17:36:30 +05:30
Nidhi
4d0d01950b
Error handling for unknown sheet when deleting row (#4165)
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
2021-04-26 20:50:45 +05:30
Nidhi
c8b2035eeb Accessibility reset 2021-04-26 18:13:55 +05:30
Nidhi
8afac888c7 Merge branch 'release' of github.com:appsmithorg/appsmith into task/apply-encryption 2021-04-26 13:30:49 +05:30
Nidhi
f86f6a4de9
Only consider headings till value grid size, but consider all values till this size (#4115)
* Only consider headings till value grid size, but consider all values till this size

* Switched from null to blank for consistency

* Whoops, we don't do null row objects anymore
2021-04-26 12:11:18 +05:30
Sumit Kumar
275843e61a
Fix: Return helpful error message when get structure fails for mongo db due to lack of read permission. (#4077)
- return helpful error message when get structure fails for mongo db due to lack of read permission. The message returned is: Appsmith has failed to get database structure. Please provide read permission on the database to fix this.
- any get structure error is also generically being caught by the getStrucuture method in DatasourceStructureSolution.java
- error msg and status code is now returned as part of DatasourceStructure object.
- ErrorDTO is used to store error info.
- ErrorDTO definition is moved to appsmith-interfaces package so that it can be used all packages.
- Other changes:
  - stop logging PLUGIN_GET_STRUCTURE_ERROR externally, as this error is mostly triggered by credentials error or -lack of read permission.
  - start logging PLUGIN_GET_STRUCTURE_TIMEOUT_ERROR externally, because this is not a user error.
2021-04-26 11:18:08 +05:30
Abhijeet
c11dab9673 Auto-generated-organization field added in organization DB to differentiate between user created and auto generated organization 2021-04-23 19:29:20 +05:30
Shrikant Sharat Kandula
2971324be6
Fix unable to connect to MongoDB without username (#4130) 2021-04-23 18:21:36 +05:30
Trisha Anand
432b365980
[Hotfix] Fixed the migration script where actions with no default smart substitution configuration get the correct configuration of turned off (#4122)
* Fixed the migration script where actions with no default smart substitution configuration get the correct configuration of turned off

* Removed debug logs

* Stupid comment correction
2021-04-23 17:36:31 +05:30
Nidhi
2eec2fba28
Modified error text, added comments for regex (#4103) 2021-04-22 16:44:03 +05:30
Nidhi
9dff696760
Fixed delete spreadsheet method validation (#4096) 2021-04-22 13:06:45 +05:30
Abhijeet
bb0516a495
Default counter for new datasource in organization should initiate at 1 (#4005)
* OrgId is added as a suffix to link datasource entry with orgId when creating document in sequenceDB.

* Each document entry in sequenceDB is linked to organization ID which is then used by the datasourceDB to generate default name. Testcase for testing default names to new datasources (#2212)

* Migration ChangeSet added to setup sequenceDB with organization ID in name field

* Optimization in string operation
2021-04-22 12:46:43 +05:30
Trisha Anand
dd00f51808
Type Migration for Plugins Part 2 : Migration of existing actions + revert hotfix for editor.json (#4085)
* WIP :  Migration of data type for smart substitution configuration

* Fixed the migration code. Also reverted editor.jsons  back to equality check after migrations of existing actions

* Only fetching actions for plugins which belong to supported plugins.

* Setting a default value of "false" for all the actions which don't have a valid configuration for smart substitution.

* Minor code formatting

* Minor language change in comment

* Removed debug logs
2021-04-22 12:07:25 +05:30
Abhijeet
005e00a8a8
Added new analytics datapoint to capture invite users event (#4095)
New analytics datapoint added to capture event : invite users to organisation
2021-04-22 10:59:47 +05:30
Nidhi
6b31aa333b
Introducing Google Sheets Plugin (#3517)
* cherry pick -make new

* revert to enable fix from release

* attempt to hook into existing datasource editor

* gSheets plugin skeleton from Rest API

* Changes for database migration

* fix for auth code

* separate it out

* action page loads!

* add to explorer

* create action from datasource

* Editor JSON WIP

* working query form

* Editor JSON WIP

* import to

* fix toast message

* redirect from datasource and editor pages

* fix onboarding

* fix imports and constants

* refactor form out

* refactor queryForm

* Merge branch 'release' into feature/google-sheets

* Merge branch 'release' into feature/google-sheets

* initial values from settings, editor and form

* Check

* remove dangling code around lightTheme

* Safety net

* remove class

* try mouseover solve

* force click

* changes from review

* fix action form name on import

* Merge branch 'release' into feature/google-sheets

* minor cleanup

* Merge branch 'release' into feature/google-sheets

* WIP

* Google sheets changes

* Merge conflicts

* Merging and fixes, needs refactoring

* Check

* Merge branch 'release' into feature/google-sheets

* Fixed tests

* Add cloud services env variable

* Clean up saga

* Clean up

* Refactoring

* Deleted svg file

* Minor fixes

* Modified design to allow behaviour in google sheets methods (#3486)

* Modified design to allow behaviour in google sheets methods

* Review changes

* Removed sysout

* Added handling of edge cases with table data

* Merge branch 'release' into feature/google-sheets

* Fixes

* Fixes

* Added validations

* Improved tests

* Removed extraneous injected bean

* Review changes

* Fixed bug with method

* Changes to Google sheets plugin's request and response structures (#3692)

* Method changes

* Removed logging

* Renaming options

* Reverting pom version

* Modified type of collection variables, fixed errors

* Converted row offset field to one that supports dynamic bindings

* Review changes

* List SAAS plugin type actions under lightning menu apis (#3820)

* list saas plugin type actions under lightning menu apis

* combine saas plugin type actions in the other sub menu of lightning menu

Co-authored-by: Hetu Nandu <hetunandu@gmail.com>

* Fix merge issues

* Prettified query editor and a few fixes w/ ux

* Test fixes

* Reformatting request

* code for REST added (#3876)


Co-authored-by: hetunandu <hetu@appsmith.com>

* Renamed body to row object

* Renamed placeholder for range

* Renamed range heading

* Modifications to handle range semantics

* Use spreadsheet Url instead of id

* Ordering of methods

* Removed logging

* Add tests for Dynamic text controls

* Add tests for url helpers

* Fix coverage config

* Nevermind

* Interface changes

* There is no body here

* Yay to hints

* Delete row field is separately handled as row index

* placeholder support (#4001)

* Fixed tests, typos and creating new sheets with random rows

* Switched to using 'rowIndex' throughout

* binding path added for query input field (#4016)

* - Fixed QA bugs (#4032)

- Split delete sheet into two
- Removed dynamic query input types from hidden keys

* Proper exceptions

* Removed extra logging

* Throw exception if update method does not match any of the columns

* Same for bulk update

* Zero-indexed delete row

* I'm a space bound rocket ship

* Logic to register installations with cs (#4062)

* Logic to register installations with cs

* Clean up

* Casting to string

* Checking to see if this makes the test pass

* Added an extra null check

Co-authored-by: Piyush <piyush@codeitout.com>
Co-authored-by: hetunandu <hetu@appsmith.com>
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Apeksha Bhosale <7846888+ApekshaBhosale@users.noreply.github.com>
2021-04-22 09:00:09 +05:30
Shrikant Sharat Kandula
14ceab809a
Set explicit Java version for CI (#4091)
* Set explicit Java version for CI

* Trigger

Co-authored-by: Nidhi <nidhi.nair93@gmail.com>
2021-04-21 19:15:02 +05:30
Trisha Anand
30a82c2d24
Hotfix for broken release. Would do a proper fix on release tomorrow with migration (#4075) 2021-04-20 18:54:34 +05:30
Trisha Anand
eeaa26a7cc
Type migration from String to Object for plugin specified templates to preserve boolean and any other future data types (#4053)
* WIP : Type migration from String to Object for value

* Migrating config from string to boolean for prepared statement.
Handled error for already stored actions where PS config is stored as String and not Boolean.
2021-04-20 16:09:48 +05:30
Trisha Anand
04601b5bcb
Merge pull request #4071 from appsmithorg/release
Release Patch 2
2021-04-20 15:41:58 +05:30
Nidhi
963d1225dc
Reverting use of Mongo Listener since we aren't applying this yet (#4073)
* Added synchronization to encryption map

* Reverting listener for now
2021-04-20 13:58:59 +05:30
Trisha Anand
f1253074a8
Added null check for NPE handling in sanitize datasource (#4072) 2021-04-20 13:13:22 +05:30
Sumit Kumar
5f96642e73 Merge branch 'release' into master 2021-04-19 12:55:31 +05:30
Trisha Anand
eaa24ca894
[Bug Fix] : Fetch actions by id during refactor action name to solve IncorrectResultSizeDataAccessException for pages where duplicate action names exist (#4030)
* New dto for refactoring action name which includes actionId as well

* Refactor action name now also takes actionId as payload and fetches the action from db by id instead of name to solve for the scenario where the action names could be duplicated.

* Adding actionId to QP of action refactor API.

* WIP : test for asserting the bug fix

* WIP test

* Fixed the test case asserting refactoring works for an action when there are duplicate action names in the page.

Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
2021-04-19 12:35:10 +05:30
Trisha Anand
4f8cf79041
[Bug fix] : Disallowing action creation with existing names from the page (#4015) 2021-04-16 16:13:03 +05:30
Abhijeet
6ea795e8a1
Autoscroll to invited organisation (#3945)
* Added organization slug to the invite Url, which is finally used by email template(#2359)

* Separate method to create email params. Welcome email url variable updated so as to be consistent with other email templates

* Unused enum emailType removed, importing of java.util.* removed as per suggestion
2021-04-15 16:46:46 +05:30
Nidhi
9e6e8e5e4b
Safe handling of alias (#4004)
* Safe handling of alias

* Unnecessary import
2021-04-15 12:14:39 +05:30
Trisha Anand
9b49308abe
Adding dependency relationship to plugins (#3997)
* Added dependencies to be added to dependencyMap on client to Postgres, MSSQL, MySQL and Mongo plugins

* Added Dependency config for API

* Fixed the test case
2021-04-15 11:36:41 +05:30
Shrikant Sharat Kandula
a259dd00ed
Fix internal server error on invalid header in curl command (#3931)
* Fix internal server error on invalid header in curl command

* Add tests for invalid header/method
2021-04-14 10:44:43 +05:30
Shrikant Sharat Kandula
5b48a9cc78
Fix build failure on maven 3.8 (#3954)
Maven 3.8 now blocks HTTP repositories and only allows HTTPS. However, the version redshift jdbc dependency we are using connects to a separate repository that runs on HTTP. The latest version has switched to using HTTPS instead.

So this PR upgrades redshift dependency from version 2.0.0.1 to 2.0.0.4.

Ref: https://maven.apache.org/docs/3.8.1/release-notes.html#cve-2021-26291
2021-04-14 08:03:56 +05:30
Sumit Kumar
42573533cb fix NPE by adding null check conditional (#3989)
Fix NPE seen on Sentry by adding null check for result body
2021-04-13 21:37:56 +05:30
Sumit Kumar
b4e43798ab
fix NPE by adding null check conditional (#3989)
Fix NPE seen on Sentry by adding null check for result body
2021-04-13 19:58:40 +05:30
Nidhi
a24eb90091
Fixed escaped layout being used for update (#3968)
* Fixed escaped layout being used for update

* Few more cases of unescaped layout usage
2021-04-13 09:36:50 +05:30
Nidhi
4bddfa0a4e
Fixed curl import without valid tokens (#3933) 2021-04-09 14:03:53 +05:30
Sumit Kumar
9c8bce0415
Feature: return data types of returned data on query execution for better data display (#3914)
- Return data type list along with action execution result so that the data can be displayed in the correct format.
- Handles these three data types for now : table, json, raw.
  - If a plugin has already assigned the data type, then common handler is not used.
  - Mongo plugin assigns the data types in the plugin specific flow i.e. does not use the common data type parse / assign method.
- To address review comments:
  - added a new enum ActionResultDataType for data types. It is consumed by ParsedDataType. A list of ParsedDataType is returned by ActionExecutionResult
  - parsed data in parallel using streams.parallel().
2021-04-09 10:58:37 +05:30
Nidhi
4f68d5f472 Logging test failure 2021-04-08 19:53:48 +05:30
Nidhi
13a3e8f240 Applying AOP encryption 2021-04-08 16:58:45 +05:30
Sumit Kumar
41e44eed30
Feature: add title to action execution errors to improve user experience (#3872)
- add title to action execution errors to improve user experience
    - all errors in AppsmithPluginErrors
    - action execution related errors in AppsmithError : NO_CONFIGURATION_FOUND_IN_DATASOURCE, INVALID_ACTION, INVALID_DATASOURCE, INVALID_DATASOURCE_CONFIGURATION - as these are the likely errors in an action execution flow (excluding plugin specific flow) that might result from faulty action / datasource configuration by a user.
    - title is returned as part of ActionExecutionResult.
    - title is set in ActionExecutionResult on failure during action execution.
    - In response to review comment - added a new BaseException class, so that both AppsmithException and AppsmithPluginException extend this base class. Also, refactored code to introduce setErrorInfo() function in ActionExecutionResult class to set its attributes.
- Some unrelated cleanup:
    - catch PoolInitializationException for Postgres plugin and return AppsmithPuginException
    - catch MongoTimeoutException and return AppsmithPluginException
2021-04-08 09:49:05 +05:30
Trisha Anand
174ef284f0
[Bug Fix Improvement] : Table widget keys are unescaped after walking through the DSL (#3908)
* WIP : untested

* Minor refactoring

* Added test case to assert escaping and unescaping of the table widget primary column keys
2021-04-07 19:36:37 +05:30
Hetu Nandu
28995e5b53
Fix PS and smart substitute true false value (#3896) 2021-04-07 16:06:17 +05:30
Nidhi
927a6a3479
Annotation based encryption (#3610)
* Annotation set up

* Removed annotation uses

* Redundant condition

* Commented out logging, retained for implementation

* Handling for Collection and Map parameterized types

* Removed comments
2021-04-07 15:27:36 +05:30
Trisha Anand
4bf74f6434
Bug Fix : Escaping _id and _class from Table PrimaryColumn keys before storing the DSL (#3887)
* Bug Fix : Escaping _id and _class from primary column keys before storing the DSL

* Fixed the test case failures.

* Updated the replacement strings for _id and _class to include appsmith keyword
2021-04-07 13:21:18 +05:30
Hetu Nandu
5a1584377b
Update editor.json for Postgres, Mongo, MySQL, MS-SQL adding evaluation type (#3884)
Co-authored-by: Trisha Anand <trisha@appsmith.com>
2021-04-06 18:27:51 +05:30
Trisha Anand
4a087b172c
Feature : BSON Smart Substitution in Mongo Plugin (#3804)
* Feature : JSON Smart Substitution in Mongo Plugin

* Added BSON data type for Mongo substitution. Added test case

* Minor comment added

* Minor variable re-naming and correcting failing test cases.

* REST API : Escaping special characters in string before smart substitution

* Incorporated review comment
2021-04-05 17:12:29 +05:30
Sumit Kumar
00bcac7591
add support for 'prefer' ssl mode in postgresql. (#3848)
- add support for 'Prefer' ssl option for postgres plugin.
2021-04-05 15:51:17 +05:30
Trisha Anand
1e72cf279e
Bug Fix : If binding is present in commented part, ignore the exception (#3832) 2021-04-01 22:14:00 +05:30
Sumit Kumar
3140e98146
modify hint message to include fix (#3829)
Modify hint message to include fix.
2021-04-01 17:10:30 +05:30
Shrikant Sharat Kandula
efec01344a
Clone explicitly set datasource for new users (#3793) 2021-04-01 12:44:44 +05:30
Nidhi
9f8cb59a04
Null handling for bad state in OAuth2 callback (#3810)
* Null handling for bad state in OAuth2 callback

* Handling null

* Another case for when state is present but not as expected
2021-04-01 10:41:11 +05:30
Sumit Kumar
efa4ae072c
Firestore plugin support for FieldValue.delete() and FieldValue.serverTimestamp() values (#3693)
- Allow users to define key path for FieldValue.delete() and FieldValue.serverTimestamp() values.
- delete() value is only valid for update operation, as Firestore does not seem to support it for any other ops.
- serverTimestamp() is valid for all operations excluding get and delete operations.
2021-03-30 17:19:24 +05:30
Trisha Anand
aab75bf304
Bug fix : App viewer inviting another app viewer would assign correct permissions to applications 2021-03-30 17:05:44 +05:30
Sumit Kumar
7dbae1e481
fix regex for whitespace (#3761)
- fix regex for whitespace
2021-03-30 15:03:39 +05:30
Arpit Mohan
60400da94a
Fixing signed URL request for AWS S3 in Rest API plugin (#3734)
* added empty byte array for request body to fix aws signed url signature match problem as detailed here - https://github.com/aws/aws-sdk-java/issues/2205

Co-authored-by: Bernard Worthy <>
2021-03-29 12:58:57 +05:30
Trisha Anand
554c45eef8
[Bug Fix] Prepared Statement -String starting with a number recognized as JSON object instead of String (#3710)
* String starting with float like 2.1 recognized as JSON object instead of String.

* Incorporated review comments.
2021-03-29 12:22:06 +05:30
dependabot[bot]
00477fe686
Bump guava from 28.1-jre to 29.0-jre in /app/server/appsmith-server (#3728)
Bumps [guava](https://github.com/google/guava) from 28.1-jre to 29.0-jre.
- [Release notes](https://github.com/google/guava/releases)
- [Commits](https://github.com/google/guava/commits)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-29 00:20:04 +05:30
Trisha Anand
b9fd72e89d
Smart Substitution Debugging - Adding Appsmith data type to each parameter in response's request object for execute (#3716)
* Smart Substitution Debugging - Adding appsmith data type to each parameter in response's request object for execute

* Incorporated review comments.

* Fixed failing test cases.

* Fixed MS-SQL test failures.
2021-03-26 23:29:12 +05:30
Nidhi
683176fc48
Increased default limit for webclient payload (#3718)
* Increased default limit for webclient payload
2021-03-26 21:34:10 +05:30
Sumit Kumar
e347b61e53
Return hint on localhost url (#3611)
- Return hint for localhost URL on the following events:
Test datasource
Save datasource
Update REST API Url
Create datasource from REST API
When page gets loaded for first time.
- Hint message returned: "You may not able to access your localhost if Appsmith is running inside a docker container or on the cloud. Please check out Appsmith's documentation to understand more."
- It has been decided as part of actions pod meeting that these messages will not be persisted.
2021-03-26 15:42:34 +05:30
Trisha Anand
c420d0207f
Supporting timestamp datatype in Prepared Statement (#3690)
* WIP : Adding timestamp datatype in Prepared Statement

* Added simple tests for commonly used data types' identification

* Added plugin level test cases for timestamp with Prepared Statement to Postgres
2021-03-26 13:19:22 +05:30
Trisha Anand
ed1a0b4045
Refactor the smart substitution code to extract common code at plugin interface level. (#3497) 2021-03-25 19:10:42 +05:30
Trisha Anand
c6e4f91ffb
[Bug fix] A lax search for presence of binding during save page to match client algorithm to reduce page save error (#3698)
* Lax mustache binding check added to match the client side check when client recognizes a field to have a dynamic binding. This would reduce/remove bad bindings from throwing a 400 during save page.

* Added a test to assert that update layout does not fail in case the binding is technically incorrect because part of the mustache's lie inside quotes. Since client has a lax way of finding a dynamic path, server also follows suite.
2021-03-25 16:00:45 +05:30
Trisha Anand
1a9a410c5e
Stringifying the binding name before setting in the error to ensure client can parse it correctly (#3689) 2021-03-25 12:36:56 +05:30
Sumit Kumar
cb9df80694
change default value of s3 file data type on create file action (#3685)
- modify default value for s3 on file create to Yes.
- change dropdown option names to base64, text from yes, no.
2021-03-24 15:02:13 +05:30
Sumit Kumar
56f22edbe8
Return hint message on identical columns (#3656)
- Return hint message if identical column names are found in SQL query for postgres, MySQL, mssql, redshift plugin.
- Add a PluginUtils class to hold general utility functions for plugins.
2021-03-24 08:22:49 +05:30
Nidhi
992da806bf
Added dummy instances to UI matrix (#3683) 2021-03-24 08:18:19 +05:30
Shri
a18e569f7d
Fix data serialization in analytics (#3677)
* Serialize object fields before sending to analytics

* Push event when application is published
2021-03-23 17:13:02 +05:30
Sumit Kumar
38c5639542
Provide non client certificate based SSL support for Mysql, Mongo, Postgres plugins. (#3518)
- Provide non client certificate based SSL support for Mysql, Mongo, Postgres plugins.
- Added a new option default, apart from the the SSL mode types supported by the driver. Default means that go with whatever default configuration driver provides.
2021-03-19 15:03:56 +05:30
Nidhi
93d5a061e2
Added logs and analytics (#3622)
* Added logs and analytics

* Fix in error string

Co-authored-by: Shri <shrikant@appsmith.com>

* Review fixes :)

Co-authored-by: Shri <shrikant@appsmith.com>

Co-authored-by: Shri <shrikant@appsmith.com>
2021-03-18 21:48:13 +05:30
Shri
bb1d0059d3
Clear OAuth tokens for forked datasources (#3609)
* Clear OAuth tokens for forked datasources

* Fix datasource duplicate finder in light of oAuth tokens

* Fix potential NPE
2021-03-18 21:08:56 +05:30
Shri
cbd7828503
Add migration to remove template organization config (#3568) 2021-03-16 15:29:06 +05:30
Shri
e1fb1203b5
Application forking fixes and improvements (#3519)
* Clone only those datasources that are actually used

* Retry when cloning app causes a name class

* Search for an existing datasource before cloning

* Test deep matching of datasources

* Refactoring, since now the tests pass

* Allow forking of owning applications

* Don't limit datasource naming suffix number
2021-03-15 22:19:40 +05:30
Shrikant Sharat Kandula
3d6bd51556
Fix NPE in action execution analytics (#3541)
The NPE noticed is with the return value of `.getStatusCode`.
But this PR adds NPE guards to a few other potential cases.
2021-03-14 07:58:27 +05:30
Nikhil Nandagopal
d7a5f36fea Made bade 64 encoding the default type for S3
Added a data field for file pickers that is filled based on the property pane value
2021-03-12 13:44:32 +05:30
Trisha Anand
217e36aaa9
Enrichment of analytics event for execute. (#3492)
* WIP : enrichment of analytics event for execute.

* Plugin level : Catch all exceptions and set request in the result
Server level : Adding new fields to analytics : `isSuccessfulExecution`, `statusCode`, `timeElapsed`

* Dont catch StaleConnectionException. Server handles the same.

* Removed class specification for onErrorResume in plugins since its supposed to catch all errors.
2021-03-11 15:40:07 +05:30
Shrikant Sharat Kandula
b12057ef73
Allow client to set layouts without id when creating a page (#3477)
* Allow client to set layouts without id when creating a page

* Mild refactoring

* Fix Layout action tests
2021-03-11 15:13:24 +05:30
Nidhi
f017ef29d4
Modified maven dependencies to reduce build time and jar size of s3 (#3491) 2021-03-11 14:58:07 +05:30
Trisha Anand
9f63bfafd2
Adding JSON intelligent substitution for Rest Api plugin (#3474)
* POC : null value getting handled correctly

* Refactor code. Tested with and without quotes. This is working! Woohoo!

* Added support for mustache binding to include json objects and arrays

* Added test for smart substitution.

* Added setting to turn on/off smart substitutions in Rest API plugin

* Handling turning on smart json substitution

* Added error handling

* Added config to turn on smart substitution in JSON to make the tests pass now

* Adding a beta tag to the API setting.

* Spelling error resolved.

* Incorporated review comments.

* Catching JSON Parse exception in http call.
2021-03-11 14:10:00 +05:30
Shrikant Sharat Kandula
1d683ad458
Fix recaptcha failing on signup when not configured (#3488) 2021-03-11 11:05:48 +05:30
Shrikant Sharat Kandula
65568a4e13
Add more devices in AppLayout options (#3451)
* Remove width and introduce more AppLayout type enums

* Fix: Adding min width to layout options.

Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
2021-03-11 07:51:48 +05:30
Abhishek
0b4adf198d
Add recaptcha verification for user signup on the server (#3383)
Co-authored-by: Abhishek <abhishek.ak@bytedance.com>
2021-03-11 07:25:01 +05:30
Sumit Kumar
aaf4ce95f2
use dynamic input text in plugin editor forms (#3470)
- Use dynamic input text for plugin editor forms so that the evaluated value of mustache expression is visible.
- Those fields which are meant to store Key only - i.e. they are not visible to the user and are only meant to provide key for key value pair in db have been skipped.
2021-03-10 12:29:19 +05:30
Sumit Kumar
b6961ce7a4
Add timeout failure for mongo plugin test datasource (#3431)
- Mongo plugin client driver does not return with exception upon first failure - instead it keeps retrying. Hence, adding timeout error to report failure before the client thread cancels due to delay in response.
- It seems that the mongdb connection string cannot be directly used for ping test, hence skipping it.
2021-03-10 11:11:14 +05:30
Sumit Kumar
04e8acb763
Custom S3 service support (#3469)
- Provide support for non Amazon S3 service providers like Upcloud, Digital Ocean, Wasabi, DreamObjects and any other S3 compliant storage service provider.
- Change plugin label from "Amazon S3" to "S3"
2021-03-10 10:30:07 +05:30
Shrikant Sharat Kandula
bb9a9a307f
APIs for profile photos (#3260)
* Add API for uploading profile photos for current user

* Add delete and get APIs for profile photos

* Add test for uploading and deleting profile photo

* Added negative tests for upload profile photo API
2021-03-09 17:03:20 +05:30
Trisha Anand
092a942036
Added support for Prepared Statement in MS SQL plugin. (#3438)
* Added support for Prepared Statement in MsSQL plugin.

* Minor code formatting

* Merged release and refactored code for compilation.
2021-03-09 14:42:53 +05:30
Trisha Anand
cd45a1dd74
Added support for Arrays in Prepared Statement in Postgres (#3421)
* Added support for Arrays in Prepared Statement

* Minor code cleanup

* Super minor code readability changes

* Incorporated review comment
2021-03-09 13:17:42 +05:30
Trisha Anand
38c0151e94
Changed order of message for easy grep in case of invalid dynamic binding path (#3436) 2021-03-08 16:05:05 +05:30
Trisha Anand
79164fde44
Only return request object in action execute if the action was executed in EDIT mode. (#3426) 2021-03-08 16:04:17 +05:30
Sumit Kumar
800d305dab
Gracefully handle the timeout overflow / out of expected range errors (#3411)
- Expect max value of timeout as 60000 ms.
- If value exceeds max value then add error message to the list of invalids. This list is returned to the client in response body.
- Detect integer overflow exception (Number format exception) and override the value to 60000 ms.
2021-03-05 17:09:29 +05:30
Trisha Anand
10cd7f5f80
Adding support for Prepared Statements in MySQL plugin (#3327) 2021-03-05 16:22:46 +05:30
hetunandu
8574b86926 Merge branch 'master' into release 2021-03-05 12:06:14 +05:30
Trisha Anand
20ed017a58
In case of no mustache bindings are found in dynamic path list, throw invalid dynamic binding reference error. (#3394) 2021-03-04 15:35:46 +05:30
Trisha Anand
5e448b9331
DSL parsing : Catch index out of bound exception (#3364)
* In case index being referred does not exist, throw appropriate error during DSL parsing

* Fixing bad commit.
2021-03-03 18:51:35 +05:30
Sumit Kumar
639913703a
Fix/add mongo srv support (#3341)
Provide helpful error msg when srv url is provided to mongo plugin

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-03-03 18:31:04 +05:30
Trisha Anand
75b0986b92 Fixed the incorrect JSON string in INVALID_DYNAMIC_BINDING_REFERENCE appsmith error. 2021-03-03 18:22:42 +05:30
Shrikant Sharat Kandula
bb49f04f06
Support descending ordering for Firestore documents (#3340) 2021-03-03 18:18:57 +05:30
Trisha Anand
f49cc7b455
Added throwing a properly formatted error for client to consume when dynamic binding path list contains an invalid entry (#3343) 2021-03-03 17:47:35 +05:30
Trisha Anand
ca8be4c7f5
Db Migration : Delete unreferenced dynamic binding paths in actions (#3310)
* WIP compute if the dynamic binding path list is correct.

* Tested code for deleting the incorrect dynamic binding path list from actions.

* Added comments for code readability
2021-03-03 17:11:03 +05:30
Shrikant Sharat Kandula
9c50182f0e
API for forking of public applications (#3221)
* A barely working API for forking a public application

* Tests WIP

* Mild refactoring in tests

* Refactoring in test

* Not all applications are forkable
2021-03-03 15:45:47 +05:30
Sumit Kumar
e5586a590a
fix placeholderText label in form.json files (#3331)
fix placeholderText label in form.json files
2021-03-03 09:33:02 +05:30
Sumit Kumar
5bab77a141
remove endpoint host and port fields from dynamodb datasource form (#3316)
- A consensus has emerged that the utility of overriding endpoint is only for local development and testing. Hence, removing the fields from datasource form.
2021-03-02 17:25:25 +05:30
Sumit Kumar
6c04e1467b
Provide option for only one endpoint and port in the dynamodb plugin datasource form (#3314)
- provide a max length to keyvalue_array type. If the max length is set to 1, then the "+" button will not appear.
- front end changes are pending. A new github issue will be opened to track the same : #3315
2021-03-02 15:42:38 +05:30
Arpit Mohan
bf16b45f2b
Merge pull request #3309 from appsmithorg/release
Release v1.4.1
2021-03-02 13:41:51 +05:30
Trisha Anand
bd18030c2d
Add request body in case http method is not GET (#3307)
* Add request body in case http method is not GET

* Incorporated review comments.
2021-03-02 12:46:20 +05:30
Trisha Anand
91e308665b
Requests preparation by plugins instead of ActionService (#3159)
* Added action request in S3 plugin.

* Added request data in Dynamo plugin

* Added request in Elastic Search.

* Request in Firestore.

* Request added in Mongo

* MsSQL request added.

* Added MySQL request.

* Added Postgres request.

* Added redis request.

* Redshift doen.

* Catching AppsmithPluginExceptions at the plugin level itself to ensure that the request gets passed on as part of the result.

* Fixed failing plugin test failures

* Fixed AmazonS3 test failures.

* WIP post analytics working

* WIP : Making the request data confirm to existing analytics request data format.

* Fixed the headers in the analytics body.

* Migrations S3, Postgres to the accepted format for request in analytics

* Updated S3 action to be the query

* Migration completed for all plugins for analytics.

* Removed the old analytics event. Now sending only the new one.

* Ensuring all data is captured in S3 plugin request in case of error.

* Minor editing of firestore to ensure that the errors get caught by the plugin itself.

* Fixed test cases in Amazon S3

* Incorporated review comments.
2021-03-02 10:58:46 +05:30
Sumit Kumar
68e6c7b1d8
stop logging datasource argument error externally. (#3262)
- Stop logging datasource argument error externally. The error described in the linked GitHub issue arises due to bad service account credentials provided as arg.
- Update error msg to make it clear.
- Add TC.
2021-03-01 12:13:32 +05:30
Trisha Anand
31b20da347
Adding support for NULL value parameters in Prepared Statement. (#3255) 2021-02-27 18:59:51 +05:30
Sumit Kumar
d2643a18c3
check dynamodb connection validity using listTables cmd. (#3241)
* check dynamodb connection validity using listTables cmd.
* add TC
* add encrypted logo to password field
* rectify the default value of region dropdown
* remove unused imports
2021-02-26 16:57:18 +05:30
Shrikant Sharat Kandula
a1d027bb59
Save separate appLayout for edit/view and sync on publish (#3245) 2021-02-26 16:18:04 +05:30
Shrikant Sharat Kandula
5808620716
Add API for the signed in user to set their name (#3164)
* Add API for the signed in user to set their name

* Use the correct error in session handling
2021-02-26 14:48:20 +05:30
Shrikant Sharat Kandula
dc146a1a16
Fix MongoDB test operation errors not being caught (#3234) 2021-02-26 12:55:54 +05:30
Arpit Mohan
4f16b23352 Merge branch 'release' 2021-02-25 19:34:22 +05:30
Shrikant Sharat Kandula
9f18aa2e69
Fix NPE in analytics on action execution (#3216) 2021-02-25 17:46:24 +05:30
Arpit Mohan
d420518cad Fixing merge conflicts 2021-02-25 17:29:49 +05:30
Sumit Kumar
1e59ed4928
Internal fix: Remove raw response from transformed DynamoDB response structure. (#3209)
* remove raw response from transformed response structure.
* update TCs
2021-02-25 16:34:07 +05:30
Trisha Anand
42af1fa771
Only extract dynamic bindings from leaf nodes on update layout (#3210)
* Only extract dynamic bindings from leaf nodes.

* Minor code refactoring

* Moved to using generic Map type instead of LinkedHashMap
2021-02-25 15:56:45 +05:30
Sumit Kumar
63ff3c73fa
Fix execute on page load for api on app copy (#3150)
* first draft

* added fix without TC

* cleanup

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/NewActionServiceImpl.java

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/NewActionServiceImpl.java

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/NewActionServiceImpl.java

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* - add TC
- minor code refactor

* fix condition

* update clone page test

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2021-02-24 10:21:03 +05:30
Shrikant Sharat Kandula
68bbc4fb28
Support server-side pagination for Firestore (#3128)
* POC for Firestore server-side pagination

* Load pagination information values from action configuration

* Get execution information for Firestore plugin

* Working implementation of pagination for Firestore

* Add tests for next and previou page navigations

* Require ordering to be set when paginating

* Remove commented code

* Don't report error on bad configuration

* Error out on usupported operation

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Move constant indices to constant fields

* Use executeParameterized instead of execute

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2021-02-24 10:20:08 +05:30
Shrikant Sharat Kandula
72df6fb299
Allow MongoDB datasources without username/password (#3149) 2021-02-23 16:54:27 +05:30
Sumit Kumar
4b09b2c379
Transform Dynamodb response for easy consumption (#3050)
- add support to handle dnyamoDb Binary type
- transform raw response to show extracted response and raw response for:
GetItem
BatchGetItem
DeleteItem
PutItem
Scan
TransactGetItems
UpdateItem
- modify TC.
2021-02-23 16:24:06 +05:30
Trisha Anand
139d870c17
Marking Prepared Statement in Postgres plugin as a beta feature (#3161) 2021-02-23 15:39:53 +05:30
Piyush
faea2f36ff
Add support for setting.json for pluginType DB (#3156) 2021-02-23 13:57:37 +05:30
Shrikant Sharat Kandula
9b58e683b5
Fix Spring deserialization routines failing at appLayout (#3155) 2021-02-23 12:32:55 +05:30
Nidhi
61af306110
Added null check for OAuth2 scopes(#3153) 2021-02-23 11:10:47 +05:30
Shrikant Sharat Kandula
e2509ae325
Add placeholder for MongoDB datasource config's host inputs (#3145)
* Remove example indicator
2021-02-23 09:52:45 +05:30
Shrikant Sharat Kandula
4f6a48bf40
Fix BatchGetItem & TransactGetItems operations failing on the DynamoDB plugin (#3120)
* Fix batch operations APIs failing with DynamoDB

* Fixed TransactGetItems operation on DynamoDB
2021-02-23 09:51:23 +05:30
Shrikant Sharat Kandula
15b8e0f590
Add appLayout field to Applications (#3144)
* Add `appLayout` field to Applications

* Fix NPE on clone
2021-02-22 19:21:13 +05:30
Shrikant Sharat Kandula
276338af0a Rename the $ref field to _ref in Firestore plugin (#3135)
(cherry picked from commit 198abbf37d)
2021-02-22 14:40:02 +05:30
Shrikant Sharat Kandula
198abbf37d
Rename the $ref field to _ref in Firestore plugin (#3135) 2021-02-22 13:57:04 +05:30
Trisha Anand
7ff80ea192
In case an action is created without plugin template being set, update doesn't set the property as well. (#3116) 2021-02-19 23:26:33 +05:30
Trisha Anand
5a2ad75d1b
Use a toggle instead of dropdown to configure Prepared Statements (#3105) 2021-02-19 16:31:18 +05:30
Shrikant Sharat Kandula
ef732f1389 Add request body and some other details in action execution data point (#3096) 2021-02-19 15:20:20 +05:30
Shrikant Sharat Kandula
a6be22e028
Add request body and some other details in action execution data point (#3096)
* Include request body in action execution data point

* Send analytics data point when analytics fails
2021-02-19 14:39:40 +05:30
dependabot[bot]
9579b91fae
Bump jackson-databind in /app/server/appsmith-plugins/restApiPlugin (#3098)
Bumps [jackson-databind](https://github.com/FasterXML/jackson) from 2.10.4 to 2.10.5.1.
- [Release notes](https://github.com/FasterXML/jackson/releases)
- [Commits](https://github.com/FasterXML/jackson/commits)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-02-19 08:24:07 +05:30
Shrikant Sharat Kandula
6eb9f399a3
Add a boolean isHidden field for pages (#3090)
* Add a boolean `isHidden` field for pages

* Add `isHidden` when loading all pages of application
2021-02-18 19:23:15 +05:30
Trisha Anand
e5574c1945
Support Prepared Statements in Postgres (#2967)
* Pushing minor editor form changes to ensure that prepared statement could be turned off.

* Code refactor to do variable substitution in PluginExecutor instead of action service.

* WIP : Prepared Statement handling in psql plugin

* WIP Prepared Statements.

* Working version of prepared statements

* Quote trimming added for post preparing sql statements. Now the unprepared statements and prepared statements do not require edits.

* Fixed existing test cases failing.

* Code formatting.

* Super minor code cleanup.

* Added migration for the existing postgres actions.

* Fixed failing test cases in ActionServiceTest.

* Minor change in the text for turning on and off prepared statements in the postgres query pane.

* Added test cases for prepared statement.

* Some minor comments for code readability

* Moved Prepared Statement setting from Action Configuration to Plugin Specified Templates since this setting does not make sense for all the DB plugins.

* Added function level comments

* Update app/server/appsmith-interfaces/src/main/java/com/appsmith/external/helpers/SqlStringUtils.java

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Update app/server/appsmith-interfaces/src/main/java/com/appsmith/external/helpers/SqlStringUtils.java

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>

* Incorporated review comments.

* Fixed compile time error.

Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-02-18 18:33:27 +05:30
Trisha Anand
b565301afe
Datasource is given permission for a public app during create/update of a public action (#3086)
* Added test case to assert that new datasources and actions created post making an application public have the correct permissions for public execution.
2021-02-18 18:05:07 +05:30
Sumit Kumar
2c395b8c82
Enchancements for AWS S3 plugin (#3079)
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2021-02-18 17:55:01 +05:30
Shrikant Sharat Kandula
60a4ddb3c1 Fix NPE on plugin specified templates (#3084)
(cherry picked from commit 2a2b55ceaf)
2021-02-18 13:12:08 +05:30
Shrikant Sharat Kandula
128444f46c Add more information for action execution (#3060)
* Add more information for action execution

* Add orgId and pageName to action execution data point

(cherry picked from commit 6936a40361)
2021-02-18 13:12:08 +05:30
Shrikant Sharat Kandula
2a2b55ceaf
Fix NPE on plugin specified templates (#3084) 2021-02-18 09:10:15 +05:30
Shrikant Sharat Kandula
6936a40361
Add more information for action execution (#3060)
* Add more information for action execution

* Add orgId and pageName to action execution data point
2021-02-18 08:30:56 +05:30
Shrikant Sharat Kandula
c80b6b4761 Include Firestore document metadata in responses (#3063)
(cherry picked from commit b9cb76e7e5)
2021-02-17 10:59:36 +05:30
Shrikant Sharat Kandula
b9cb76e7e5
Include Firestore document metadata in responses (#3063) 2021-02-16 22:09:09 +05:30
Piyush Mishra
74b013d909
Encode params toggle (#3006)
* Makes client side changes to support actionConfiguration.encodeParamsToggle setting.
* Add migration code.

Co-authored-by: Sumit Kumar <sumit@appsmith.com>
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
2021-02-16 20:31:35 +05:30
Nidhi
afc329fd7b
Added grant type Authorization code to OAuth2 (#2992)
Co-authored-by: Piyush <piyush@codeitout.com>
2021-02-16 17:58:03 +05:30
Arpit Mohan
a973d779fd
Correcting the display message for query actions based on isExecutionSuccess flag (#3045)
Also improving the mongo error response string. Now we only send the error message instead of the entire stack trace back to the client
2021-02-15 22:10:04 +05:30
Shrikant Sharat Kandula
3fd8db90bd
Consistent handling of signup configuration over FORM and OAUTH (#3013)
* Fix OAuth flow throwing 500 when signup is disabled

* Check for error code to identify signup disabled error

* Add consistent handling of allowed-domains for signing up

* Check for existence of valid email before checking domain
2021-02-12 19:48:07 +05:30
Sumit Kumar
5638997a36
change response data format for AmazonS3 Plugin (#3023)
* change response data format.
* fix TCs
2021-02-12 19:34:03 +05:30
Shrikant Sharat Kandula
48b8bb9de1
Fix order of roles in share modal (#3017) 2021-02-12 16:37:34 +05:30
Sumit Kumar
4df595417f
return url on file create and fix image/video file upload issues with amazons3 plugin (#3012)
1. Return url on file create.
2. Fix image/video upload/download.
3. Change error msg format to directly print error msg without adding any prefix sentence.
2021-02-12 16:01:26 +05:30
Nidhi
8823f9d407
Added client credentials grant type for OAuth2 (#2649)
* Added client credentials grant type for OAuth2

Co-authored-by: Piyush <piyush@codeitout.com>
2021-02-11 17:58:06 +05:30
Shrikant Sharat Kandula
8440d4e4e3
Allow app-viewers to invite others as app-viewers (#2961)
* Allow app-viewers to invite others as app-viewers

* Fix description for new permissions

* Migration for setting invite policy for app viewers
2021-02-11 16:33:35 +05:30
Sumit Kumar
4870c0d743
enable save on missing username/password (#2979)
1. Add encrypted logo to password.
2. Enable save on empty username / password.
2021-02-11 14:35:10 +05:30
Sumit Kumar
e9e30d1fa4
Enable toggle for params encoding (#2968)
Enable toggle for params encoding
1. Add toggle param to ActionConfiguration class.
2. Add TCs to test toggle on/off/null.
2021-02-11 11:02:29 +05:30
Sumit Kumar
2a7f7ba8c4
s3 plugin (#2735)
1. Integrate S3 plugin.
2021-02-10 15:26:01 +05:30
Shrikant Sharat Kandula
95d1717f57 Merge branch 'release' 2021-02-10 14:35:02 +05:30
Shrikant Sharat Kandula
ed1c926c8a
Add datasource structure support for DynamoDB (#2919) 2021-02-10 13:28:35 +05:30
Shrikant Sharat Kandula
c5df149ba8
Add IN operator support for forms' hidden fields (#2939) 2021-02-10 11:27:21 +05:30
Shrikant Sharat Kandula
0861836db4
Fix bindings in Firestore plugin's where condition value (#2934) 2021-02-09 19:11:16 +05:30
Nidhi
c0e44d0cd9
Added null check for error messages (#2922)
* Added null check for error messages

* Added a generic null check for future null pointers from other sources.
2021-02-09 15:00:22 +05:30
Trisha Anand
af273c60d8
When fetching unpublished actions and unpublished pages, check if the undeployed version is not deleted before fetching. (#2792)
* When fetching unpublished actions and unpublished pages, check if the undeployed version is not deleted before fetching.

* Only add unpublished page deleted at check if the view mode is false (aka edit mode)

* 1. Update action repository to fetch only non deleted actions if fetching actions in edit mode.
2. Added test cases to assert re-using of deleted page and action names.
2021-02-09 12:57:10 +05:30
Trisha Anand
078870f7c9
Communicate action execute on load changes in update layout (#2825)
* 1. Update on load actions correctly
2. Send the changed actions with their changes as well as messages back to the client as part of the response.

* Added test case to assert that the action updates are correctly recorded in updateLayout.

* Code cleanup + added more comments for code readability

* Incorporated review comments.
2021-02-09 10:39:08 +05:30
Shrikant Sharat Kandula
fbf6021080
Fix nested structure translation in DynamoDB (#2915) 2021-02-09 06:59:45 +05:30
Nidhi
973cd850e7
Modified documentation links for plugins (#2909)
* Modified documentation links for plugins

* Modified documentation links for plugins
2021-02-08 17:11:31 +05:30
Shrikant Sharat Kandula
ebcbfb0043 Merge branch 'release' 2021-02-08 16:39:47 +05:30
Shrikant Sharat Kandula
433ce89c76
Add support for handling array types in Postgres plugin (#2887) 2021-02-08 15:06:57 +05:30
Nidhi
35b3e7d84f
Switched test container ver (#2898) 2021-02-08 13:40:53 +05:30
Sumit Kumar
e6b77a1299
Stop logging some AppsmithPluginException to Sentry (#2351)
1. Move package  appsmith-interfaces/src/main/java/com/appsmith/external/pluginExceptions-> appsmith-interfaces/src/main/java/com/appsmith/external/exceptions/pluginExceptions
2. Move enum AppsmithErrorAction from appsmith-server/src/main/java/com/appsmith/server/exceptions/AppsmithError.java -> appsmith-interfaces/src/main/java/com/appsmith/external/exceptions/AppsmithErrorAction.java, so that both plugin exceptions and server exceptions could use the same enum.
3. Log exception based on the error action defined for each exception.
2021-02-04 15:24:30 +05:30
Shrikant Sharat Kandula
5c9f90fd59
Fix missing user name in first organization name (#2873) 2021-02-04 14:04:24 +05:30
Nikhil Nandagopal
8c5213b6fd
Merge pull request #2851 from appsmithorg/fix/docs-link
Fix/docs link
2021-02-03 21:31:33 +05:30
Nikhil Nandagopal
486a9da8dd updated all doc links 2021-02-03 20:45:16 +05:30
Shrikant Sharat Kandula
779c41e0d3 Merge branch 'release' 2021-02-03 17:44:23 +05:30
Nikhil Nandagopal
db9c2d6c27 Updated doc link 2021-02-03 17:28:05 +05:30
Shrikant Sharat Kandula
f950a9352b
Fix datasource hostnames being saved with spaces (#2844) 2021-02-03 16:46:09 +05:30
Shrikant Sharat Kandula
e9ba40f1f4
Analytics data point on action execution (#2740)
* Add analytics data point on action execution

* Include application details in action exec data point

* Only send action execution event on cloud

* Analytics is auto-disabled on self-hosted setups

* Move event name to AnalyticsEvents enum

* Move analytics Mono to separate method

* Use a common function to enqueue analytics message

* Provide analytics properties from caller method

* Use consistent casing in event names for analytics
2021-02-02 20:24:27 +05:30
Nidhi
01bbc03857
Fixed handling of lists in dynamodb (#2818) 2021-02-02 13:35:58 +05:30
Nidhi
c83fb70b95
Fixed ExecuteOnLoad not getting set for onPageLoad actions (#2801)
* Piped onpageload update function

* Added tests
2021-02-02 10:48:51 +05:30
Shrikant Sharat Kandula
98a0cd59b1
Fix reference types in arrays in Firestore (#2811)
* Fix reference types in arrays in Firestore

* Added a whole bunch of tests for various data types
2021-02-02 10:18:06 +05:30
Tim Dillon
91d5eb5860
Fix user email duplicated as name (#2787) 2021-02-01 14:51:44 +05:30
Shrikant Sharat Kandula
8475d71600
Fix RestAPI plugin not starting up (#2757)
* Remove unneeded dependency exclusions
2021-02-01 14:38:06 +05:30
Shrikant Sharat Kandula
018e1a94d6
Fix Firestore single document method for ref types (#2790) 2021-02-01 14:23:48 +05:30
Arpit Mohan
433461a347
Merge pull request #2759 from appsmithorg/release
Release v1.3.2
2021-01-28 18:02:48 +05:30
Nidhi
c17a2ea536
Modified error displayed to user on generic bad request (#2583)
* Modified error displayed to user on generic bad request

* Separate null check for cURL import
2021-01-28 12:14:34 +05:30
Dwayne Forde
51ccd19081
Use IPv4 on WSL machines (#2729)
WSL has issues when handling IPv6 ips. In order to resolve this, on dev machines, we now check if it's a WSL environment. If yes, we default to using IPv4 instead of IPv6.
2021-01-28 12:08:44 +05:30
Shrikant Sharat Kandula
b731793a88
Fix reference type fields in Firestore throwing 500 (#2718) 2021-01-27 20:38:46 +05:30
Shrikant Sharat Kandula
350aea90c4
Revert RestAPI plugin signature timeout fix (#2748) 2021-01-27 17:24:25 +05:30
Shrikant Sharat Kandula
63b7eb6e95
Fix signature in RestAPI plugin throwing timeout error (#2745)
* Fix restapi signature throwing timeout error

* Add missing dependencies for restapi
2021-01-27 14:55:08 +05:30
Shrikant Sharat Kandula
a6d76d1672
Fix organization slug computation clashes (#2725)
* Fix organization slug computation clashes

* Handle case where number-less slug is available
2021-01-27 14:35:43 +05:30
Shrikant Sharat Kandula
6bf2be65c0
Don't attempt to get structure for invalid datasources (#2730) 2021-01-27 13:44:15 +05:30
Shrikant Sharat Kandula
42efb20d14
Remove unused cert fields for Mongo and Postgres plugins (#2723) 2021-01-26 18:44:01 +05:30
Nidhi
6515b5c91c
Fixed null endpoint issue for MySQL plugin (#2719) 2021-01-26 17:16:31 +05:30
Trisha Anand
9e0f36a6f2
Improve Server thrown Error Messages' language (#2705)
* Improve Error Messages

* Added naming convention expansion for action name in the error

* Fixed failing test case assertion.

* Minor formatting.
2021-01-25 18:50:32 +05:30
Trisha Anand
3776e82fb8
Scheduling of parallel tasks implementation for on-page load actions (#2667)
* Proof of concept code which calculates the on load page actions.

* Refactored the field names introduced in Layout. Added a new field to keep a track of direct action names used in dynamic bindings in the DSL.

* Untested compute on on page load actions completed.

* Working page load actions computation.
TODO : Update the tests for correctness.

* Added fix for BFS starting from root nodes instead of arbitrary nodes.
Fixed a test case to assert for correct page load actions.

* Fixed the bug where the ids of the actions were not getting set in the layout. Also asserting the same in the test case for catching the future breaks.

* Minor refactor of function name to clear its purpose without reading the code.

* Incorporated review comments.

* Added conditional checks for unpublished action deleted and circular dependency of actions depending on each other.
2021-01-25 16:54:45 +05:30
Shrikant Sharat Kandula
1e8aa62654 Merge branch 'release' 2021-01-22 14:34:58 +05:30
Shrikant Sharat Kandula
468e84aabb
Fix calls to release notes from cloud instances (#2680) 2021-01-22 14:25:24 +05:30
Trisha Anand
48cfa2cea0
In case an action has been deleted in unpublished state, dont return it to the user in edit mode. (#2678) 2021-01-22 13:19:42 +05:30
Shrikant Sharat Kandula
95250cf955 Merge branch 'release'
# Conflicts:
#	app/client/src/constants/messages.ts
#	app/client/src/sagas/ErrorSagas.tsx
2021-01-21 17:16:33 +05:30
Shrikant Sharat Kandula
6b406be39e
Fetch release notes for caching every two hours (#2657)
* Fetch release notes for caching every two hours

* Revert unrelated changes in Ping class
2021-01-21 11:59:35 +05:30
dependabot[bot]
e781ceb30a
Bump jackson-databind in /app/server/appsmith-interfaces (#2652)
Bumps [jackson-databind](https://github.com/FasterXML/jackson) from 2.9.10.5 to 2.9.10.7.
- [Release notes](https://github.com/FasterXML/jackson/releases)
- [Commits](https://github.com/FasterXML/jackson/commits)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-01-21 10:48:01 +05:30
Shrikant Sharat Kandula
52c689efee
Add a migration to fix any remembered versions (#2651)
* Add a migration to fix any remembered versions

* Drop the userData collection instead
2021-01-21 07:39:41 +05:30
Shrikant Sharat Kandula
63fb249e40 Merge branch 'release'
# Conflicts:
#	app/client/cypress/integration/Smoke_TestSuite/Onboarding/Onboarding_spec.js
#	app/client/src/components/editorComponents/Onboarding/Tooltip.tsx
#	app/client/src/constants/OnboardingConstants.tsx
#	app/client/src/pages/Editor/Welcome.tsx
#	app/client/src/sagas/ActionExecutionSagas.ts
#	app/client/src/sagas/OnboardingSagas.ts
2021-01-20 15:49:56 +05:30
Shrikant Sharat Kandula
9ead9af5f6
Respond with empty string when no new versions (#2618) 2021-01-19 11:37:31 +05:30
Shrikant Sharat Kandula
f6845486d2
Handle snapshot versions as special (#2617)
This is needed for remembering when a user has viewed
release notes. Snapshot versions aren't a tagged marker
on the version timeline so aren't useful for this purpose.
2021-01-19 08:24:56 +05:30
Shrikant Sharat Kandula
3dc6f1107b
Send repo information when fetching release notes (#2615) 2021-01-18 21:21:22 +05:30
Shrikant Sharat Kandula
04d4812fc9
Fix getting release notes always resulting empty (#2609) 2021-01-18 15:21:50 +05:30
Nidhi
e6a0b00a25
Added Oauth2 functionality for REST APIs (#2509)
* Added Oauth2 functionality for REST APIs

* Encrypted response

* Missed file

* Review comments and tests

* Removed broken test
2021-01-15 16:41:13 +05:30
Trisha Anand
91b8922f1c
In case cs service returns an error, stop processing release notes and resume with the caller flow. (#2550)
* In case cs service returns an error, stop processing release notes and resume with the caller flow.

* In case the server was unable to exchange messages with the CS server, bail out of further processing gracefully since this is not a must have but rather a good to have feature.
2021-01-13 14:30:23 +05:30
Nidhi
9ea5c884e1
Null check for empty pagination next url (#2546) 2021-01-13 12:12:29 +05:30
Trisha Anand
c24bc826e0
When an application name is changed, the isPublic flag is reset to false. (#2539) 2021-01-12 20:06:33 +05:30
Shrikant Sharat Kandula
c6c128270c
Include version information when building Docker images for server and client (#2200)
* Include version information in backend builds

* Enable manual trigger of server workflow

* Add a dummy input field for manual trigger

* Fix secret checking in github actions

* Disable cron scheduling of sync job

* Build docker image on pushing a version tag

* Fix duplicated id and invalid id in release workflow

* Don't try to login to Docker

* Avoid download progress outputs from Maven

* Add version information for building client

* Calculate version number only once

* Enable push to DockerHub after building images

* Use Docker username from GitHub secrets

* Fix Docker username in tags when building image

* Use different secret for org name

* Minor refactoring in server workflow

* Update client build workflow to use version

* Enable manual triggering of client workflow

* Set snapshot version for server builds

* Push to docker for all branches (temp)

* Undo temp change to push all branches to DockerHub

* Use Docker org from secrets in client.yml

* Fix missing version reference in client.yml

* Remove debug command in dockerfile

* Save release notes in a resource file in Docker image

* Fix query serialization to get release notes

* Get releases of current repo instead of hard-coded repo

* Fix variable quoting for repo variables

* Exclude draft and prerelease nodes from image

* Fix call to any in release notes processor

* Fix syntax error in release notes script

* Implement API to get new release count and info

* Add missing ReleaseNotes component

* Have the release workflow run after a release is created

* Build server after generating release notes

* Change release trigger to "released"

* Change release trigger to "published"

* Change release trigger to released, edited and deleted

* Use JS script to get release notes, take 1

* Filter drafts and prereleases in script

* Fix syntax error in ES6

* Write release notes to file

* Create parent directory before writing release notes

* Log cwd in release notes script

* Log pwd along with release-notes content

* Handle case where working directory is incorrect

* Remove shell based release notes generator

* Don't show error when Sentry config is missing

* Check for sentry auth token to enable Sentry

* Carry build's exit code over to CI

* Mark out build result and add a note about it

* Add a small test to verify new versions computation

* Remove incorrect test assertion

* Remove generation of release notes file

* Connect to cloud services to fetch release notes data

* Fix missing runner for test class

* Handle missing cloud_services base URL

* Fix test failures due to missing mocks

* Enable sync-ee cron job

* Revert build.sh as there's no real change

* Add API to update release notes viewed version for users

* Fix prettier line-length errors

* Create UserData model for info unrelated to auth

* Fix field name calls

* Ensure we have a userId before setting userData

* Add tests for setting version number in UserData

* Include instanceId when fetching release notes
2021-01-12 18:15:15 +05:30
Shrikant Sharat Kandula
4fc6a7e763
Disable welcome email with an environment variable (#2527) 2021-01-12 16:50:26 +05:30
Shrikant Sharat Kandula
e4ba991114
Remove unused API endpoints for invite confirmation (#2532) 2021-01-12 16:20:48 +05:30
Trisha Anand
88e8723f37
Adding id and pluginType correctly for a user set on page load action (non referenced in the DSL) (#2523) 2021-01-12 14:39:53 +05:30
Shrikant Sharat Kandula
23cffc208f
Allow signup for admins, even if publicly disabled (#2520)
* Allow signup for admins, even if publicly disabled

* Use Set for admin email addresses

* Set two admin emails in test
2021-01-12 14:13:44 +05:30
Shrikant Sharat Kandula
9cd9edd3fa
Disable uninvited signups via environment variable (#2512)
* Disable signup API via environment variable

* Allow signup for invited users, even if disabled publicly

* Add test for signup when signup is disabled

* Run invite flow tests when signup is disabled

* Revert status annotation in signup API endpoint

* Remove unused tests on invite flow

* Change signup disabled error message
2021-01-11 20:10:50 +05:30
Nidhi
1fa7d46845
Fixed unreferenced actions not being triggered for execute on load (#2434)
* Fixed unreferenced actions not being triggered for execute on load

* WIP : Have to commit some minor cosmetic code formatting changes

* Comments and fix for action ordering

* modified test case

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2021-01-11 12:18:07 +05:30
dependabot[bot]
0ab61079e2
Bump axios from 0.19.2 to 0.21.1 in /app/server/scripts/node (#2462)
Bumps [axios](https://github.com/axios/axios) from 0.19.2 to 0.21.1.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v0.21.1/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.19.2...v0.21.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-01-07 17:38:24 +05:30
Trisha Anand
d1d73070f4 Adding action execution time and logging the same (#2473) 2021-01-07 14:10:22 +05:30
Trisha Anand
527bac0827
Adding action execution time and logging the same (#2473) 2021-01-07 13:49:50 +05:30
Sumit Kumar
4748014cee
Redshift plugin (#2440)
* introduce redshift plugin
2021-01-06 17:51:07 +05:30
Trisha Anand
bd011c45ab
Removed unused organization setting, setting class, and query class. (#2464) 2021-01-06 17:30:09 +05:30
Trisha Anand
db2b002ac7 Increased logs to debug future connection leaks. (#2437)
* Increased logs to debug future connection leaks.

* Fetch a connection from the pool only if a query exists.

* Minor comment added.

* Minor rewrite

* Code formatting.

* Update app/server/appsmith-plugins/postgresPlugin/src/main/java/com/external/plugins/PostgresPlugin.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Added hikari cp pool stats to get database structure function as well.

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-01-05 18:39:36 +05:30
Nidhi
de5003a98e
Added type parameter for REST API plugin, and changes for no auth (#2438)
* Added type parameter for REST API plugin, and changes for no auth

* Removed logs

* Converted to reactive
2021-01-05 17:59:50 +05:30
Trisha Anand
d5074ee7f7
Increased logs to debug future connection leaks. (#2437)
* Increased logs to debug future connection leaks.

* Fetch a connection from the pool only if a query exists.

* Minor comment added.

* Minor rewrite

* Code formatting.

* Update app/server/appsmith-plugins/postgresPlugin/src/main/java/com/external/plugins/PostgresPlugin.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Added hikari cp pool stats to get database structure function as well.

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-01-05 15:34:55 +05:30
Trisha Anand
214f911060 Fixed merge conflict related build failure. 2021-01-04 11:24:00 +05:30
Trisha Anand
24ef325467
Merge branch 'master' into release 2021-01-04 11:18:13 +05:30
Trisha Anand
e17da5f913 Merge branch 'release' of https://github.com/appsmithorg/appsmith into release 2021-01-01 01:24:55 +05:30
Trisha Anand
a3378397d7 Increasing pool size to 20 to reduce the number of times datasource becomes unusable. Symptomatic relief till I can solve for this at leisure over the next few days.
Note : Update/Insert are leading to connection leak
2021-01-01 01:24:26 +05:30
Trisha Anand
d4640e01a2
Invite users once triggered should not be cancellable. (#2401)
* Invite users once triggered should not be cancellable.
2020-12-30 16:50:01 +05:30
Trisha Anand
712f41db92
Reducing the probability of getting pages out of order (Expected order is the order in which the pages were created and added to the application). This should : (#2391)
1. Get rid of cypress test failures which asserts a certain order till the cypress test case is fixed and unblocks the frontend team.
2. Uses a bulk API to fetch all the pages instead of fetching each page sequentially over different network calls with the database.
2020-12-29 19:10:01 +05:30
Trisha Anand
ea366b1d29 Fixed NPE in database migration 2020-12-29 17:06:30 +05:30
Trisha Anand
735a4398b2
Added a migration to old rest api datasources which adds the new mandatory key isSendSessionEnabled with value N (#2388) 2020-12-29 16:29:28 +05:30
Trisha Anand
ea0f9c159c
[Bug] Multi page applications return only a single page when fetching pages per application (#2383)
* Zipping flux with mono leads to mono not getting repeated and only the first emitted value of flux is processed further. This is leading to only a single page getting emitted in a multi page application.

* Added a test case to assert this for a multi page application
2020-12-29 13:38:47 +05:30
Trisha Anand
a70b95be37 Adding leak detection to hikari pool. Would be tracking this on logdna to ensure that we are catching any and all leaks that may be occuring with hikari. (#2374) 2020-12-28 18:29:50 +05:30
Trisha Anand
051d3c6c7f
Adding leak detection to hikari pool. Would be tracking this on logdna to ensure that we are catching any and all leaks that may be occuring with hikari. (#2374) 2020-12-28 18:26:33 +05:30
Sumit Kumar
6299c86f39
Add TC to test mongodb connection establishment (#2364)
1. Test that when a query is attempted to run on mongodb server but refused because of lack of authorization, then
also, it indicates a successful connection establishment.
2020-12-28 11:58:17 +05:30
Trisha Anand
6210b9a0c0
All newly created applications now have a default published state. (#2309)
* All newly created applications now have a default published state.

* Added a test case to assert a new application comes up with default published states for both application and the default page.

* Function name changed.

* When trying to fetch a published version of a page when the page has not been published, throw a 404.

* WIP : Not working
2020-12-28 10:30:43 +05:30
Shrikant Sharat Kandula
85350b2940 Add migration to set isEncrypted field where missing (#2332)
(cherry picked from commit d5e0fb18d8)
2020-12-23 18:07:35 +05:30
Shrikant Sharat Kandula
4ff2834559 Missing isEncrypted should mean a true value
(cherry picked from commit c7f330c4c7)
2020-12-23 18:07:35 +05:30
Shrikant Sharat Kandula
d5e0fb18d8
Add migration to set isEncrypted field where missing (#2332) 2020-12-23 15:35:45 +05:30
Shrikant Sharat Kandula
c7f330c4c7 Missing isEncrypted should mean a true value 2020-12-23 14:23:03 +05:30
Sumit Kumar
53a6160139
Revert "Redshift plugin (#2112)" (#2314)
This reverts commit 708ca7fedf.
2020-12-22 16:59:18 +05:30
Sumit Kumar
708ca7fedf
Redshift plugin (#2112)
1. Add new plugin to connect to AWS Redshift cluster and run query.
2. Add unit test cases.
2020-12-22 15:35:25 +05:30
Shrikant Sharat Kandula
ea6e897dde
Firestore ADD_TO_COLLECTION command support (#2305)
* Support ADD_TO_COLLECTION operation on Firestore

* Add test for Firestore add-to-collection command
2020-12-22 12:32:14 +05:30
Shrikant Sharat Kandula
cfcd7aa0bb
Fix Firestore datasources not encrypting secret key JSON when editing (#2296)
* Fix encrypted field not being ignored in JSON

* Don't mask error in decrypting

* Revert masking of error in decrypting
2020-12-21 17:43:15 +05:30
Nidhi
e3cf285d1e
Fixed encryption related bugs for empty/new datasource (#2287) 2020-12-21 10:41:57 +05:30
Shrikant Sharat Kandula
fdc4f7b200
Fix invalid templates and API breaking on invalid templates (#2286) 2020-12-19 13:00:24 +05:30
Shrikant Sharat Kandula
5e04ca5c9d
Add ability to configure order of templates of plugins (#2279) 2020-12-18 20:45:08 +05:30
Nidhi
5a36d17f7a
Fixed encryption related bugs for empty/new datasource (#2272) 2020-12-18 16:13:01 +05:30
Nidhi
a00c144e85
Subclassing authentication (#2215)
* Sublcassing authentication

* Removed TODO

* Review changes
2020-12-17 21:38:52 +05:30
Trisha Anand
29706f7852
Removing printing the result for firestore plugin (#2191) 2020-12-14 14:48:50 +05:30
Trisha Anand
e5c44168f3
Configured pool size for hikariCP when new pool comes uo. (#2170) 2020-12-14 11:07:53 +05:30
Nidhi
9a9feff678
Reset execute on page load for new actions (copied or otherwise) (#2162) 2020-12-11 14:33:07 +05:30
Trisha Anand
74342f8598
Adding hikariCP for postgres (#2130) 2020-12-10 21:08:02 +05:30
Arpit Mohan
85d958c2c0
[CodeFactor] Apply automated fixes (#2131)
Co-authored-by: codefactor-io <support@codefactor.io>
2020-12-10 18:44:31 +05:30
Trisha Anand
746b0ab58e Changed log to sout in postgres plugin 2020-12-09 19:16:54 +05:30
Trisha Anand
888d79b06d Removing printing of result objects from plugin execution. 2020-12-09 19:03:51 +05:30
Trisha Anand
8283396056
Moved from boundedElastic to elastic to ensure that the server services the plugin execution request as soon as the request arrives. (#2090) 2020-12-08 22:04:14 +05:30
Sumit Kumar
db3636f7b0
mysql plugin - check if connection is stale before running query (#2080)
1. Check if mysql plugin connection is stale. If so, then return stale connection exception which triggers a retry after 
    establishing a new connection.
2. Refactor execute method code to remove code duplication.
3. Add a new test case to check if stale connection gets detected.
2020-12-08 21:03:31 +05:30
Shrikant Sharat Kandula
4d24c8614f
Set random icons and colors for apps that are missing them (#2083) 2020-12-08 15:41:40 +05:30
Arpit Mohan
9d7a9d4aaf
Modifying the text for the roles in the share modal (#2045) 2020-12-07 16:16:43 +05:30
Trisha Anand
b8b24604a6
[Bug] Update of an action leads to userSetOnLoad getting reset. (#2023)
* Update of an action leads to userSetOnLoad getting reset.

* Added test case to assert the same.
2020-12-04 13:07:34 +05:30
Sumit Kumar
b6abb8b067
Encode request body in Rest API plugin (#1988)
1. Encode request body in REST API plugin when content header for URL encode is set.
2. Add a test case to test the encoding function.
3. Add a test case to check non-encoding (raw) function.
2020-12-04 11:39:15 +05:30
Shrikant Sharat Kandula
4a57a739b6
Render templates directly without Mustache (#2010)
* Render templates directly without Mustache

* Remove an unused variable
2020-12-03 14:38:31 +05:30
Shrikant Sharat Kandula
9bbbf37ae0
Fix #1597: Add a signed issuer token to proxied requests, if configured (#1953) 2020-12-02 18:20:57 +05:30
Sumit Kumar
d347448b24
Propagte mysql test datasource failure to UI. (#2001)
1. Propagte mysql test datasource failure exception message to UI.
2. Change build TC to reflect the same.
2020-12-02 17:53:38 +05:30
Sumit Kumar
b3c3102c72
Add tests for mysql plugin to test all regularly used data types in mysql. (#1994) 2020-12-02 11:49:41 +05:30
Sumit Kumar
883fa44896
Make sql plugin use R2DBC driver instead of JDBC driver (#1936)
1. Add R2BC driver and remove JDBC driver usage in mysql plugin to make the plugin reactive.
2. Update dependencies in POM file.
3. Update mysql plugin to return result based on the type of sql query i.e select vs other queries. In case the queries are chained, then the last query is used for deciding the type.
4. Added a new TC for testing datasource and removed a non functional TC.
2020-11-28 18:04:56 +05:30
Nidhi
6c974408bd
Added IntelliJ run configuration for an easier getting started experience for contributors (#1944)
* Added run configuration for IntelliJ

* Added instructions for run config
2020-11-27 14:31:09 +05:30
Trisha Anand
2062c60ca3
Moved all the scheduling of the plugin executions to bounded elastic instead of elastic. (#1931) 2020-11-26 17:50:43 +05:30
Arpit Mohan
36af9d5c5e Correcting the placeholder in firestore form.json 2020-11-24 11:00:27 +05:30
Shrikant Sharat Kandula
74cd362057
Firestore Integration (#1799)
* Adding the skeleton for Firestore integration

* Adding the datasource & query editor forms

Also adding the database changelog for the firestore plugin

Commenting out the firestore.close() connection because that causes issues with multiple Firestore tenants running in the same JVM.

* Adding the code for fetching the structure of collections from Firestore

* Use single document path field for Firestore

* Fix potential NPE when datasource destroy timeouts

* Work in progress on collection level ops for Firestore

* Get documents in a collection now works

* Add collection level querying support

* Mild refactoring

* Fix NPE when some fields are missing

* Hide clientJSON as a password field for Firestore

* Make collection level querying reactive

* Make reactive

* Validate before connecting

* Add tests for all supported methods in Firestore

* Fix forms for Firestore with hidden fields

* Hide limit and order by fields when not needed

* Restore log entry deleted by mistake

* Use S3 URL for Firestore/Firebase logo

* Add comments detailing why some code is commented

* Make parsing JSON reactive and fix subscribe calls

* Fix reactive scheduler

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2020-11-23 18:42:33 +05:30
Trisha Anand
c07264f1c1
Making Redis plugin blocking statements run on elastic thread pool (#1850) 2020-11-23 17:03:04 +05:30
Trisha Anand
772884e1a3
Making dynamo db's blocking commands run on elastic thread pool. (#1853) 2020-11-23 17:02:41 +05:30
Trisha Anand
d8cba1bf8c
Making MySql blocking commands run on elastic thread pool (#1862) 2020-11-23 17:02:18 +05:30
Trisha Anand
0bb99dd087
Elastic search plugin's blocking calls moved to elastic scheduler thread (#1855) 2020-11-23 17:01:34 +05:30
Trisha Anand
242afd5753
Making MS-SQL plugin blocking statements run on elastic thread pool (#1827)
* MS-SQL Plugin now creates connection and executes statements over elastic thread pool.

* Added a test to ensure that throwables are clean.
2020-11-23 11:28:01 +05:30
Trisha Anand
dc7a375543
Making postgres plugin blocking statements run on elastic threadpool. (#1821)
* Making postgres plugin blocking statements run on elastic threadpool.

* Moved the blocking calls to check for the connection validity, etc. also inside the Mono.fromCallable
2020-11-23 11:27:52 +05:30
Trisha Anand
c2d1ac973c
Adding thread name to the context of logs to allow for the thread names to be printed for each log. (#1824) 2020-11-23 10:45:15 +05:30
Trisha Anand
882df291d7
[Bug Fix] Indices not working for fetching actions during update layout (#1813)
Instead of using compound index, using single indices to ensure that both fetch actions by app id (during load of actions in edit/view mode) and fetch actions by page id (during update layout) are indexed queries.
2020-11-20 13:30:17 +05:30
Trisha Anand
63fe27fae1
[Bug Fix] : Clone Application creates corrupted clone when interrupted. (#1800)
* Doing a deep copy during clone application instead of updating the original application which may have been causing a concurrency bug.

* Ensuring that once the clone application flow is triggered, the flow completes eventually even if the client cancels the request before completion.

* Cloned application would not be public.

* Added parametrized Application constructor

* Removed lombok all args constructor

* Optimized import

* Incorporated review comments :
1. Updated the constructor for creating the application
2. Added a test case to assert that if during cloning of an application the flow gets cancelled, the cloning would still complete and ensure that the application created is sane.
2020-11-20 10:55:59 +05:30
Sumit Kumar
b03e815952
Change Sentry log 'environment' tag value. (#1789)
* Change Sentry log 'environment' tag value.

1. Change Sentry log 'environment' tag value to 'Properties' from 'properties'.
2020-11-19 17:29:48 +05:30
Arpit Mohan
9772d64c5b
Disable instance ping check when the disableTelemetry flag is set (#1776)
Also adding the APPSMITH_SEGMENT_CE_KEY as a build arg to the server Dockerfile. This will be used to set the environment variable in the Docker image itself.
2020-11-19 08:54:03 +05:30
Sumit Kumar
2c6d1bb361
Fix mongodb datasource test. (#1783)
1. Fix mongodb datasource cypress test failure.
2. Against certain mongodb instances, we expect to receive an exception of type "unauthorized" when testing datasource. Earlier, this case was caught and whitelisted until the recent change to replace mongodb infra with reactive mongodb infra.
2020-11-18 16:55:39 +05:30
Nidhi
941be8c58d
Fixed check for incorrect dynamic bindings (#1775)
* Fixed check for incorrect dynamic bindings
2020-11-18 14:25:55 +05:30
Shrikant Sharat Kandula
f36adeb6b5
Fix #1766: cURL parser eats backslashes in single-quotes (#1768) 2020-11-18 11:20:23 +05:30
Shrikant Sharat Kandula
2ca15ba57d
Fix #1758: columns duplicated in Postgres structure (#1767) 2020-11-18 11:19:55 +05:30
Sumit Kumar
2c2aa06e32
Add support for reactive streams with mongodb. (#1720)
Add support for reactive streams with mongodb. (fixes 1480)

1. Replace mongodb driver with reactive mongodb driver. Change APIs accordingly.
2. Use webflux + reactor framework to execute mongodb queries in event loop model.
3. Add test to test MongoPluginExecutor class' method "testDatasource".
2020-11-18 10:58:50 +05:30
Trisha Anand
fc3197b78f
Email sending is now non-blocking. The blocking code for email sending is triggered and then immediately returned. (#1762) 2020-11-18 00:31:39 +05:30
Arpit Mohan
c3a44651f2
Adding null check for dynamic binding path list (#1752)
* Adding null check for dynamic binding path list.

* Increased timeout duration for failing test

Co-authored-by: Nidhi <nidhi.nair93@gmail.com>
2020-11-17 15:38:48 +05:30
Trisha Anand
6ac04d8a9e
Added SLA bucket for metric evaluation for 1 second (#1740) 2020-11-17 12:47:49 +05:30
Nidhi
9de085f264
Switched to using dynamicBindingPathList for generic scan, supports DB queries and nested structures
* Switched to using dynamicBindingPathList for generic scan
2020-11-17 11:26:08 +05:30
Trisha Anand
a722b08002
Adding index for unpublishedAction.pageId to bring down the number of documents fetched in mongo db query during update layouts' fetching actions on page load. (#1739) 2020-11-16 18:59:04 +05:30
Hetu Nandu
a51082fb54 Merge branch 'master' into release 2020-11-11 18:51:03 +05:30
Sumit Kumar
2dc2615311
Replace Rollbar with Sentry (#1606)
* Replace Rollbar with Sentry

1. Log exceptions using Sentry instead of Rollbar.
2. Remove all Rollbar infra.
2020-11-10 09:59:10 +05:30
Nidhi
1741e61ba0
Added user roles list to application fetcher (#1624)
* Added user roles list to application fetcher

* Fixed blanket import
2020-11-09 11:54:30 +05:30
Nidhi
62e4e28c8e
Fixed upload logo payload limit and added delete logo API (#1574)
Also changed name of default organization to xyz's apps
2020-11-09 07:52:08 +05:30
Trisha Anand
24582a2e58
Adding server side performance tooling using spring metrics. (#1562)
* Experimenting with spring metrics, prometheus

* Added prometheus config in application.properties.

* Added a few more configurations for spring metrics to improve performance tooling.

* Added basic authentication to allow prometheus to scrape our monitoring data in an authenticated fashion.

* Only exposing prometheus end point at this junction instead of other metric endpoints as well.

* Fixed test case which failed because of actuator instantiating bean.
2020-11-05 14:33:40 +05:30
Sumit Kumar
6db7101662
Report selective errors to rollbar. (#1516)
* Report selective errors to rollbar.

1. Assign an action attribute to each AppsmithError enum item. Take action based on the action attribute.

* Fixing the condition for organization name being empty

* Report selective errors to rollbar.

1. Assign an action attribute to each AppsmithError enum item. Take action based on the action attribute.

Co-authored-by: Sumit Kumar <sumitsum@Sumits-MacBook-Pro.local>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2020-11-04 17:32:43 +05:30