Skip to content

Latest commit

 

History

History
50 lines (32 loc) · 3.11 KB

CONTRIBUTING.md

File metadata and controls

50 lines (32 loc) · 3.11 KB

Contributing

Please first discuss the change you wish to make via an issue before making a change.

Development environment

You will need to setup a development environment before you can start making changes to the Development Hub app. If you do not have an existing instance, you can create one for free with the Power Apps Community Plan or signing up for a trial.

Power Apps CLI

You must have the Power Apps CLI installed to use some of the Visual Studio Code build tasks. The solution.json in each solution folder has a developmentProfile property - this is the Power Apps CLI authenication profile that maps to the development environment for that solution. You must create these authentication profiles using pac auth create.

Power Apps

A Visual Studio Code task has been defined which will allow you to provision a development instance for a given solution. For example, if you wanted to contribute to the devhub_DevelopmentHub_Develop solution, you would open the command palette within VS Code (ctrl + shift + p) and select Tasks: Run Task followed by Prepare Development Environment and devhub_DevelopmentHub_Develop. This task requires that you have first configured the authentication profile for the solution (as explained above).

Build tasks

Build tasks have been defined to make development easier. Call these in Visual Studio Code via the command palette (ctrl + shift + p) and selecting Tasks: Run Task.

The following tasks are available:

  • Clean
  • Restore
  • Compile
  • Compile tests
  • Prepare development environment
  • Generate early-bound model
  • Deploy workflow activities
  • Deploy plug-ins
  • Extract solution
  • Pack solution

A description will be shown for each.

Building outside of the tasks is not recommended!. If you are building the solution in Visual Studio, you should set the following environment variable: MSBUILDDISABLENODEREUSE=1. This is a workaround for an apparent bug in the MSBuild tasks used by solutions created with the Power Apps CLI. If you do not disable parallel builds or node reuse using the environment variable above, plug-in assembly files become locked afte a build and subsequent builds will fail.

Extract to source control

Before creating a pull request containing your changes, you must extract the solutions into source control. This can be done using the Extract solution task and specifying which solution(s) to extract.

Pull requests

A maintainer will merge your pull request once it meets all of the required checks. Please ensure that you:

  • Write commit messages that increment the version using GitVersion syntax
  • Write commit messages follow the Conventional Commits specification
  • Write automated tests to cover any new or changed functionality
  • Update the README.md with details of any new or changed functionality