chore(release): prepare v0.3.0-rc.2 - #31
Merged
Merged
Conversation
…`ClassName` 30 CLI templates (Table and its parts, Select, Switch, Checkbox, RadioGroup, Tooltip, Toast, Popover, Dropdown, Slider, Separator, ScrollArea, Skeleton, the date/time pickers, Form, Menubar, Navbar, NavigationMenu, Pagination, Resizable) and 8 package components declared only `ClassName`, while the rest of the library uses `Class`. `Class="..."` on those components fell into AdditionalAttributes and could replace the component's own class attribute, dropping its base styling (reported against Skeleton). Each of them now declares `Class` and merges it after `ClassName`, which stays as a deprecated alias so existing markup keeps working. Not marked [Obsolete]: the warning would also fire inside consumers' generated files and break TreatWarningsAsErrors builds. ClassParameterTests fails if any template or package component declares `ClassName` without also declaring and rendering `Class`. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
`add` printed "Failed: ..." but always exited 0, so scripts and CI could not tell a partial install from a clean one. It also exited 0 when the handler threw. InstallComponents now returns false when a component or dependency fails, when shellui.json is missing or unreadable, or when a NuGet package could not be added (the project would not compile). Each missing package is listed with the exact `dotnet add package` command to run. The handler exits 1 in all of these cases, matching the other commands in Program.cs. Verified in a scratch Blazor app: `add buttonn` exits 1, `add skeleton` exits 0. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
release.yml used the whole of docs/RELEASE_NOTES.md as the GitHub release body, so every release would have shown every version's notes, starting with the "Unreleased / current source" section. scripts/extract-release-notes.sh prints just the "# ShellUI v<version>" section (skipping "# ..." shell comments inside code blocks) and exits 1 when there is none. release.yml runs it first, before build or NuGet push, so a tag without notes fails without publishing anything. prepare-release.ps1 checks for the section too, including on -DryRun, so it is caught before the tag is pushed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
With core.autocrlf=true, scripts/*.sh were checked out with CRLF on Windows, which breaks them under Git Bash (set: pipefail\r). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Replaced comments indicating that ClassName is a deprecated alias for Class with a clearer message. This change applies to multiple components and templates, ensuring consistency in documentation and encouraging the use of the preferred Class parameter. Additionally, removed unnecessary comments in various scripts and configuration files to streamline the codebase.
Updated the centralized ShellUI version in Directory.Build.props to 0.3.0-rc.2, reflecting the latest release candidate. Adjusted the README and various documentation files to align with the new version, including changes to the component inventory, installation instructions, and CLI commands. The update includes new components and fixes identified in previous releases, ensuring consistency across the project.
Implemented a new step in the release workflow to verify that the package version specified in the project files matches the version tag being released. This ensures consistency and prevents discrepancies between the version in the codebase and the release tag. If a mismatch is detected, an error message is generated to prompt for updates in Directory.Build.props.
Refactored the xLabelAt function to streamline the process of resolving x-axis labels. The new implementation checks multiple sources for category labels, ensuring that valid labels are returned more efficiently. This change enhances the robustness of the chart rendering logic.
…ync tests Enhanced the test coverage for chart components by adding new test cases for "donut-chart", "radar-chart", and "radial-chart" in both NuGetDepsAndSuggestionsTests and TemplateSyncTests. This ensures that the templates and dependencies for these chart variants are validated against the live library, improving overall test robustness.
Introduced a new documentation file detailing fixes encountered while integrating ShellUI 0.3.0-rc.1 components, including compilation errors and rendering issues. Key updates include adjustments to `Tabs.razor`, `Select.razor`, and `SidebarProvider.razor`, among others. Additionally, added integration notes for ShellUI and ShellIcons, outlining installation gotchas and remaining bugs in the CLI. Enhanced the `RadarChart` component to improve tooltip behavior by ensuring tooltips trigger per point rather than in shared mode.
Introduced new chart components: DonutChart, RadarChart, and RadialChart, expanding the charting capabilities of the library. Updated the ComponentRegistry to include these new types and modified ChartTemplate to support additional parameters for toolbar and legend visibility. Enhanced the ChartVariants to improve tooltip behavior and refined chart options for better customization. This update enriches the data visualization options available to users.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This prepares
v0.3.0-rc.2: it sets the version, writes the release notes, and updates the docs. It also adds the three new charts to the CLI and fixes chart tooltips. After merge, tag the merged commit onmainasv0.3.0-rc.2to publish.Release changes
Directory.Build.propsgoes from0.4.0-alpha.1to0.3.0-rc.2. v0.3.0 ships frommainfirst, and 0.4 starts after it.# ShellUI v0.3.0-rc.2. It covers the move to .NET 10 (a breaking change), Tailwind 4.3.2, the new components, and the fixes from fix(templates): v0.3.0-rc.1 follow-up fixes - Tabs, Select, SidebarInset #29, fix(sidebar): make sidebar interop work inside Razor Class Libraries + CLI install hardening #30 and theClassparameter PR.release.yml: fails before building or publishing when the CLI or Components version doesn't match the tag.--version 0.3.0-rc.2, and0.3.0-rc.1is named as the last release for .NET 9. Docs that only restated the current version now point toDirectory.Build.props. Component counts are updated to 76 direct targets and 176 registry entries.Charts
donut-chart,radar-chartandradial-chart. Before this, they existed only in the NuGet package.chart-variantstemplate had drifted from the package in feat: apex chart restyle — shadcn aesthetic, 3 new chart types, sleek tooltips #26. CLI-installed charts had broken tooltips: empty rows for pie, donut and radial. They also used the revertedoklchpalette and lacked the animation and legend options. The template now matches the package, andChartgainsShowToolbarandShowLegend.chart-variantsand the package, and sync and dependency coverage for the new charts.Test plan
ShellUI.slnx: no warnings or errorsdotnet test: 107/107 passingshellui add donut-chart radar-chart radial-chart pie-chart bar-chartexits with 0, builds with no warnings, and all five tooltips show label and value on hoverv0.3.0-rc.2passes and a mismatched tag failsscripts/extract-release-notes.sh 0.3.0-rc.2extracts the sectionpwsh ./prepare-release.ps1 -Version 0.3.0 -Suffix rc.2 -DryRunonmainAfter merge
git checkout main && git pull --ff-onlypwsh ./prepare-release.ps1 -Version 0.3.0 -Suffix rc.2 -DryRungit tag v0.3.0-rc.2 && git push origin v0.3.0-rc.2v0.3.0.