Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Contributor guide #334

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 48 additions & 0 deletions CONTRIBUTION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# Contributing to the Power Apps Test Engine

Thank you for your interest in contributing to the Power Apps Test Engine!

There are many ways in which you can contribute to the Power Apps Test Engine. The goal of this document is to provide a high-level overview of how you can get involved.

## Report a Bug or submit a Questions or Feature Requests

Have you found a bug in the Power Apps Test Engine or do you want to suggest a new feature? Either way, please let us now by filing an issue while observing the following guidelines

### Look for an existing issue

Before submitting your issue please search the [issues](https://github.com/microsoft/coe-starter-kit/issues) to ensure your issue has not already been reported

If your bug or feature request has already been reported you are welcome to join the conversation by commenting and adding your reaction. Please use reactions to vote and not "+1" comments.

- 👍 - upvote
- 👎 - downvote

### Submitting your Issue

Select the Issue template that matches the solution for which you want to submit an issue.

File a single issue per problem and feature request. Do not enumerate multiple bugs or feature requests in the same issue.

Do not add your issue as a comment to an existing issue unless it's for the identical input. Many issues look similar, but have different causes.

The more information you can provide, the more likely someone will be successful at reproducing the issue and finding a fix.

Observe the inline guidelines of the Issue template.

## Contribute with Code

If you are interested in contributing to the Power Apps Test Engine by fixing issues or adding features please read the [How to Contribute](HOW_TO_CONTRIBUTE.md) guide.

## Code of Conduct

Please note that the Power Apps Test Engine project has a [Code of Conduct](https://github.com/microsoft/PowerApps-TestEngine/blob/master/CODE_OF_CONDUCT.md) that all contributors are expected to follow.

## License

The Power Apps Test Engine is licensed under the [MIT License](https://github.com/microsoft/PowerApps-TestEngine/blob/master/LICENSE). By contributing to this project, you agree to license your contributions under the same license.

## More Information

For more information about using the Power Apps Test Engine as part of the [Power Platform Command line interface](https://learn.microsoft.com/power-platform/developer/cli/introduction), please refer to the [pac test](https://learn.microsoft.com/en-us/power-platform/developer/cli/reference/test) documentation.

> [!NOTE] This open source project is not part of the Microsoft Support Incident and Change Management process and is maintained by the community.
60 changes: 60 additions & 0 deletions HOW_TO_CONTRIBUTE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Contributing

This project welcomes contributions and suggestions. Most contributions require you to
agree to a Contributor License Agreement (CLA) declaring that you have the right to,
and actually do, grant us the rights to use your contribution. For details, visit
[Contributor License Agreement](https://cla.opensource.microsoft.com/).

When you submit a pull request, a CLA-bot will automatically determine whether you need
to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the
instructions provided by the bot. You will only need to do this once across all repositories using our CLA.

This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/)
or contact [[email protected]](mailto:[email protected]) with any additional questions or comments.

## Branching Strategy

The Power Apps Test Engine uses feature branches from the main branch. New features should be created in a new branch and relate to an file issue that has input from the core maintainers of the project.

When creating new releases of pac test commands the main branch is used.

## Getting your own copy of the source code

Any code (documentation, solution components, yaml pipelines etc.) contribution you want to make to Power Apps Test Engine should be made in your own copy of the source code.

> [!NOTE]There are many ways to interact with github depending on your development workflow and the tools and software you use. The steps to create your own copy of the source code will differ depending on your tools and software.

To create a copy of the repository you should fork the Power Apps Test Engine repository to your own github account.
Any contributions you make should be made in your own fork.

> [!NOTE]To learn about GitHub forks visit the GitHub docs: [Working with forks](https://docs.github.com/en/github/collaborating-with-pull-requests/working-with-forks/about-forks)

You should always ensure that your fork is up-to-date with the upstream repository by regularly synchronizing your fork.

The simplest way to synchronize your fork with the upstream repository is via the **Fetch upstream** feature on your fork github page.

Selecting **Compare** will allow you to compare the changes in the upstream repository against your own fork and create a pull request to merge these into your own fork.

Selecting **Fetch and merge** will fetch all upstream changes and merge into your own fork without a pull request work flow.

To manage the synchronization of upstream changes on the command line please refer to the GitHub documentation on [Syncing a fork](https://docs.github.com/en/github/collaborating-with-pull-requests/working-with-forks/syncing-a-fork)

## Local branch strategy

When implementing your contributions in your forked repository it is recommended that you employ a feature branch strategy. This means that you will have a branch for each feature or bug fix that your contribute. This approach helps keep the review process as simple as possible.
We recommend naming your feature branches in a way that identify the feature or bug fix your are working on by having the issue id in the branch name. For example yourgithubhandle/featurename-issuenumber **grant-archibald-ms/contributions-333** or featurename-issuenumber **contributions-333** if the feature relates to collaboration between multiple contributors.

## Pull Requests

When your contribution is complete and you are ready to submit your changes to the Power Apps Test Engine repository you should make a Pull Request from your feature branch in your own fork into the main branch in the Power Apps Test Engine repository.

Before we can accept a pull request from you, you'll need to sign a Contributor License Agreement (CLA). It is an automated process and you only need to do it once.

To enable us to quickly review and accept your pull requests, always create one pull request per issue and link the issue in the pull request. Never merge multiple requests in one unless they have the same root cause.

## Where to Contribute

To improve the chances to get a pull request merged you should select an issue that is labeled with the help-wanted or bug labels. If the issue you want to work on is not labeled with help-wanted or bug, you can start a conversation with the issue owner asking whether an external contribution will be considered.

To avoid multiple pull requests resolving the same issue, let others know you are working on it by saying so in a comment.
Loading