The updated version of PCF tooling (PowerApps CLI) is now available! Today we released new capabilities for several of our most popular feature requests in the PowerApps CLI. We are now providing PowerApps component framework developers the ability to not only see changes in the test harness as they are made but to also push components directly into an org using the CLI. These innovations will greatly speed up the development inner loop!
The push capability will make you more efficient because it bypasses the custom component versioning requirements and does not require you to build your solution in order to import into your development environment. The watch capability removes the need to reload your test harness after every change is made.
If you have not yet updated your PowerApps CLI to the latest version, this release is definitely the time to do it! To get all the latest capabilities, please install the latest MSI by following the tooling documentation .
Once you have the latest version of the CLI you can always refer to the tooling documentation or get quickly started using the steps outlined below.
The test harness can be set up to watch and recompile the source code of your PowerApps Component Framework projects. To enable watch mode, start the test harness using the command “npm start watch” from the command prompt. The watch capability will detect changes in index.ts, ControlManifest.Input.xml, other bundled .ts files, and all resources declared in the manifest, then rebuild your component and automatically update the test harness without having to restart it.
To start pushing your custom component directly into an environment, there is a quick but essential step of setting up your authentication profile in the CLI. This setup is a one-time effort where your profile can be saved for future connections. Here is how to do it:
To start with, please create your authentication profile using the command:
"pac auth create --url"
Now that you have an authentication profile, you can start pushing your updated component by following two simple steps:
1. In your VS command prompt, go to the root directory of your custom component project
2. Run the command "pac pcf push --publisher-prefix"
We hope you enjoy the newly added features and are excited to hear what you thinks about them. If you have questions or other feedback, please let us know on the PowerApps component framework forum. We look forward to hearing from you!
Nice work team, can’t wait to try this out. Very slick improvements there.
Edit: Tested the Push deploy function.... can confirm works great in my instance!
@peterv333 can you add the upgrade instructions link to your OP?
This is a great productivity booster. Thank you this update.
On a side note, the issue with updating the CLI when the path contains spaces has not still be fixed. So, I end up using
nuget install Microsoft.PowerApps.CLI -OutputDirectory "%LOCALAPPDATA%\Microsoft\PowerAppsCLI" instead of pac install latest.
Have you run the latest MSI?
As background, there are two parts to the CLI. First, there is the CLI launcher and second, there is the CLI itself. The MSI installs the CLI Launcher and this is the tool that lets you install and pin versions of the CLI on your machine.
The space issue you referenced seems like one that was fixed in the CLI Launcher and to get this you will need to re-run the MSI (see link below). You can do this over the top, no need to uninstall. If you look in %LOCALAPPDATA%\Microsoft\PowerAppsCli the version of pac.launcher.exe should 0.4.2 (or higher).
P.S. Everyone should run the new MSI to ensure that you have the latest launcher.
I can get the push deployment working, but struggling to get Watch harness running (comes up with invalid sub-command "watch").
PS C:\PCF_Controls\_PCF\ABNACNSearch\mycontrol> npm start watch > firstname.lastname@example.org start C:\PCF_Controls\_PCF\mycontrol > pcf-scripts start "watch" [pcf-1041] [Error] Not a valid sub-command 'watch'.
Can you please validate that all the latest npm modules are pulled down for your project by running npm install? What version of node are you running?