Version: 0.2.0
Commit: a4930bfb2ebf3c9a76678b9b9e20044b3219f238
New Features
- Support for Qualified Names in Appxmanifest (#320) — Allows qualified names in the
Appxmanifestfile, enhancing flexibility in defining app identities. - New
winapp create-external-catalogCommand (#312) — Introduces a new command to create an external catalog, streamlining asset management for developers. - Enable Running Microsoft Store Developer CLI Commands via a New 'store' Subcommand (#214) — Adds a
storesubcommand, enabling integrated commands for Microsoft Store development directly fromwinapp CLI. - Support for Manifest Placeholders (#294) — Adds the ability to use placeholders in manifests, improving the handling of dynamic content across applications.
- Add .NET Project Support (#285) — Expands
winapp CLIcapabilities to support .NET projects, broadening the range of applications developers can manage.
Breaking Changes
- winapp init no longer generates a certificate: init used to create a dev signing cert automatically. That’s been removed. Run winapp cert generate explicitly when you need to sign with a dev certificate. The --no-cert flag is also gone since there’s nothing to skip. If your scripts relied on init producing a cert, add a winapp cert generate step.
- winapp now uses the NuGet global cache for packages: when downloading NuGet packages, winapp used to store them in the %userprofile%/.winapp/packages folder which caused duplicate packages to be downloaded if the user already had those packages in their NuGet cache. With this release, winapp uses the NuGet global cache for all packages. If your code depends on the packages being in the global .winapp folder, you will need to update it.
- .NET projects skip winapp.yaml: When winapp init detects a .csproj, it configures NuGet packages in the project file directly instead of creating a winapp.yaml. This is the right behavior for .NET, but if you had a hybrid workflow, check the .NET guide for details.
Bug Fixes
- Fix Signing Success Message (#316) — Corrects the messaging related to successful signing, ensuring clarity for users post-signing.
- Filter Unlisted NuGet Versions (#323) — Fixes an issue where unlisted NuGet versions could be included, providing a more accurate package management experience.
- Fix Regression in
RunCommandAsync(#310) — Addresses a regression affecting command execution, restoring expected behavior. - Simplify Error Messages + Remove Repetition (#300) — Improves user experience by making error messages clearer and more concise.
Documentation
- Updated Short Description for All Commands (#295) — Adds brief command descriptions across the CLI for improved usability and understanding.
Infrastructure
- Bumped dependencies: minimatch (#330), webpack from 5.103.0 to 5.105.1 (#288), lodash from 4.17.21 to 4.17.23 in
/samples/electron(#255), bytes from 1.11.0 to 1.11.1 in/samples/tauri-app/src-tauri(#272), time from 0.3.44 to 0.3.47 in/samples/tauri-app/src-tauri(#276).
Installation Options
MSIX Installer (Recommended)
- Download
winappcli_x64.msixfor x64 orwinappcli_arm64.msixfor ARM64 - Double-click to install
- Automatically added to PATH
Standalone CLI Binaries
- Download
winappcli-x64.zipfor x64 orwinappcli-arm64.zipfor ARM64 - Extract to your desired location
- Add to PATH or run directly:
winapp.exe
NPM Package (for Electron or NodeJS)
npm install microsoft-winappcli.tgzWhat's Included
- MSIX installer packages (x64 and ARM64)
- Standalone CLI binaries (x64 and ARM64)
- NPM package for NodeJS/Electron integration