Skip to content

Release v0.2.0

Latest

Choose a tag to compare

@azchohfi azchohfi released this 27 Feb 20:25

Version: 0.2.0
Commit: a4930bfb2ebf3c9a76678b9b9e20044b3219f238

New Features

  • Support for Qualified Names in Appxmanifest (#320) — Allows qualified names in the Appxmanifest file, enhancing flexibility in defining app identities.
  • New winapp create-external-catalog Command (#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 store subcommand, enabling integrated commands for Microsoft Store development directly from winapp 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 CLI capabilities 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)

  1. Download winappcli_x64.msix for x64 or winappcli_arm64.msix for ARM64
  2. Double-click to install
  3. Automatically added to PATH

Standalone CLI Binaries

  1. Download winappcli-x64.zip for x64 or winappcli-arm64.zip for ARM64
  2. Extract to your desired location
  3. Add to PATH or run directly: winapp.exe

NPM Package (for Electron or NodeJS)

npm install microsoft-winappcli.tgz

What's Included

  • MSIX installer packages (x64 and ARM64)
  • Standalone CLI binaries (x64 and ARM64)
  • NPM package for NodeJS/Electron integration