From 537608c381dd04bc67b87bc8e56a5460d8cd1275 Mon Sep 17 00:00:00 2001 From: kitbyte Date: Sun, 28 Jun 2026 13:20:36 +0300 Subject: [PATCH] fix: update version to 1.0.9.2, remove updater functionality, and adjust bug report template --- .github/ISSUE_TEMPLATE/bug_report.yml | 12 +- CHANGELOG.md | 8 + WandEnhancer/Locale/lang.de-DE.xaml | 15 - WandEnhancer/Locale/lang.en-US.xaml | 15 - WandEnhancer/Locale/lang.es-ES.xaml | 15 - WandEnhancer/Locale/lang.fr-FR.xaml | 15 - WandEnhancer/Locale/lang.it-IT.xaml | 15 - WandEnhancer/Locale/lang.ja-JP.xaml | 15 - WandEnhancer/Locale/lang.pl-PL.xaml | 15 - WandEnhancer/Locale/lang.pt-BR.xaml | 15 - WandEnhancer/Locale/lang.ru-RU.xaml | 15 - WandEnhancer/Locale/lang.tr-TR.xaml | 15 - WandEnhancer/Locale/lang.uk-UA.xaml | 15 - WandEnhancer/Locale/lang.zh-CN.xaml | 15 - WandEnhancer/Properties/AssemblyInfo.cs | 4 +- WandEnhancer/Utils/Updater.cs | 281 ------------------- WandEnhancer/View/MainWindow/MainWindow.xaml | 8 +- WandEnhancer/View/MainWindow/MainWindowVm.cs | 50 +--- WandEnhancer/View/Popups/UpdatePopup.xaml | 104 ------- WandEnhancer/View/Popups/UpdatePopup.xaml.cs | 95 ------- WandEnhancer/WandEnhancer.csproj | 8 +- 21 files changed, 19 insertions(+), 731 deletions(-) delete mode 100644 WandEnhancer/Utils/Updater.cs delete mode 100644 WandEnhancer/View/Popups/UpdatePopup.xaml delete mode 100644 WandEnhancer/View/Popups/UpdatePopup.xaml.cs diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 6e2b5b0..8817c1e 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -8,16 +8,16 @@ body: - type: markdown attributes: value: | - **🚨 STOP BEFORE YOU POST: THIS PROJECT HAS NO OFFICIAL YOUTUBE TUTORIALS. 🚨** - If you downloaded an executable from a YouTube video link, you downloaded a virus/password stealer from a scammer. **Run an antivirus immediately and change your passwords.** Do not open issues about stolen accounts here — this project is not related to those videos. + **STOP BEFORE YOU POST: THIS PROJECT DOES NOT PUBLISH OFFICIAL EXECUTABLE DOWNLOADS.** + Build WandEnhancer yourself from your own fork or local source. If you downloaded an executable from YouTube, Discord, a mirror, or any other third-party website, treat it as untrusted. Do not open issues about third-party binaries or stolen accounts here - this project is not related to those downloads. - type: checkboxes - id: scam_check + id: build_source_check attributes: - label: ⚠️ Download Source Confirmation (REQUIRED) + label: Build Source Confirmation (REQUIRED) description: You must check this box to proceed. options: - - label: I confirm that I downloaded this tool DIRECTLY from this official GitHub repository, and NOT from a YouTube video, Discord, or any other third-party website. + - label: I confirm that I built WandEnhancer myself from my own fork or local source, and did not download an executable from YouTube, Discord, mirrors, issue comments, or any other third-party website. required: true - type: input @@ -67,4 +67,4 @@ body: id: additional_context attributes: label: Screenshots & Additional context - description: Drag and drop screenshots here, or add any other context about the problem. \ No newline at end of file + description: Drag and drop screenshots here, or add any other context about the problem. diff --git a/CHANGELOG.md b/CHANGELOG.md index dced39d..13d7238 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,14 @@ This file is the source of truth for release notes. The newest entry must match the version in `WandEnhancer/Properties/AssemblyInfo.cs`. +## [1.0.9.2] - 2026-06-28 + +### Changed + +- Removed the built-in WandEnhancer updater. Official GitHub releases no longer ship executable assets. +- Removed System.Net.Http +- Switched official releases to publish release notes only. + ## [1.0.9.1] - 2026-06-24 ### Fixes diff --git a/WandEnhancer/Locale/lang.de-DE.xaml b/WandEnhancer/Locale/lang.de-DE.xaml index c20e639..6c2a737 100644 --- a/WandEnhancer/Locale/lang.de-DE.xaml +++ b/WandEnhancer/Locale/lang.de-DE.xaml @@ -8,7 +8,6 @@ WandEnhancer - Eine neue Version ist verfügbar Ordnerpfad Ordner nicht gefunden Anwenden @@ -39,18 +38,4 @@ Was werden wir verbessern? - - Vor dem Update wird dringend empfohlen, Änderungen rückgängig zu machen, falls sie angewendet wurden - Aktuelle Version - Neueste Version - Versionshinweise - Für diese Version sind keine Versionshinweise verfügbar. - Gesamtes Changelog anzeigen - Nur aktuelle Hinweise anzeigen - Changelog wird geladen... - Das vollständige Changelog konnte nicht geladen werden. Stattdessen werden die aktuellen Hinweise angezeigt. - Jetzt aktualisieren - Update verfügbar! - - diff --git a/WandEnhancer/Locale/lang.en-US.xaml b/WandEnhancer/Locale/lang.en-US.xaml index 2f093c8..9db07b4 100644 --- a/WandEnhancer/Locale/lang.en-US.xaml +++ b/WandEnhancer/Locale/lang.en-US.xaml @@ -8,7 +8,6 @@ WandEnhancer - A new version is available Folder path Folder not found Enhance @@ -39,18 +38,4 @@ What are we gonna enhance? - - Before updating, it is strongly recommended to roll back modifications if they have been applied - Current version - Latest version - Release notes - Release notes are unavailable for this release. - Show full changelog - Show latest notes - Loading changelog... - Failed to load the full changelog. The latest notes are shown instead. - Update now - Update available! - - diff --git a/WandEnhancer/Locale/lang.es-ES.xaml b/WandEnhancer/Locale/lang.es-ES.xaml index fa688a8..5390712 100644 --- a/WandEnhancer/Locale/lang.es-ES.xaml +++ b/WandEnhancer/Locale/lang.es-ES.xaml @@ -8,7 +8,6 @@ WandEnhancer - Una nueva versión está disponible Ruta de la carpeta Carpeta no encontrada Aplicar @@ -39,18 +38,4 @@ ¿Qué vamos a mejorar? - - Antes de actualizar, se recomienda encarecidamente revertir las modificaciones si se han aplicado - Versión actual - Última versión - Notas de la versión - Las notas de la versión no están disponibles para esta versión. - Mostrar changelog completo - Mostrar solo las notas actuales - Cargando changelog... - No se pudo cargar el changelog completo. Se muestran las notas actuales. - Actualizar ahora - ¡Actualización disponible! - - diff --git a/WandEnhancer/Locale/lang.fr-FR.xaml b/WandEnhancer/Locale/lang.fr-FR.xaml index 39a57c0..9f6f00f 100644 --- a/WandEnhancer/Locale/lang.fr-FR.xaml +++ b/WandEnhancer/Locale/lang.fr-FR.xaml @@ -8,7 +8,6 @@ WandEnhancer - Une nouvelle version est disponible Chemin du dossier Dossier non trouvé Appliquer @@ -39,18 +38,4 @@ Qu'allons-nous modifier ? - - Avant la mise à jour, il est fortement recommandé d'annuler les modifications si elles ont été appliquées - Version actuelle - Dernière version - Notes de version - Les notes de version ne sont pas disponibles pour cette version. - Afficher le changelog complet - Afficher uniquement les notes actuelles - Chargement du changelog... - Impossible de charger le changelog complet. Les notes actuelles sont affichées à la place. - Mettre à jour maintenant - Mise à jour disponible ! - - diff --git a/WandEnhancer/Locale/lang.it-IT.xaml b/WandEnhancer/Locale/lang.it-IT.xaml index 604c9c5..2ca0fb4 100644 --- a/WandEnhancer/Locale/lang.it-IT.xaml +++ b/WandEnhancer/Locale/lang.it-IT.xaml @@ -8,7 +8,6 @@ WandEnhancer - È disponibile una nuova versione Percorso cartella Cartella non trovata Applica @@ -39,18 +38,4 @@ Cosa modificheremo? - - Prima dell'aggiornamento, si consiglia vivamente di annullare le modifiche se sono state applicate - Versione corrente - Ultima versione - Note di rilascio - Le note di rilascio non sono disponibili per questa versione. - Mostra il changelog completo - Mostra solo le note correnti - Caricamento del changelog... - Impossibile caricare il changelog completo. Vengono mostrate solo le note correnti. - Aggiorna ora - Aggiornamento disponibile! - - diff --git a/WandEnhancer/Locale/lang.ja-JP.xaml b/WandEnhancer/Locale/lang.ja-JP.xaml index 4f0352a..44e9f49 100644 --- a/WandEnhancer/Locale/lang.ja-JP.xaml +++ b/WandEnhancer/Locale/lang.ja-JP.xaml @@ -8,7 +8,6 @@ WandEnhancer - 新しいバージョンが利用可能です フォルダパス フォルダが見つかりません 適用 @@ -39,18 +38,4 @@ 何を改善しますか? - - アップデート前に、変更が適用されている場合はロールバックすることを強くお勧めします - 現在のバージョン - 最新バージョン - リリースノート - このリリースのリリースノートは利用できません。 - 完全な変更履歴を表示 - 最新のリリースノートのみ表示 - 変更履歴を読み込み中... - 完全な変更履歴を読み込めませんでした。代わりに最新のリリースノートを表示しています。 - 今すぐ更新 - アップデート利用可能! - - diff --git a/WandEnhancer/Locale/lang.pl-PL.xaml b/WandEnhancer/Locale/lang.pl-PL.xaml index 014f151..37b1ade 100644 --- a/WandEnhancer/Locale/lang.pl-PL.xaml +++ b/WandEnhancer/Locale/lang.pl-PL.xaml @@ -8,7 +8,6 @@ WandEnhancer - Dostępna jest nowa wersja Ścieżka folderu Folder nie znaleziony Zastosuj @@ -39,18 +38,4 @@ Co będziemy ulepszać? - - Przed aktualizacją zdecydowanie zaleca się cofnięcie zmian, jeśli zostały zastosowane - Aktualna wersja - Najnowsza wersja - Informacje o wydaniu - Informacje o wydaniu są niedostępne dla tej wersji. - Pokaż cały changelog - Pokaż tylko bieżące zmiany - Ładowanie changeloga... - Nie udało się załadować pełnego changeloga. Zamiast tego wyświetlono bieżące zmiany. - Aktualizuj teraz - Dostępna aktualizacja! - - diff --git a/WandEnhancer/Locale/lang.pt-BR.xaml b/WandEnhancer/Locale/lang.pt-BR.xaml index 346378d..6f26576 100644 --- a/WandEnhancer/Locale/lang.pt-BR.xaml +++ b/WandEnhancer/Locale/lang.pt-BR.xaml @@ -8,7 +8,6 @@ WandEnhancer - Uma nova versão está disponível Caminho da pasta Pasta não encontrada Aplicar @@ -39,18 +38,4 @@ O que vamos melhorar? - - Antes de atualizar, é altamente recomendável reverter as modificações se elas foram aplicadas - Versão atual - Versão mais recente - Notas da versão - As notas da versão não estão disponíveis para esta versão. - Mostrar changelog completo - Mostrar apenas as notas atuais - Carregando changelog... - Falha ao carregar o changelog completo. As notas atuais estão sendo exibidas. - Atualizar agora - Atualização disponível! - - diff --git a/WandEnhancer/Locale/lang.ru-RU.xaml b/WandEnhancer/Locale/lang.ru-RU.xaml index 73eb65b..1c24c50 100644 --- a/WandEnhancer/Locale/lang.ru-RU.xaml +++ b/WandEnhancer/Locale/lang.ru-RU.xaml @@ -8,7 +8,6 @@ WandEnhancer - Доступна новая версия Путь к папке Папка не найдена Применить @@ -39,18 +38,4 @@ Что будем улучшать? - - Перед обновлением настоятельно рекомендуется откатить изменения, если они были применены - Текущая версия - Новая версия - Что нового - Для этого релиза патчноуты недоступны. - Показать весь changelog - Показать только актуальные изменения - Загрузка changelog... - Не удалось загрузить полный changelog. Показаны только актуальные изменения. - Обновить сейчас - Доступно обновление! - - diff --git a/WandEnhancer/Locale/lang.tr-TR.xaml b/WandEnhancer/Locale/lang.tr-TR.xaml index 8cb571d..30a4af6 100644 --- a/WandEnhancer/Locale/lang.tr-TR.xaml +++ b/WandEnhancer/Locale/lang.tr-TR.xaml @@ -8,7 +8,6 @@ WandEnhancer - Yeni bir sürüm mevcut Klasör yolu Klasör bulunamadı Uygula @@ -39,18 +38,4 @@ Neyi geliştireceğiz? - - Güncellemeden önce, değişiklikler uygulandıysa geri almak şiddetle tavsiye edilir - Geçerli sürüm - En son sürüm - Sürüm notları - Bu sürüm için sürüm notları kullanılamıyor. - Tüm changelog'u göster - Yalnızca güncel notları göster - Changelog yükleniyor... - Tam changelog yüklenemedi. Bunun yerine güncel notlar gösteriliyor. - Şimdi güncelle - Güncelleme mevcut! - - diff --git a/WandEnhancer/Locale/lang.uk-UA.xaml b/WandEnhancer/Locale/lang.uk-UA.xaml index 00eeed6..47a77b1 100644 --- a/WandEnhancer/Locale/lang.uk-UA.xaml +++ b/WandEnhancer/Locale/lang.uk-UA.xaml @@ -8,7 +8,6 @@ WandEnhancer - Доступна нова версія Шлях до папки Папку не знайдено Застосувати @@ -39,18 +38,4 @@ Що будемо покращувати? - - Перед оновленням наполегливо рекомендується відкотити зміни, якщо вони були застосовані - Поточна версія - Остання версія - Нотатки до релізу - Нотатки до цього релізу недоступні. - Показати весь список змін - Показати лише актуальні зміни - Завантаження списку змін... - Не вдалося завантажити повний список змін. Натомість показано лише актуальні зміни. - Оновити зараз - Доступне оновлення! - - diff --git a/WandEnhancer/Locale/lang.zh-CN.xaml b/WandEnhancer/Locale/lang.zh-CN.xaml index 27d346c..f0624f3 100644 --- a/WandEnhancer/Locale/lang.zh-CN.xaml +++ b/WandEnhancer/Locale/lang.zh-CN.xaml @@ -8,7 +8,6 @@ WandEnhancer - 有新版本可用 文件夹路径 未找到文件夹 增强 @@ -39,18 +38,4 @@ 我们要增强什么? - - 在更新之前,强烈建议回滚已应用的修改 - 当前版本 - 最新版本 - 更新说明 - 此版本的更新说明不可用。 - 显示完整更新日志 - 仅显示当前说明 - 正在加载更新日志... - 无法加载完整更新日志。当前仅显示本次说明。 - 立即更新 - 有更新可用! - - diff --git a/WandEnhancer/Properties/AssemblyInfo.cs b/WandEnhancer/Properties/AssemblyInfo.cs index 04f8e96..67ac75d 100644 --- a/WandEnhancer/Properties/AssemblyInfo.cs +++ b/WandEnhancer/Properties/AssemblyInfo.cs @@ -51,5 +51,5 @@ using System.Windows; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.9.1")] -[assembly: AssemblyFileVersion("1.0.9.1")] \ No newline at end of file +[assembly: AssemblyVersion("1.0.9.2")] +[assembly: AssemblyFileVersion("1.0.9.2")] diff --git a/WandEnhancer/Utils/Updater.cs b/WandEnhancer/Utils/Updater.cs deleted file mode 100644 index 1d38f01..0000000 --- a/WandEnhancer/Utils/Updater.cs +++ /dev/null @@ -1,281 +0,0 @@ -using System; -using System.Globalization; -using System.Diagnostics; -using System.IO; -using System.Linq; -using System.Reflection; -using System.Text; -using System.Threading.Tasks; -using System.Net.Http; -using Newtonsoft.Json; - -namespace WandEnhancer.Utils -{ - public class UpdateReleaseInfo - { - public string Version { get; set; } - - public string LatestNotes { get; set; } - } - - public class GitHubRelease - { - public class AssetsType - { - public string Name { get; set; } - - [JsonProperty("browser_download_url")] - public string Url { get; set; } - } - - [JsonProperty("tag_name")] - public string TagName { get; set; } - - [JsonProperty("assets")] - public AssetsType[] Assets { get; set; } - - [JsonProperty("body")] - public string Body { get; set; } - - [JsonProperty("published_at")] - public DateTimeOffset PublishedAt { get; set; } - - } - - public class Updater - { - private GitHubRelease _release = null; - private UpdateReleaseInfo _updateInfo = null; - private string _fullChangelog = null; - private static readonly HttpClient _httpClient = new HttpClient() - { - DefaultRequestHeaders = - { - { "User-Agent", "GitHub-Updater" } - } - }; - - private static readonly string ApiUrl = $"https://api.github.com/repos/{Constants.Owner}/{Constants.RepoName}/releases/latest"; - private static readonly string ReleasesApiUrl = $"https://api.github.com/repos/{Constants.Owner}/{Constants.RepoName}/releases?per_page=20"; - public async Task CheckForUpdates() - { - try - { - var currentVersion = Assembly.GetExecutingAssembly().GetName().Version; - var response = await _httpClient.GetAsync(ApiUrl); - response.EnsureSuccessStatusCode(); - _release = JsonConvert.DeserializeObject(await response.Content.ReadAsStringAsync()); - _updateInfo = null; - _fullChangelog = null; - - if (_release == null) - { - return false; - } - - var latestVersion = ParseVersion(_release.TagName); - - if (latestVersion <= currentVersion) - { - return false; - } - - _updateInfo = new UpdateReleaseInfo - { - Version = NormalizeVersion(_release.TagName), - LatestNotes = NormalizeText(_release.Body) - }; - - return true; - } - catch (Exception) - { - return false; - } - } - - public async Task GetUpdateInfoAsync() - { - if (_updateInfo != null) - { - return _updateInfo; - } - - return await CheckForUpdates() - ? _updateInfo - : null; - } - - public async Task GetFullChangelogAsync() - { - if (!string.IsNullOrWhiteSpace(_fullChangelog)) - { - return NormalizeText(_fullChangelog); - } - - _fullChangelog = await TryLoadFullChangelogAsync(); - - return NormalizeText(_fullChangelog); - } - - public async Task Update() - { - if (_release == null) - { - throw new Exception("No release found"); - } - - var asset = _release.Assets.FirstOrDefault(o => o.Name.EndsWith(".exe")); - if(asset == null) - { - throw new Exception("No asset found"); - } - - // download to temp - var downloadPath = Path.Combine(Path.GetTempPath(), asset.Name); - - using(var response = await _httpClient.GetAsync(asset.Url)) - using(var fileStream = File.Create(downloadPath)) - { - response.EnsureSuccessStatusCode(); - await response.Content.CopyToAsync(fileStream); - } - - ApplyUpdate(downloadPath); - } - - - - private static void ApplyUpdate(string filePath) - { - try - { - var currentExecutable = Assembly.GetExecutingAssembly().Location; - - var psCommand = $"Start-Sleep -Seconds 2; " + - $"Copy-Item -Path '{filePath}' -Destination '{currentExecutable}' -Force; " + - $"Remove-Item -Path '{filePath}' -Force; " + - $"Start-Sleep -Seconds 1; " + - $"Start-Process -FilePath '{currentExecutable}';"; - - var startInfo = new ProcessStartInfo - { - FileName = "powershell.exe", - Arguments = $"-WindowStyle Hidden -ExecutionPolicy Bypass -Command \"{psCommand}\"", - UseShellExecute = true, - CreateNoWindow = true, - WindowStyle = ProcessWindowStyle.Hidden - }; - - Process.Start(startInfo); - - Task.Delay(500).ContinueWith(_ => - { - App.Shutdown(); - }); - } - catch (Exception ex) - { - throw new Exception($"Update failed: {ex.Message}"); - } - } - - private static Version ParseVersion(string versionTag) - { - return new Version(NormalizeVersion(versionTag)); - } - - private static string NormalizeVersion(string versionTag) - { - if (string.IsNullOrWhiteSpace(versionTag)) - { - throw new ArgumentException("Version tag cannot be empty.", nameof(versionTag)); - } - - return versionTag.Trim().TrimStart('v', 'V'); - } - - private static string NormalizeText(string text) - { - if (string.IsNullOrWhiteSpace(text)) - { - return null; - } - - return NormalizeLineEndings(text).Trim(); - } - - private static string NormalizeLineEndings(string text) - { - return text - .Replace("\r\n", "\n") - .Replace('\r', '\n'); - } - - private static async Task TryLoadFullChangelogAsync() - { - return await TryBuildReleaseHistoryAsync(); - } - - private static async Task TryBuildReleaseHistoryAsync() - { - try - { - var response = await _httpClient.GetAsync(ReleasesApiUrl); - if (!response.IsSuccessStatusCode) - { - return null; - } - - var releases = JsonConvert.DeserializeObject(await response.Content.ReadAsStringAsync()); - if (releases == null || releases.Length == 0) - { - return null; - } - - return BuildReleaseHistory(releases); - } - catch - { - return null; - } - } - - private static string BuildReleaseHistory(GitHubRelease[] releases) - { - var builder = new StringBuilder(); - - foreach (var release in releases.Where(item => !string.IsNullOrWhiteSpace(item?.TagName))) - { - if (builder.Length > 0) - { - builder.AppendLine(); - builder.AppendLine(); - } - - builder.Append("## [") - .Append(NormalizeVersion(release.TagName)) - .Append("]"); - - if (release.PublishedAt != default(DateTimeOffset)) - { - builder.Append(" - ") - .Append(release.PublishedAt.UtcDateTime.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture)); - } - - var notes = NormalizeText(release.Body); - if (string.IsNullOrWhiteSpace(notes)) - { - continue; - } - - builder.AppendLine(); - builder.AppendLine(); - builder.Append(notes); - } - - return NormalizeText(builder.ToString()); - } - - } -} \ No newline at end of file diff --git a/WandEnhancer/View/MainWindow/MainWindow.xaml b/WandEnhancer/View/MainWindow/MainWindow.xaml index e3ed60b..5bc0fa9 100644 --- a/WandEnhancer/View/MainWindow/MainWindow.xaml +++ b/WandEnhancer/View/MainWindow/MainWindow.xaml @@ -45,12 +45,6 @@ v 1.0.0 -