Skip to content

Commit

Permalink
Merge pull request #18572 from unoplatform/dev/jela/publish-doc
Browse files Browse the repository at this point in the history
Misc doc updates
  • Loading branch information
jeromelaban authored Oct 24, 2024
2 parents 0603ef3 + 6aa3d2c commit 26a7e6b
Show file tree
Hide file tree
Showing 5 changed files with 47 additions and 16 deletions.
17 changes: 17 additions & 0 deletions doc/articles/migrating-from-net8-to-net9.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
uid: Uno.Development.MigratingFromNet8ToNet9
---
# How to upgrade from .NET 8 to .NET 9

Migrating from .NET 8 to .NET 9 is a generally straightforward process. You may find below some specific adjustments to make to your projects and libraries when upgrading.

To upgrade to .NET 9:

- First, read [What's New in .NET 9](https://learn.microsoft.com/dotnet/core/whats-new/dotnet-9/overview)
- Install [Visual Studio 17.12 Preview 3](https://visualstudio.microsoft.com/vs/) or later and run [uno.check](xref:UnoCheck.UsingUnoCheck) with the `--pre-major` parameter to install .NET 9.
- Change all your target framework (TFM) references from `net8.0` to `net9.0`, and `net8.0-*` to `net9.0-*`.
- Delete your bin and obj folders

## Considerations for WebAssembly

WebAssembly support for .NET 9 has made significant internal changes to use the official .NET SDK. Read the following [documentation for WebAssembly migrations](https://aka.platform.uno/wasm-net9-upgrade).
13 changes: 12 additions & 1 deletion doc/articles/migrating-from-previous-releases.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,17 @@ uid: Uno.Development.MigratingFromPreviousReleases

This article details the migration steps required to migrate from one version to the next when breaking changes are being introduced.

## Uno Platform 5.5

Uno Platform 5.5 introduces support for .NET 9 RC2 and requires installation updates for WebAssembly.

### .NET 9 RC2

A few considerations to take into account:

- Moving to .NET 9 or upgrading .NET 9 projects now require the use of .NET 9 RC2 and Visual Studio 17.12 Preview 3.
- To migrate a project to .NET 9, [read the directions](xref:Uno.Development.MigratingFromNet8ToNet9) from our documentation.

## Uno Platform 5.4

Uno Platform 5.4 contains breaking changes for Uno.Extensions.
Expand All @@ -29,7 +40,7 @@ Additionally, you may also get the following error message:
NETSDK1198: A publish profile with the name 'win-AnyCPU.pubxml' was not found in the project.
```

In order to fix this warning in your existing project, you can create a new file named `Properties/PublishProfiles/win-AnyCPU.pubxml`, with [this content](https://github.com/unoplatform/uno.templates/blob/5196433a5e0a8a4d2efffd118d575ed03e30dcf0/src/Uno.Templates/content/unoapp/MyExtensionsApp.1/Properties/PublishProfiles/win-AnyCPU.pubxml).
This issue is not yet fixed, but it does not cause any problems during deployment.

### UWP Support for Uno.Extensions

Expand Down
2 changes: 2 additions & 0 deletions doc/articles/toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -210,6 +210,8 @@
href: xref:Uno.Development.MigratingToSingleProject
- name: Upgrading to Uno 5.0
href: xref:Uno.Development.MigratingToUno5
- name: Upgrading from .NET 8 to .NET 9
href: xref:Uno.Development.MigratingFromNet8ToNet9
- name: Upgrading from .NET 7 to .NET 8
href: xref:Uno.Development.MigratingFromNet7ToNet8
- name: Upgrading from Xamarin to .NET 6
Expand Down
29 changes: 15 additions & 14 deletions doc/articles/uno-publishing-desktop.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,17 +70,18 @@ We support creating .snap packages on **Ubuntu 20.04** or later.

The following must be installed and configured:

- snapd
- snaps (with `snap install`):
- core20 on Ubuntu 20.04
- core22 on Ubuntu 22.04
- core24 on Ubuntu 24.04
- multipass
- lxd
- current user must be part of the `lxd` group
- `lxd init --minimal` or similar should be run
- snapcraft
```bash
sudo apt-get install -y snapd
sudo snap install core22
sudo snap install multipass
sudo snap install lxd
sudo snap install snapcraft
lxd init --minimal
sudo usermod --append --groups lxd $USER # In order for the current user to use LXD
```

> [!NOTE]
> In the above script, replace `core22` with `core20` if building on Ubuntu 20.04, or `core24` if building on Ubuntu 24.04.
> [!NOTE]
> Docker may interfere with Lxd causing network connectivity issues, for solutions see: https://documentation.ubuntu.com/lxd/en/stable-5.0/howto/network_bridge_firewalld/#prevent-connectivity-issues-with-lxd-and-docker
Expand All @@ -89,10 +90,10 @@ The following must be installed and configured:
To generate a snap file, run the following:

```shell
dotnet publish -f net8.0-desktop -r {{RID}} -p:SelfContained=true -p:PackageFormat=snap
dotnet publish -f net8.0-desktop -p:SelfContained=true -p:PackageFormat=snap
```

Where `{{RID}}` is either `linux-x64` or `linux-arm64`. The generated snap file is located in the `publish` folder.
The generated snap file is located in the `bin/Release/netX.0-desktop/linux-[x64|arm64]/publish` folder.

Uno Platform generates snap manifests in classic confinement mode and a `.desktop` file by default.

Expand All @@ -101,7 +102,7 @@ If you wish to customize your snap manifest, you will need to pass the following
- `SnapManifest`
- `DesktopFile`

The `.desktop` filename MUST conform to the Desktop File spec.
The `.desktop` filename MUST conform to the [Desktop File](https://specifications.freedesktop.org/desktop-entry-spec/latest) spec.

If you wish, you can generate a default snap manifest and desktop file by running the command above, then tweak them.

Expand All @@ -113,7 +114,7 @@ If you wish, you can generate a default snap manifest and desktop file by runnin
You can install your app on your machine using the following:

```bash
sudo snap install MyApp_1.0_amd64.snap --dangerous classic
sudo snap install MyApp_1.0_amd64.snap --dangerous --classic
```

You can also publish your app to the [Snap store](https://snapcraft.io/store).
Expand Down
2 changes: 1 addition & 1 deletion doc/import_external_docs.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Set-PSDebug -Trace 1

$external_docs = @{
# use either commit, or branch name to use its latest commit
"uno.wasm.bootstrap" = "abcb066159e3a089019032fbd4befda836336296" #latest release/stable/8.0 branch commit
"uno.wasm.bootstrap" = "616b29889cb85af0cca8e4291c28fc47b02b13c3" #latest release/stable/9.0 branch commit
"uno.themes" = "1da7240824a1bc5ddaf5efc1ed6e22ea5a41abd9" #latest release/stable/5.2 branch commit
"uno.toolkit.ui" = "a79e83cb260c17f59be6a843ce90038cb2479a61" #latest release/stable/6.2 branch commit
"uno.check" = "27e686d9205654375fd2c7861c3ebe5f2ad69e93" #latest main commit
Expand Down

0 comments on commit 26a7e6b

Please sign in to comment.