release_kit 0.1.19
release_kit: ^0.1.19 copied to clipboard
Flutter release toolkit - automatic version bump + multi-platform packaging with a unified config.
Changelog #
0.1.19 #
- Windows
--clean-flutternow also:- reorganizes every
*.dllinto alib\subfolder, repointing all references (exe+ plugin DLLs) tolib\xxx.dllvia a length-aware, overflow-safe patch (names are shortened automatically so they always fit; the exe stays runnable) - scrubs
flutter/dartbranding from the text metadata underdata\resources(equal-length neutral replacement; binary blobs like the AOT kernel are left untouched)
- reorganizes every
0.1.18 #
- Fix
.deb/.rpmpackages shipping only the launcher binary (missinglib/+data/, so the installed app could not run). They now bundle the full release bundle under/usr/lib/<id>/and expose the binary via a/usr/binsymlink.
0.1.17 #
- Fix
--appimage:linuxdeployrequires a.desktopfile and anAppRuninside the AppDir, but the raw Flutter bundle has neither, so AppImage packaging failed withDesktop file not found. The AppImage path now stages the bundle, injects the desktop entry +AppRun(the binary stays at the AppDir root so it can still locatelib//data/), bundles the icon, and copies the resulting.AppImagetodist/.
0.1.16 #
- Linux
publishnow always emits a portable.zip(dist/<app>-<version>+<build>-linux.zip, single top-level<app>/dir) as the default artifact — the same shape the Windows/macOS packs and in-app auto-update use. The previous.tar.gzdefault is removed;--deb/--rpm/--appimagestill produce the distro install packages on top of the zip.
0.1.15 #
- Fix garbled non-ASCII text in the generated
dist/CHANGELOG-<version>+<build>.mdon Windows: read the projectCHANGELOG.mdas UTF-8, decodegit logoutput as UTF-8, and write the result as UTF-8 without BOM.
0.1.14 #
- Every
publishnow emits a standard, versioned changelog alongside the artifacts:dist/CHANGELOG-<version>+<build>.md. The content is extracted from the project'sCHANGELOG.md(the Keep-a-Changelog section matching the current version); when there is noCHANGELOG.md(or no section for the version), it falls back to grouping thegit logsince the last tag by conventional-commit type (feat:→ Added,fix:→ Fixed, everything else → Changed).
0.1.13 #
- macOS and Linux package filenames now include the build number, matching the Windows convention:
dist/<app>-<version>+<build>-macos.dmg/.zip,dist/<app>-<version>+<build>-linux-x64.tar.gz/.deb/.rpm(e.g.ZShell-1.41.2+79-macos.zip).read_versionnow also exportsVERSION_FULL(x.y.z+build).
0.1.12 #
- Windows installer zip now includes the build number:
dist/<app>-<version>+<build>-win64.zip(e.g.ZShell-1.41.2+79-win64.zip).
0.1.11 #
- macOS
publishnow also emits an auto-update.zipnext to the.dmg, built from the very same signed.app(ditto -c -k --sequesterRsrc --keepParentkeeps<AppName>.appas the sole top-level entry so in-app updaters that strip one directory can replace the running app'sContents). Output:dist/<app>-<version>-macos.dmg+dist/<app>-<version>-macos.zip.
0.1.10 #
- Every
publishbuild now auto-injects--dart-define=APP_VERSION=<x.y.z>and--dart-define=APP_BUILD=<build>frompubspec.yaml(all platforms: Windows, Android, macOS, Linux, iOS). Apps can show their real version at runtime viaString.fromEnvironment('APP_VERSION')/('APP_BUILD'); an explicitbuild.dartDefine.APP_VERSION/APP_BUILDoverrides the auto value.
0.1.9 #
publish <platform>flag matching is now case/hyphen tolerant:--CleanFlutter,--SKIP_BUILDetc. are accepted and mapped to their canonical form (--clean-flutter,--skip-build) on every entry point (Dart CLI,release-kit.ps1,publish_windows.ps1).
0.1.8 #
- Fix
release_kit publish windows: the Dart CLI invokedpublish_windows.ps1with-Obfuscate:truestyle switches, which PowerShell-Filecannot bind (error:Cannot process argument transformation on parameter 'Obfuscate'). It now passes bare double-dash flags (--obfuscate,--clean-flutter, ...), which bind correctly.
0.1.7 #
- All
publish <platform>flags now use the same double-dash long-flag spelling on every platform (--obfuscate,--skip-build,--no-rename,--harden,--clean-flutter,--skip-verify,--output-dir). The old Windows single-dash spellings (-Obfuscateetc.) are no longer accepted.
0.1.6 #
- Docs: detailed per-flag reference for every platform in GUIDE (common flags
-p/--no-icons+ windows/android/ios/macos/linux tables).
0.1.5 #
- Docs: add pub.dev badge/link to README; document
release-kit bumpand Windows-NoRenamein README/GUIDE.
0.1.4 #
- Linux publish implemented end-to-end:
--obfuscate,--deb(dpkg-deb),--rpm(rpmbuild),--appimage; desktop entry + hi-color icon fromlinux/runner/my_icon.png;linux.desktopCategoriesconfig key. - Linux window icon generation: resize
app.logo→linux/runner/my_icon.png(ImageMagick when available). - Smoke test for the Linux path:
test/publish_linux_test.sh.
0.1.3 #
- Fix iOS/macOS flag parsing infinite loop (missing
shift). - iOS
--no-codesign: collect the.xcarchive(Flutter skips.ipageneration when unsigned). - macOS: drop the unsupported
--no-codesignflag. - Verified iOS and macOS publishing on a real macOS host.
0.1.2 #
- iOS publish: add
--obfuscate,--export-method,--no-codesign; robust.ipadiscovery. - macOS publish: add
--obfuscate,--no-codesign; robust.appdiscovery. - Docs: document iOS/macOS flags in README and GUIDE.
0.1.1 #
- Docs: restructure README and add an English usage guide (
docs/GUIDE.md); make pub.dev install the primary quick start, with git-clone as an alternative.
0.1.0 #
- Initial release as a Dart CLI package.
release-kit init— copy the config template + install the pre-commit hook.release-kit publish <platform>— build & package (windows / android / macos / linux / ios).release-kit bump— auto-increment the version inpubspec.yamlfrom staged changes.