From 420360af412ceadb326b6b3e9e2d0a1440ecc5ad Mon Sep 17 00:00:00 2001 From: Anilcan Cakir Date: Mon, 7 Sep 2026 19:41:58 +0300 Subject: [PATCH 1/2] release: 1.5.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two fixes, both in `WText`'s casing transforms and both found by driving a real app rather than by reading the code. `uppercase` / `lowercase` / `capitalize` now cast under the ambient locale, so a Turkish app renders `İZLEYİCİLER` and `GÜVENLİK` instead of `IZLEYICILER` and `GÜVENLIK` (#195). And `capitalize` raises the first letter of every word rather than of the string, which is what its own documentation, the demo gallery and CSS have promised all along (#197). The word rule was measured in Chromium over 32 strings, so `well-known` is `Well-Known`, `3rd party` stays `3rd Party`, and decomposed NFD text no longer capitalises mid-word. Expect one visible change on upgrade: a multi-word string carrying `capitalize` now capitalises every word. Five surfaces bumped, the patch-release set: `pubspec.yaml`, `example/pubspec.yaml`, the `dartdoc_options.yaml` source-link tag, the `llms.txt` version string, and the `CHANGELOG.md` promotion with its two link references. `skills/wind-ui/` needs no version move for a patch: the H1, the description prefix and the `1.5.x` marker all still read right, and the skill's own version went to 2.13.2 with the content change in #197. Gates: `dart analyze` clean, `dart format` no diff, `flutter test` 1760 passing with the one pre-existing skip, `./tool/coverage.sh 90` at 94.8%, `tool/check-docs.py` 0 issues, and `dart pub publish --dry-run` clean once this commit lands (the only warning it raised was this bump sitting uncommitted). --- CHANGELOG.md | 5 +++-- dartdoc_options.yaml | 2 +- example/pubspec.yaml | 2 +- llms.txt | 2 +- pubspec.yaml | 2 +- 5 files changed, 7 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b4076b4..47cc196 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ This project follows [Semantic Versioning 2.0.0](https://semver.org/spec/v2.0.0. --- -## [Unreleased] +## [1.5.1] - 2026-09-07 ### Fixed @@ -296,7 +296,8 @@ Production deps: `flutter` (SDK), `flutter_svg ^2.0.0`, `fluttersdk_wind_diagnos The 1.0.0-alpha.1 through 1.0.0-alpha.10 release notes (Feb 2026 to May 2026) are preserved in git history and on the `v0` branch. The 0.0.x line is end-of-life; consumers pin to `^1.0.0` going forward. -[Unreleased]: https://github.com/fluttersdk/wind/compare/1.5.0...HEAD +[Unreleased]: https://github.com/fluttersdk/wind/compare/1.5.1...HEAD +[1.5.1]: https://github.com/fluttersdk/wind/releases/tag/1.5.1 [1.5.0]: https://github.com/fluttersdk/wind/releases/tag/1.5.0 [1.4.1]: https://github.com/fluttersdk/wind/releases/tag/1.4.1 [1.4.0]: https://github.com/fluttersdk/wind/releases/tag/1.4.0 diff --git a/dartdoc_options.yaml b/dartdoc_options.yaml index b2570da..9e819ab 100644 --- a/dartdoc_options.yaml +++ b/dartdoc_options.yaml @@ -1,3 +1,3 @@ dartdoc: linkTo: - url: 'https://github.com/fluttersdk/wind/blob/1.5.0/%f%#L%l%' + url: 'https://github.com/fluttersdk/wind/blob/1.5.1/%f%#L%l%' diff --git a/example/pubspec.yaml b/example/pubspec.yaml index f476843..af1e883 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -14,7 +14,7 @@ publish_to: 'none' # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html # In Windows, build-name is used as the major, minor, and patch parts # of the product and file versions while build-number is used as the build suffix. -version: 1.5.0+1 +version: 1.5.1+1 environment: sdk: ">=3.4.0 <4.0.0" diff --git a/llms.txt b/llms.txt index 08cd090..20184fd 100644 --- a/llms.txt +++ b/llms.txt @@ -1,6 +1,6 @@ # fluttersdk_wind -> Tailwind CSS for Flutter. A utility-first styling framework that maps `className` strings to optimized Flutter widget trees, with 24-field `WindThemeData` theming, responsive prefixes (`sm:` / `md:` / `lg:` / `xl:` / `2xl:`), `dark:`, state prefixes (`hover:` / `focus:` / `disabled:` / `loading:` / `selected:`), platform prefixes (`ios:` / `android:` / `web:` / `mobile:`), 27 W-prefix widgets, `WindRecipe` / `WindSlotRecipe` variant composition, server-driven UI via `WDynamic`, and three AI integration layers (hosted MCP server, Claude Code skill, and a skill distributed to 8+ AI clients via fluttersdk/ai). Open Source. Tailwind syntax. Flutter native. Version 1.5.0 stable. +> Tailwind CSS for Flutter. A utility-first styling framework that maps `className` strings to optimized Flutter widget trees, with 24-field `WindThemeData` theming, responsive prefixes (`sm:` / `md:` / `lg:` / `xl:` / `2xl:`), `dark:`, state prefixes (`hover:` / `focus:` / `disabled:` / `loading:` / `selected:`), platform prefixes (`ios:` / `android:` / `web:` / `mobile:`), 27 W-prefix widgets, `WindRecipe` / `WindSlotRecipe` variant composition, server-driven UI via `WDynamic`, and three AI integration layers (hosted MCP server, Claude Code skill, and a skill distributed to 8+ AI clients via fluttersdk/ai). Open Source. Tailwind syntax. Flutter native. Version 1.5.1 stable. **Stack**: Flutter >=3.27.0 · Dart >=3.4.0 · Runtime deps: `flutter_svg`, `fluttersdk_wind_diagnostics_contracts`. No `mockito`, no state management library, no router. diff --git a/pubspec.yaml b/pubspec.yaml index f8d2fb8..ef86ca6 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: fluttersdk_wind description: Tailwind CSS for Flutter. Write className='flex p-4 bg-white dark:bg-gray-800' and Wind renders optimized widget trees with dark mode and responsive breakpoints. -version: 1.5.0 +version: 1.5.1 homepage: https://fluttersdk.com/wind repository: https://github.com/fluttersdk/wind issue_tracker: https://github.com/fluttersdk/wind/issues From fc0c12e401db79d9e7d484f3245cfe8c7242dff0 Mon Sep 17 00:00:00 2001 From: Anilcan Cakir Date: Mon, 7 Sep 2026 23:42:57 +0300 Subject: [PATCH 2/2] release: track 1.5.1 in the example lockfile too `example/pubspec.lock` records the path dependency's version, so it still read 1.5.0 and the first `flutter pub get` in `example/` after this merge would have left a dirty tree. The 1.5.0 release committed this same line for the same reason and its message says so; 1.4.1 omitted it, which is why the entry was stale going into that release. Produced by running `flutter pub get` in `example/` rather than by hand, and the diff is the one line: no `source: path` churn from the gitignored `pubspec_overrides.yaml` this time, and the root `pubspec.lock` is untouched. --- example/pubspec.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/example/pubspec.lock b/example/pubspec.lock index 29e831d..d306404 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -126,7 +126,7 @@ packages: path: ".." relative: true source: path - version: "1.5.0" + version: "1.5.1" fluttersdk_wind_diagnostics_contracts: dependency: transitive description: