-
-
Notifications
You must be signed in to change notification settings - Fork 508
v2.14.3 #1326
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
v2.14.3 #1326
Conversation
(cherry picked from commit 271cad1)
Fix missing .net 8 and remember sidebar open state (cherry picked from commit 8117898) # Conflicts: # CHANGELOG.md # StabilityMatrix.Core/Models/Settings/Settings.cs
[dev to main] backport: Fix missing .net 8 and remember sidebar open state (1094)
…d-fixes Fix comfy-zluda not showing up for workflow browser node installs & … (cherry picked from commit b012947) # Conflicts: # CHANGELOG.md
Fixed a few github issues & update download locations for wan/hunyuan/ggufs (cherry picked from commit 8a35e05) # Conflicts: # CHANGELOG.md # StabilityMatrix.Core/Models/PackageModification/InstallSageAttentionStep.cs
[dev to main] backport: Fixed a few github issues & update download locations for wan/hunyuan/ggufs (1101)
[dev to main] backport: Fix comfy-zluda not showing up for workflow browser node installs & … (1099)
Fix invoke and kohya
…rrors Catch symlink removal errors during update so it doesn't completely fail the update (cherry picked from commit 0dea261) # Conflicts: # CHANGELOG.md
[dev to main] backport: Catch symlink removal errors during update so it doesn't completely fail the update (1105)
update base model parsing from error response cuz civit changed response model (cherry picked from commit a397926) # Conflicts: # CHANGELOG.md
[dev to main] backport: update base model parsing from error response cuz civit changed response model (1109)
Pin pupnet version in release.yml (cherry picked from commit 16be528)
[dev to main] backport: Pin pupnet version in release.yml (1111)
update 2.14.3 chagenlog with shoutout & notes from main (cherry picked from commit ce9992b) # Conflicts: # CHANGELOG.md
[dev to main] backport: update 2.14.3 chagenlog with shoutout & notes from main (1113)
Fix build error for .net 9/10 macOS hybrid shenanigans (cherry picked from commit 46df8c4)
[dev to main] backport: Fix build error for .net 9/10 macOS hybrid shenanigans (1108)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Summary of Changes
Hello @mohnjiles, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
This pull request introduces version v2.14.3, focusing on a range of improvements, bug fixes, and minor feature additions across the application. Key areas of enhancement include improved model management, better image metadata handling, updated prerequisite installations, and general stability improvements.
Highlights
- Civitai Integration Enhancements: Added the ability to search Civitai models by pasting a full URL, improved loading of image metadata from Civitai-generated images, and updated pre-selected download locations for various model types.
- Prerequisite Management Updates: Node.js has been updated to v20.19.3, and the .NET SDK installation logic has been refined for both Windows and Linux to ensure correct versions are installed and reinstalled only when necessary.
- Stability and Compatibility Fixes: Addressed several installation issues for packages like
kohya_ss,FluxGym,Triton, andSageAttention. Improved GPU detection on Linux and fixed issues with symlinks during package updates. - User Interface Improvements: The main sidebar now remembers its collapsed/expanded state between restarts, and the output browser has been updated to ignore InvokeAI thumbnail folders.
- Internal Code Refinements: Various internal code changes for better maintainability, including explicit
AsEnumerable()calls for byte array reversals and updated package dependencies.
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.
| Feature | Command | Description |
|---|---|---|
| Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
| Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
| Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
| Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request updates the application to version v2.14.3, which includes several bug fixes, new features, and dependency updates. While the changes generally improve the application, there are opportunities to enhance code maintainability, performance, and error handling. Addressing these suggestions will contribute to a more robust and reliable application.
| <Project> | ||
| <PropertyGroup> | ||
| <TargetFramework>net9.0</TargetFramework> | ||
| <LangVersion>preview</LangVersion> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| { | ||
| var chunkLength = BitConverter.ToInt32( | ||
| inputImage[position..(position + 4)].Reverse().ToArray(), | ||
| inputImage[position..(position + 4)].AsEnumerable().Reverse().ToArray(), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The use of .AsEnumerable().Reverse().ToArray() for byte reversal is inefficient, allocating unnecessary memory. Utilize System.Buffers.BinaryPrimitives.ReadInt32BigEndian(inputImage.AsSpan(position, 4)) for direct span manipulation and allocation avoidance. This applies to other similar instances in this file and ImageMetadata.cs.
var chunkLength = System.Buffers.Binary.BinaryPrimitives.ReadInt32BigEndian(inputImage.AsSpan(position, 4));| // NOTE TO FUTURE DEVS: if this is causing merge conflicts with dev, just nuke it we don't need anymore | ||
| private async Task<string> RunNode( | ||
| ProcessArgs args, | ||
| string? workingDirectory = null, | ||
| IReadOnlyDictionary<string, string>? envVars = null | ||
| ) | ||
| { | ||
| var nodePath = Path.Combine(NodeDir, "bin", "node"); | ||
| var result = await ProcessRunner | ||
| .GetProcessResultAsync(nodePath, args, workingDirectory, envVars) | ||
| .ConfigureAwait(false); | ||
|
|
||
| result.EnsureSuccessExitCode(); | ||
| return result.StandardOutput ?? result.StandardError ?? string.Empty; | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| catch (Exception) | ||
| { | ||
| // ignored | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Silently ignoring exceptions in the catch block can mask underlying issues. Log the exception to provide insights into potential failures during Node.js version checking. This aids in debugging and prevents unexpected behavior.
catch (Exception e)
{
Logger.Debug(e, "Could not get node version, assuming it needs reinstall.");
}| var innerJson = baseModels?["error"]?["message"]?.GetValue<string>(); | ||
| var jArray = JsonNode.Parse(innerJson).AsArray(); | ||
| var baseModelValues = jArray[0]?["errors"]?[0]?[0]?["values"]?.AsArray(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
v2.14.3
Added
Changed
Fixed
Supporters
🌟 Visionaries
Big heartfelt thanks to our stellar Visionary-tier Patrons: Waterclouds, Corey T, bluepopsicle, Bob S, Ibixat, and whudunit! 🌟 Your extraordinary generosity continues to fuel Stability Matrix’s journey toward innovation and excellence. We appreciate you immensely!
🚀 Pioneers
Massive thanks to our fantastic Pioneer-tier Patrons: tankfox, Mr. Unknown, Szir777, Tigon, Noah M, USATechDude, Thom, and SeraphOfSalem! Your unwavering support keeps our community thriving and inspires us to push even further. You’re all awesome!