Releases: HakuSystems/EasyExtractUnitypackage
V2.0.7.0
Changelog written with ai, for better readability.
🚀 EasyExtractUnitypackage – Version 2.0.7.0
✨ What's New:
-
HyperlinkButton for website
so more users see the web version -
Mostly just Refactoring
Full Changelog: main@{1day}...main
V2.0.6.9
Changelog written with ai, for better readability.
🚀 EasyExtractUnitypackage – Version 2.0.6.9
🎉 Intelligent Logging, Enhanced Stability, and a Refined User Experience!
This update introduces a revamped logging engine, more robust asynchronous processing, and significant UI enhancements to make your workflow even more secure and efficient.
✨ What's New:
-
🔧 Detailed Logger Configuration:
- Manage logging settings directly from a new UI card in the settings.
- Enable or disable stack traces, performance logging, memory tracking, and asynchronous logging with a single click.
- Conveniently open the log folder via a new button in the settings.
-
🛡️ Integrated Hashing Utilities:
- Introducing hashing utilities to verify file integrity. (this is beta, and needs refinements)
- Supports MD5, SHA-1, SHA-256, and SHA-512 algorithms.
🛠️ Improvements & Stability Enhancements:
-
⚡ Enhanced Asynchronicity & Performance:
- Replaced all blocking calls with
async/await
, improving application responsiveness and preventing deadlocks. - Optimized asynchronous processing in the queue using
ConfigureAwait
to ensure better UI synchronization. - Disabled unused UI animations to further boost performance.
- Replaced all blocking calls with
-
🧠 Intelligent Logging & Error Handling:
- The entire logging system has been replaced with a new, modular engine.
- Logs are now contextual and structured, significantly simplifying debugging and traceability.
- Unified exception handling and improved error logging.
-
🔒 Enhanced Extraction Security:
- File paths and names are now sanitized to prevent invalid characters and security risks like Path Traversal.
- Malicious code detection has been optimized with an improved regex for shorter domain names.
-
🖥️ UI Improvements & Code Cleanup:
- The dashboard layout has been redesigned with adjusted spacing and improved typography for a cleaner appearance.
- Extensively refactored the codebase to improve readability and maintainability.
- Configuration saving is now debounced to reduce redundant disk writes.
-
📦 Updated Dependencies:
- Upgraded key libraries including
DiscordRichPresence
,MaterialDesignThemes
,Serilog
, andSkiaSharp
to their latest versions.
- Upgraded key libraries including
✅ Critical Bug Fixes:
- Fixed: The application now automatically updates its version number on startup, ensuring the correct version is always displayed.
- Fixed: Improved error handling for empty or invalid file paths to prevent crashes during extraction.
- Fixed: Resolved a queue synchronization issue after updates by forcing configuration reloads. (on drag and drop)
Full Changelog: main@{1day}...main
V2.0.6.8
🚀 EasyExtractUnitypackage – Version 2.0.6.8
🎉 Refinements, Robustness, and User-Friendly Enhancements!
This update focuses on fine-tuning functionality, enhancing stability, and providing delightful new features to streamline your workflow even further.
✨ What's New:
-
🔧 Smarter File Handling:
- Automatically corrects malformed file extensions, eliminating manual cleanup. (Thanks, oguzhan_sparklegames!)
-
🎶 Integrated Sound Effects:
- Enjoy audio notifications for a more interactive experience.
- Easily control sound settings and volume directly from the improved settings interface.
-
📁 Customizable Output Path:
- Set a default extraction output path that persists between sessions, simplifying file management.
-
📐 Persistent Window Preferences:
- Your window size, position, and scaling preferences are now remembered, providing a consistent user experience every time you launch the app.
-
🔔 Enhanced Notification System:
- Elegant, Windows-style notifications keep you informed without interruption.
🛠️ Improvements & Stability Enhancements:
-
🚑 Robust Error Handling:
- Improved protection against crashes during extraction and drag-and-drop operations.
- Enhanced exception logging and management for smoother, crash-free sessions.
-
🖥️ UI & Initialization Optimizations:
- Streamlined dashboard initialization logic for quicker startup.
- Removed unnecessary properties and services to boost performance and maintainability.
-
🧹 Codebase Clean-Up:
- Extensive refactoring for clarity, better null safety, and optimized performance.
- Removed redundant features and dependencies to simplify future development.
-
📦 Dependency Updates:
- Upgraded key libraries including MaterialDesignThemes, Serilog, Microsoft.Extensions.*, and added NAudio for improved audio functionality.
✅ Critical Bug Fixes:
- Fixed: App crashes caused by empty or invalid pathname entries during extraction. (Issue #18)
- Fixed: Stability improvements during drag-and-drop actions and update checks, reducing the likelihood of unexpected app behavior.
📌 Important Notes:
- Legacy Support Removed: The old
LastExtractedPath
feature has been replaced withDefaultOutputPath
.
Full Changelog: V2.0.6.7...V2.0.6.8
V2.0.6.7
🚀 EasyExtractUnitypackage – Version 2.0.6.7
🎉 A major UI overhaul and enhanced user experience!
This update brings a completely redesigned interface that's cleaner, more intuitive, and more responsive.
I've streamlined many parts of the app
and introduced several exciting new features to make your workflow smoother than ever.
✨ What's New:
-
Brand New User Interface:
Completely redesigned UI structure across all views for improved clarity, consistency, and accessibility. -
🎨 Dynamic UI Enhancements:
- Added responsive hover effects and smooth transition animations.
- Introduced drag-and-drop functionality (with visual feedback) for easier file handling.
- Integrated modern typography and visually appealing radial gradients using SkiaSharp.
-
🔎 Improved Search & Queue Management:
- New Unitypackage search box with smart filtering for quicker results.
- Added functionality to manage and clear queued files easily.
-
📈 Enhanced Extraction Progress:
- Real-time extraction progress tracking with clear percentage indicators and elapsed time.
- New detailed statistics view, including export options (JSON, XML, CSV), for advanced user insights.
-
✨ Fun UI Customization ("UwU Mode"):
- Fully redesigned "UwU Mode" featuring animated sparkles, smooth text transformations, and immersive UI effects.
-
🛠️ Stability and Performance:
- Significantly reduced UI lag during extraction processes.
- Enhanced error handling, particularly for encrypted files, ensuring app stability and preventing crashes.
-
✅ Important Fixes:
- Fixed: App crashes when processing encrypted DLL files (Issue #17).
- Fixed UI scaling issues on resolutions other than 1920x1080, significantly improving usability on different screens.
-
🗑️ Simplified Navigation & UI:
- Added convenient "Back" button for improved navigation across views.
- Streamlined app startup, removing unnecessary splash screens and simplifying the overall user flow.
-
📦 Updated Dependencies:
- Upgraded underlying libraries and dependencies for better stability and compatibility.
🔖 Important Notes
This release focuses primarily on providing you with a more intuitive and user-friendly experience. Note:
- The previous "Extraction" view has been replaced with the enhanced
BetterExtraction
view for greater ease of use. - Malicious script detection (has been improved) and Easter egg functionality has been removed (or is it?) to maintain a clean and focused user experience.
- A lot of Bug Fixes and Performance Improvements.
- Fixes #17 & #15
Full Changelog: V2.0.6.6...main
V2.0.6.6
EasyExtract - Version 2.0.6.6
What's new?
- Refactored UI with enhanced settings presentation, including "NEW" and "Experimental" labels for improved clarity.
- Dynamic scaling support introduced with three modes: Off, Simple, and Experimental, for better UI adaptability.
- Updated default scaling mode to "Simple" for consistent performance across various devices.
Removed
- Deprecated DpiDecorator as it's no longer necessary with the new dynamic scaling implementation.
- Removed unused drop shadow effects to streamline UI visuals.
Overall
- Improved layout elements to support dynamic scaling and enhance user experience across all views.
- Continued focus on code refactoring to maintain clean and maintainable architecture.
- Expanded scaling-related settings with improved options for better customization.
Fixes
- Addressed layout inconsistencies in various views caused by static scaling elements.
- Resolved minor UI glitches related to scaling transitions and rendering issues.
Full Changelog: main@{1day}...main
V2.0.6.5
EasyExtract - Version 2.0.6.5
Whats new?
- Enhanced Dashboard design with dynamic resources and improved theme adaptability
- Added DPI scaling support via
DpiDecorator
for sharper, consistent UI - Introduced reusable info dialog and refactored error dialog logic for consistency
- Improved search functionality (partial substring matching, proper date parsing)
- UI enhancements in
Dashboard.xaml
(dynamic background color, refined layout, placeholders for future customization)
Removed
- Fixed window dimensions in
Dashboard.xaml
- Unnecessary comments across multiple XAML files
- Redundant file references in logger calls
Overall
- Refactored code for clearer structure and maintainability (e.g.,
BetterLogger
made static, XAML elements reorganized) - Upgraded dependencies (
MaterialDesignThemes
,Serilog
,Fody
, etc.) to latest stable versions - Improved logging architecture (colorized console output, automatic cleanup of old logs)
- Refined styling (centered grids, consistent font sizes, improved margins) for better user experience
Fixes
- This update should fix the issue #15 at least temporary
Full Changelog: main@{1day}...main
V2.0.6.4
EasyExtract - Version 2.0.6.4
Whats new?
- EasyExtract now supports .NET 9.0
- Since we now have a better way of getting the theme you wont have any Theme issues where you get some kind of "Big Withe mode application" even if you have Dark mode selected. (https://learn.microsoft.com/en-us/dotnet/desktop/wpf/whats-new/net90?view=netdesktop-9.0)
Removed
- Extraction Animation since it was not showing at all some of the extractions are way too fast to even see the animation on screen.
Overall
- Refactored some code.
- EasyExtract is now Only One executable for easy run & Extract
Full Changelog: V2.0.6.3...V2.0.6.4
V2.0.6.3
EasyExtract - Version 2.0.6.3
New Features and Improvements
Overall Codebase got more organized with this update
Custom MessageBox
- User-Friendly Error Messages: Added a custom
MessageBox
for visually appealing and informative error notifications, improving the user experience.
UI Enhancements
- Settings Page Borders: Added an option to display borders around sections in the settings page, enhancing readability and navigation.
Foundations for Custom Design
- Preparations for Future Customization: Added foundational elements for future custom design options, laying the groundwork for more personalization features.
What's Changed
- Indevelopment by @HakuSystems in #7
- New design by @HakuSystems in #8
- NewDesign by @HakuSystems in #9
- NewDesign by @HakuSystems in #10
- Add qodana CI checks by @qodana-cloud in #11
- Cleaning by @HakuSystems in #12
- Indevelopment by @HakuSystems in #13
- clean by @HakuSystems in #14
Full Changelog: V2.0.6.2...V2.0.6.3
V2.0.6.2
EasyExtract - Version 2.0.6.2
New Features and Improvements
Security Enhancements
- Discord Webhook Detection: The extraction process now detects potential malicious Discord webhook links and regular links in
.cs
files. The UI will notify the user with a warning if any suspicious links are found.
Feedback Feature
- New Feedback Tab: A feedback tab has been added to allow users to easily submit feedback directly from the application.
Bug Fixes
- Drag and Drop: The drag-and-drop functionality has been fixed and now works as expected.
- Background Issue: The issue where the background was not displaying correctly has been resolved.
UI Enhancements
- Customizable Header: The "Application is made by" header can now be hidden, allowing for a cleaner UI.
- Button Rename: The "Open Selected Directory" button in the extraction tab has been renamed to "Open Extract Directory." The button now properly opens the folder without asking the user to select a software to open it with.
New File Support
-
Supported File Extensions: The following file extensions are now supported:
.cs
.txt
.json
.shader
These files are displayed as code images in the UI, enhancing the visual presentation of text and code files.
Context Menu Toggle
- Context Menu Activation: A new toggle has been added in the settings that allows users to enable or disable the right-click context menu for Unitypackage files. If disabled, the app will not start in admin mode.
V2.0.6.1
Version 2.0.6.1 Update
Enhanced User Experience
- Display File Timestamps: Added
ModifiedTime
andCreatedTime
properties toSearchEverythingModel
. UI components now display these timestamps, improving file identification and selection.- Details: Adjusted layout for better readability. Added a new package dependency to support this enhancement.
- Related: Introduced the
GetFileDateTime
method for extracting file timestamps.
New Features
- Creation Date Filter Toggle: Added a toggle switch in the
SearchEverything
user control for enabling/disabling creation date filtering.- Details: Users can now filter search results by specifying a creation date range.
- Rationale: Enhances search functionality by providing more refined search options.
UI Enhancements
- Improved User Controls: Integrated a creation date filter and made UI improvements for better readability and user experience.
- Details: Enhancements focused on refining search results and improving overall aesthetics.
- Related: Task #5 (Search Engine improvement) by restush.
Code Documentation
- Method Documentation: Added XML documentation for methods in
UpdateHandler.cs
, includingIsUpToDate
,Update
,DownloadAssetAsync
, and others.- Details: Provided detailed summaries and remarks to improve code understanding and maintenance.
Update Handling Improvements
- Version Tag in Filenames: Modified the
DownloadAssetAsync
method to append a version tag to downloaded asset filenames.- Details: This change helps differentiate between assets from different releases and prevents potential file conflicts.
- Rationale: Ensures clarity and prevents overwriting issues with similarly named files.
Code Refactoring
- DiscordRpcManager Optimization: Refactored string handling in the Discord presence feature and updated
ConfigHelper
instantiation from instance-level to static.- Details: Improved code readability and maintainability.
- Fixes: None.