microsoft / microsoft/MIEngine

How do I sign MIEngine assemblies before VSIX is generated?

Open
#635 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C#
Stars
859
Forks
233
Avg merge
1d 6h
Merged PRs (30d)
3

Description

Hi,
I have a fork of this project and I wish to sign all the assemblies from: MICore, MIDebugPackage and MIDebugEngine.

These binaries are shipped as part of a product, and need to be signed.

I think I could probably achieve that by adding a post-build event to call the signing tool, but that would be intrusive (modify local csproj file), as that entails solving conflicts every time I am rebasing my local fork on top of upstream (Microsoft/MIEngine).

So my questions are:

  1. Is it possible to add the signing step without (intrusively) modifying csproj files? What is the typical way to sign the manifest of a VSPackage?
  2. My current workaround is to unzip the VSIX -> sign assemblies -> zip the VSIX again.
    Does it make sense? Does it affect the sha of the VSIX/files in it?

Thanks,
Ofir

Contributor guide

No contributing guide indexed for this repository

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 inspecting the MICore, MIDebugPackage, and MIDebugEngine project files and the VSIX generation path, focusing on how signing could be added without local csproj edits. Verify the workflow by checking assembly signatures and the rebuilt VSIX contents, including whether packaging changes its hashes.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
build-system, release, security
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.