microsoft / microsoft/powerplatform-vscode

'pac solution clone' removing period symbols from plugin assemblies and causing cdsproj build failure

Open
#549 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
TypeScript
Stars
277
Forks
60
Avg merge
1d 1h
Merged PRs (30d)
14

Description

  • Please attach a sample .msapp to this Issue which demonstrates the issue you are experiencing. (Please do not attach any file which may contain sensitive personal or company data.)

Describe the bug

I am on 1.23.4 version of pac cli.
We have a Dataverse solution with a 'Plugin Assembly' and the assembly name has a period (.) symbol (i.e., AutoCoE.Extensibility.Plugins).

image

  • When triggered the 'pac solution clone', plugin dll file got generated without the period symbols.

image

  • I went ahead and added the plugin project (i.e., .csproj) to the cdsproj using 'pas solution add-reference' command.

  • Finally built the cdsproj and got following 'Build FAILED' error.

[error]C:\Users\VssAdministrator.nuget\packages\microsoft.powerapps.msbuild.solution\1.24.3\build\Microsoft.PowerApps.MSBuild.Solution.targets(137,5): Error : Cannot find required file '..\SolutionPackage\obj\Debug\Metadata\PluginAssemblies\AutoCoEExtensibilityPlugins-C8F4F22D-C74C-4D46-B206-8EEE6F084E4F\AutoCoEExtensibilityPlugins.dll'.
C:\Users\VssAdministrator.nuget\packages\microsoft.powerapps.msbuild.solution\1.24.3\build\Microsoft.PowerApps.MSBuild.Solution.targets(137,5): error : Cannot find required file '..\SolutionPackage\obj\Debug\Metadata\PluginAssemblies\AutoCoEExtensibilityPlugins-C8F4F22D-C74C-4D46-B206-8EEE6F084E4F\AutoCoEExtensibilityPlugins.dll'. [..\SolutionPackage\AutomationCoESatellite.cdsproj]
Done Building Project "D:\a\1\s\cat fusion\AutomationCoESatellite\SolutionPackage\AutomationCoESatellite.cdsproj" (build target(s)) -- FAILED.

A clear and concise description of what the bug is.
Please mention if it is reproduced using PAC CLI or PASopa. (Please mention the version number, if possible)

To Reproduce

Steps to reproduce the behavior:

  • Clone a Dataverse solution with a plugin assembly having period '.' symbol in the name.
  • Add the plugin .csproj file to the generated cdsproj file using 'pac solution add-reference' command.
  • Build the .cdsproj file.

Screenshots

If applicable, add screenshots of error messages to help explain your problem.

Additional context

'pac solution clone' works fine if the plugin assembly name does not have period symbols.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the pac solution clone, pac solution add-reference, and .cdsproj build steps described in the issue, then inspect the generated plugin assembly path and the referenced MSBuild error at line 137. Done means a plugin assembly name containing periods remains consistent between the cloned files and the build output, so the .cdsproj builds successfully.

Written by the indexing model from the issue text.

Assessment

Domain
build-system, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.