Skip to content

chore(release): v0.3.6 - #75

Merged
Shewart merged 3 commits into
release/v0.3from
fix/v0.3.6
Oct 22, 2026
Merged

Shewart merged 3 commits into
release/v0.3from
fix/v0.3.6

Conversation

@Shewart

@Shewart Shewart commented Oct 22, 2026

Copy link
Copy Markdown
Contributor

A small patch for both packages, cherry-picked from main.

Package icon (6d480f1 on main)
0.3.5 shipped without PackageIcon, so nuget.org shows its default icon for ShellUI.CLI and ShellUI.Components, and the package list uses the latest stable's icon. Both now carry assets/icon.png.

Safelist (145997e on main, from #74)
The safelist generator read .razor class attributes only up to their first quote, so classes passed to Shell.Cn("...") and literals in ternaries never reached shellui-classes.txt. On 0.3, 181 classes were missing for apps that build their own Tailwind CSS from the package, including the dialog's centring (translate-x/y-[-50%]), sm:rounded-lg and the Sonner variant colours. The precompiled shellui-all.css wasn't affected. The safelist is regenerated from 0.3's own components: 369 to 550 classes, none removed.

This PR also

  • Bumps Directory.Build.props and the version references to 0.3.6
  • Adds the # ShellUI v0.3.6 section to docs/RELEASE_NOTES.md; scripts/extract-release-notes.sh 0.3.6 extracts it

Checks

  • Release build 0 warnings; 251 tests pass
  • Both packed nupkgs contain icon.png and declare <icon>icon.png</icon>
  • A .NET 10 app on the packed ShellUI.Components writes all 550 classes to wwwroot/shellui-classes.txt, and Tailwind built from that file generates translate-x/y-[-50%], sm:rounded-lg and bg-green-500/20

Shewatipa Tseisi added 3 commits October 22, 2026 14:35
Neither package set PackageIcon, so nuget.org showed the default icon, and src/ShellUI.Components/icon.svg was an unused placeholder. assets/icon.png (the dot mark on a dark tile) is now the icon of ShellUI.CLI and ShellUI.Components, with assets/icon.svg as its source.
The generator read a .razor class attribute only up to its first quote,
so class="@Shell.Cn("...", Class)" contributed nothing, and C# literals
in ternaries and switch arms were skipped too. 181 classes components
render were missing from shellui-classes.txt, which apps building
their own Tailwind CSS from the package depend on: the dialog's centring
(translate-x/y-[-50%]), sm:rounded-lg, the Sonner variant colours and
more. The precompiled bundle was not affected, because Tailwind scans
the .razor files itself, except for the data-[state=...] classes the
safelist exists for.

The generator now also harvests string literals that follow (, ,, ?, :,
= or => in .razor files, with the same class-list filter as .cs files,
and accepts class lists up to 2000 characters (DialogContent's is 545).
@Shewart
Shewart merged commit 315c2d6 into release/v0.3 Oct 22, 2026
1 check passed
@Shewart
Shewart deleted the fix/v0.3.6 branch October 22, 2026 13:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant