-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Publish extension updates #5698
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
base: docs
Are you sure you want to change the base?
Publish extension updates #5698
Conversation
|
@chatasweetie : Thanks for your contribution! The author(s) and reviewer(s) have been notified to review your proposed change. |
|
Learn Build status updates of commit 79e4a30:
|
| File | Status | Preview URL | Details |
|---|---|---|---|
| hub/powertoys/command-palette/publish-extension.md | Details |
hub/powertoys/command-palette/publish-extension.md
- Line 45, Column 3: [Warning: hard-coded-locale - See documentation]
Link 'https://learn.microsoft.com/en-us/windows/apps/publish/partner-center/partner-center-developer-account' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites. - Line 46, Column 68: [Warning: hard-coded-locale - See documentation]
Link 'https://learn.microsoft.com/en-us/windows/apps/design/style/iconography/visual-studio-asset-generation' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites. - Line 37, Column 250: [Suggestion: docs-link-absolute - See documentation]
Absolute link 'https://learn.microsoft.com/windows/apps/publish/' will be broken in isolated environments. Replace with a relative link. - Line 45, Column 3: [Suggestion: docs-link-absolute - See documentation]
Absolute link 'https://learn.microsoft.com/en-us/windows/apps/publish/partner-center/partner-center-developer-account' will be broken in isolated environments. Replace with a relative link. - Line 46, Column 68: [Suggestion: docs-link-absolute - See documentation]
Absolute link 'https://learn.microsoft.com/en-us/windows/apps/design/style/iconography/visual-studio-asset-generation' will be broken in isolated environments. Replace with a relative link.
For more details, please refer to the build report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some fixes to address the build warnings. I'll take a closer look at the contents of the tutorial tomorrow. Thanks for updating this!
|
Thanks @alvinashcraft Before you do, Zach is going to walk through it to make sure it's not missing anything |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Microsoft store comments
…card and point microsoft store expected naming, updated $projectFile file path to be one repo lower due to single extension different structure than my multi extension
|
Learn Build status updates of commit a3a9da7:
|
| File | Status | Preview URL | Details |
|---|---|---|---|
| hub/powertoys/command-palette/publish-extension.md | Details | ||
| uwp/index.yml | Details |
hub/powertoys/command-palette/publish-extension.md
- Line 45, Column 3: [Warning: file-not-found - See documentation]
Invalid file link: '../../apps/publish/partner-center/partner-center-developer-account'. - Line 46, Column 68: [Warning: file-not-found - See documentation]
Invalid file link: '../../apps/design/style/iconography/visual-studio-asset-generation'.
uwp/index.yml
- Line 12, Column 18: [Warning: ms-service-subservice-invalid - See documentation]
Invalid value for 'ms.subservice': 'uwp-conceptual-docs' is not valid with 'ms.service' value 'uwp'.
For more details, please refer to the build report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
|
@zadjii-msft |
|
Learn Build status updates of commit c2b1618:
|
| File | Status | Preview URL | Details |
|---|---|---|---|
| hub/powertoys/command-palette/publish-extension.md | Details |
hub/powertoys/command-palette/publish-extension.md
- Line 45, Column 3: [Warning: file-not-found - See documentation]
Invalid file link: '../../apps/publish/partner-center/partner-center-developer-account'. - Line 46, Column 68: [Warning: file-not-found - See documentation]
Invalid file link: '../../apps/design/style/iconography/visual-studio-asset-generation'.
For more details, please refer to the build report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
* WinAppSDK 1.8 Preview 1 - Release Notes WinAppSDK 1.8 Preview 1 - Release Notes * Update preview-channel.md * Update preview-channel-1.7.md * Update preview-channel-1.7.md * rename * Updates * Update preview-channel.md * Update release-channels.md * Update downloads.md --------- Co-authored-by: KB <[email protected]>
|
Learn Build status updates of commit d9d9ce2:
|
| File | Status | Preview URL | Details |
|---|---|---|---|
| hub/powertoys/command-palette/publish-extension.md | Details |
hub/powertoys/command-palette/publish-extension.md
- Line 45, Column 3: [Warning: file-not-found - See documentation]
Invalid file link: '../../apps/publish/partner-center/partner-center-developer-account'. - Line 46, Column 68: [Warning: file-not-found - See documentation]
Invalid file link: '../../apps/design/style/iconography/visual-studio-asset-generation'.
For more details, please refer to the build report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
…ile, thanks Felipe!
|
Learn Build status updates of commit 4411cc7:
|
| File | Status | Preview URL | Details |
|---|---|---|---|
| hub/powertoys/command-palette/publish-extension.md | Details |
hub/powertoys/command-palette/publish-extension.md
- Line 45, Column 3: [Warning: file-not-found - See documentation]
Invalid file link: '../../apps/publish/partner-center/partner-center-developer-account'. - Line 46, Column 68: [Warning: file-not-found - See documentation]
Invalid file link: '../../apps/design/style/iconography/visual-studio-asset-generation'.
For more details, please refer to the build report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I ran the changes through the Learn Authoring Assistant. These are the style guide suggestions it gave.
| # Publish Command Palette extensions | ||
|
|
||
| The Command Palette provides a full extension model, allowing developers to create their own experiences for the palette. This document provides information about how to publish an extension. | ||
| This article provides instructions for Command Palette extensions that were created using the Command Palette template. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| This article provides instructions for Command Palette extensions that were created using the Command Palette template. | |
| This article provides instructions for Command Palette extensions that you create with the Command Palette template. |
| ## Pre-requisites | ||
| ## Microsoft Store | ||
|
|
||
| Command Palette extensions can be published to the Microsoft Store. The publishing process is similar to other apps or extensions. You create a new submission in Partner Center and upload your `.msix` package. Command Palette automatically discovers your extension when users install it from the Microsoft Store. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| Command Palette extensions can be published to the Microsoft Store. The publishing process is similar to other apps or extensions. You create a new submission in Partner Center and upload your `.msix` package. Command Palette automatically discovers your extension when users install it from the Microsoft Store. | |
| You can publish Command Palette extensions to the Microsoft Store. The publishing process is similar to other apps or extensions. You create a new submission in Partner Center and upload your `.msix` package. Command Palette automatically discovers your extension when users install it from the Microsoft Store. |
| ### Set up Microsoft Store | ||
|
|
||
| 1. Navigate to the [Microsoft Partner Center](https://partner.microsoft.com/dashboard/home). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 1. Navigate to the [Microsoft Partner Center](https://partner.microsoft.com/dashboard/home). | |
| 1. Go to the [Microsoft Partner Center](https://partner.microsoft.com/dashboard/home). |
| 1. Under **Workspaces**, select **Apps and games**. | ||
| 1. Select **+ New Product**. | ||
| 1. Select **MSIX or PWA app**. | ||
| 1. Create a name or reserve a product name. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 1. Create a name or reserve a product name. | |
| 1. Create or reserve a product name. |
| > - **Package/Identity/Publisher**: `_________________` | ||
| > - **Package/Properties/PublisherDisplayName**: `_________________` | ||
| > | ||
| > You'll use these exact values in the code examples below. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| > You'll use these exact values in the code examples below. | |
| > Use these exact values in the code examples. |
| 1. Update the placeholders in `release-extension.yml`: | ||
| 1. git commit the 3 new files: `build-exe.ps1`, `setup.iss`,`release-extension.yml` | ||
| 1. Push changes to Github. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 1. Push changes to Github. | |
| 1. Push changes to GitHub. |
| ### WinGet submission | ||
|
|
||
| > [!IMPORTANT] | ||
| > The first submission must be manual. `wingetcreate new` requires interactive input for package details |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| > The first submission must be manual. `wingetcreate new` requires interactive input for package details | |
| > You must manually submit the first version. `wingetcreate new` requires interactive input for package details. |
| > [!TIP] | ||
| > To get the GitHub Release URL: Go to your release page, under **Assets**, right-click the `.exe` file and select "Copy link address". | ||
|
|
||
| 1. When `wingetcreate` prompts you, press **Enter** if the suggested response is pulled from the EXE file, for example: `PackageIdentifier`, `PackageVersion`, `Publisher`, etc. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 1. When `wingetcreate` prompts you, press **Enter** if the suggested response is pulled from the EXE file, for example: `PackageIdentifier`, `PackageVersion`, `Publisher`, etc. | |
| 1. When `wingetcreate` prompts you, press **Enter** if the suggested response is pulled from the EXE file, for example: `PackageIdentifier`, `PackageVersion`, `Publisher`, and so on. |
| - **Final submission question**: | ||
| - "Would you like to submit your manifest to the Windows Package Manager repository?" → **Yes** | ||
|
|
||
| After answering "Yes" to submit: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| After answering "Yes" to submit: | |
| After you answer "Yes" to submit: |
| - Opens a pull request automatically | ||
| - Provides the PR URL for tracking | ||
|
|
||
| After submitting your pull request, the WinGet team will review your manifest for compliance and accuracy. You can monitor the PR status on GitHub and respond to any feedback from reviewers. Once approved and merged, your extension will be available through WinGet within a few hours. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| After submitting your pull request, the WinGet team will review your manifest for compliance and accuracy. You can monitor the PR status on GitHub and respond to any feedback from reviewers. Once approved and merged, your extension will be available through WinGet within a few hours. | |
| After you submit your pull request, the WinGet team reviews your manifest for compliance and accuracy. You can monitor the PR status on GitHub and respond to any feedback from reviewers. Once approved and merged, your extension is available through WinGet within a few hours. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I ran the changes through the Learn Authoring Assistant. These are the style guide suggestions it gave.
| ### Prepare the extension | ||
|
|
||
| 1. In your IDE, open `<ExtensionName>\Package.appxmanifest`. | ||
| 1. Replace the values with the information you copied from Partner Center: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this what Visual Studio does when right-clicking on your project and clicking "Associcate with Store"?
If so, I'd push this flow as it's much easier to go through vs manually copying stuff?
| > **MSIX packages explained** | ||
| > MSIX is Microsoft's modern app packaging format that provides secure installation, automatic updates, and clean uninstallation. It replaces older formats like MSI and ensures your extension integrates properly with Windows security and deployment features. | ||
| Command Palette can't search for or install extensions that are only listed in the store. You can find those extensions by running the following command: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| Command Palette can't search for or install extensions that are only listed in the store. You can find those extensions by running the following command: | |
| Command Palette can't search for or install extensions that are only listed in the Store. You can find those extensions by running the following command: |
|
|
||
| > [!NOTE] | ||
| > **MSIX packages explained** | ||
| > MSIX is Microsoft's modern app packaging format that provides secure installation, automatic updates, and clean uninstallation. It replaces older formats like MSI and ensures your extension integrates properly with Windows security and deployment features. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Link to MSIX docs-hub?
| ## Guide to WinGet publishing | ||
|
|
||
| <!-- | ||
| Publishing to WinGet is the recommended distribution method for Command Palette extensions as it enables automatic discovery and installation directly within Command Palette. This guide covers the majority of the WinGet publication process, from preparing your project and creating build scripts to setting up GitHub Actions automation and submitting your first package manifest. You'll learn how to create installer packages, configure automated builds, and navigate the WinGet submission workflow to make your extension easily discoverable and installable for users. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it the recommended distribution method (long term)? @zadjii-msft ?
| 1. Locate the MSIX files: | ||
|
|
||
| ```powershell | ||
| dir AppPackages -Recurse -Filter "*.msix" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nit] some PWSH fragments use ls, some dir
|
|
||
| ```xml | ||
| <Identity | ||
| Name="YOUR_PACKAGE_IDENTITY_NAME_HERE" <!-- Replace with your Package/Identity/Name --> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is invalid HTML syntax (HTML comment inside an HTML tag), which could disrupt syntax highlighting. I'm not sure if it affects MS Learn, but it definitely causes issues in GitHub.
I've fleshed out the guide of publishing to Store & WinGet for the first submission. It is still missing the automation of updates (not NEEDED but would be nice).
TODO for this PR: