PromucFlow_constructor/app/server
Shrikant Sharat Kandula 381dcaaf8a
chore: Include version in all requests (#37551)
We're adding `x-appsmith-version` to every request from the client. If
server sees a request with a `x-appsmith-version` that doesn't match its
own, it rejects. If the server sees a request _without_ any
`x-appsmith-version` header, we don't reject it... for now.

On the client, when server responds with the "version mismatch" error,
we trigger the "There's a new version, please refresh" toast UI flow.

This is a step towards removing our dependency on websockets and
client—RTS connection.

## Automation

/test sanity

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


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


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

## Release Notes

- **New Features**
- Introduced a custom header for API requests to include application
version.
- Added specific error handling for 400 Bad Request errors, enhancing
user feedback on version mismatches.

- **Improvements**
- Enhanced error handling for version mismatches, providing clearer
error messages.
- Simplified version update handling, focusing on logging and user
prompts without state management.
- Improved default handling for application version configuration to
prevent undefined values.

- **Chores**
- Removed outdated version state management functions to streamline
code.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pawan Kumar <pawan@appsmith.com>
2024-11-27 12:58:28 +05:30
..
.run
appsmith-git chore: Allow all file I/Os for git in parallel (#36872) 2024-10-21 17:45:12 +05:30
appsmith-interfaces chore: Added git resource map types (#37746) 2024-11-27 10:17:33 +05:30
appsmith-plugins chore: add executeActionDTO as additional parameter to be used when creating query for AppsmithAI plugin queries (#37631) 2024-11-25 03:46:59 -06:00
appsmith-server chore: Include version in all requests (#37551) 2024-11-27 12:58:28 +05:30
envs test: Enable server tests for the PRs with base PG branch (#33429) 2024-05-22 15:55:20 +05:30
mongo-seed
reactive-caching chore: Upgrading spring to 3.3.3 to resolve vulnerable dependencies (#36266) 2024-10-01 22:12:56 +05:30
scripts chore: Revert "chore: delete redundant files" (#35022) 2024-07-18 16:18:10 +05:30
.gitignore
build.sh test: Enable server tests for the PRs with base PG branch (#33429) 2024-05-22 15:55:20 +05:30
buildpack-run.sh
pom.xml chore: add spotless for sql files for postgres (#37016) 2024-11-09 11:21:30 +05:30
Procfile
README.md
system.properties

Appsmith Server

This is the server-side repository for the Appsmith framework.

For details on setting up your development machine, please refer to this Setup Guide.