PromucFlow_constructor/contributions/CodeContributionsGuidelines.md
Apeksha Bhosale 5729d083e2
chore: added one more step for limited-tests to contributor guidelines (#34683)
## Description

As we are have been seeing contributors are adding new cypress tests we
want to execute it using `ci-test-limit`. We need to always make a
change to limited-tests file to run new test now we will trigger
`ci-test-limit` directly to save efforts.
 
Fyi: we need to revert `limited-tests.txt` after everything looks good
on PR. this step to reduce one step effort from our side


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

## Automation

/ok-to-test tags="@tag.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/9804245011>
> Commit: 8384096f415124619b17aac586b4a98ccd3717a5
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9804245011&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> <hr>Fri, 05 Jul 2024 07:03:52 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
2024-07-05 14:19:20 +05:30

61 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Contributing code
### Getting Started
All submissions, including submissions by project members, require review. We use GitHub pull requests for this purpose. Consult GitHub Help for more information on using pull requests.
Before raising a pull request, ensure you have raised a corresponding issue and discussed a possible solution with a maintainer. This gives your pull request the highest chance of getting merged quickly.
### Good First Issues
Looking for issues to contribute to? Check out our [Good First Issues](https://github.com/appsmithorg/appsmith/issues?page=3&q=is%3Aopen+is%3Aissue+label%3A%22Good+First+Issue%22) a great starting point for your contribution journey with Appsmith! Tag @contributor-support to have an issue assigned to you. If you choose to work on issues outside this list, please collaborate closely with us. Failure to inform and get the issue assigned beforehand may result in your contribution being rejected, leading to wasted effort for both parties.
#### What not to do:
1. Work on issues without informing the maintainer. Please get them assigned to yourself first. Comment on the issue if you are interested.
2. Naming lengthy branches.
3. Create PR(s) without proper description.
4. Requesting for review without latest release pull on PR.
5. Raising PR(s) without tests.
6. Not going though the code contibution guidelines before first contribution. Just kidding, you are already here 😉
### 🍴 Git Workflow
We use [Github Flow](https://guides.github.com/introduction/flow/index.html), so all code changes happen through pull requests.
1. Fork the repo and create a new branch from the `release` branch.
2. Branches are named as `fix/fix-name` or `feature/feature-name`
3. Please add tests for your changes. Client-side changes require Cypress/Jest tests while server-side changes require JUnit tests.
4. If you are adding new cypress tests, add test path to `limited-tests.txt`
5. Once you are confident in your code changes, create a pull request in your fork to the release branch in the appsmithorg/appsmith base repository.
6. If you've changed any APIs, please call this out in the pull request and ensure backward compatibility.
7. Link the issue of the base repository in your Pull request description. [Guide](https://docs.github.com/en/free-pro-team@latest/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue)
8. When you raise a pull request, tag the maintainer you are collaborating with to start the build process.
9. If changes are requested, work on them, commit them back, and tag the reviewer again.
10. Once all changes have been approved by the reviewer and the CI has run successfully, your PR will be merged into the base branch. Congratulations!
### 🏡 Setup for local development
#### Pre-requisites
1. Install `gitleaks`
- `brew install gitleaks` (macOS)
- [Others](https://github.com/gitleaks/gitleaks#getting-started)
#### Code setup
- [Running the Client](ClientSetup.md)
- [Running the Server](ServerSetup.md)
### Other Contributions
#### Server Code
Please follow these guidelines according to the module that you wish to contribute to:
- [Plugin](./ServerCodeContributionsGuidelines/PluginCodeContributionsGuidelines.md)
#### Client Code
Please follow the below guideline to add a new JS library to the Appsmith platform:
- [Add Custom JS Library](./CustomJsLibrary.md)
Please follow the below guideline for widget development
- [Widget Development Guideline](./AppsmithWidgetDevelopmentGuide.md)