You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Issue:
The interface status line was displaying literal curly braces around the "Up" status (e.g., Up: {}no{}) instead of applying the intended colors.
Cause:
The issue was caused by an f-string escaping conflict. Inside the f-string's expression block (the inline if/else), double curly braces {{O}} were being treated as literal characters rather than being unescaped. This resulted in the Color.pl method receiving {{O}}no{{W}} and failing to parse the color codes correctly, leaving the outer braces visible in the terminal.
Changes:
Removed unnecessary double braces inside the f-string's conditional logic for the iface.is_up check.
Verified that the status now correctly displays as colored text (Green "yes" / Orange "no") without visible brackets.
PR Review: Fix color formatting in interface status output
The fix is correct and clean. Here's a quick summary:
The Bug (wifite/util/system_check.py:719)
Inside an f-string expression block, double braces like {{G}} are interpreted as literal {G} text — they don't get further processed by Color.pl. So the original code was passing the string {G}yes{W} as literal characters including the braces to Color.pl, which then couldn't match the color codes correctly, producing output like Up: {}no{}.
The Fix
Changing {{G}}yes{{W}} to {G}yes{W} inside the f-string conditional is correct. Since these strings are inside an expression ({...}) in the f-string, they're just regular string literals — no escaping needed. Color.pl receives the string exactly as written and can parse the color codes properly.
Result: Up: now correctly displays green yes or orange no instead of raw unrendered color tags.
Minimal, targeted, correct fix. Good work to @c0dew3ll!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue:
The interface status line was displaying literal curly braces around the "Up" status (e.g., Up: {}no{}) instead of applying the intended colors.
Cause:
The issue was caused by an f-string escaping conflict. Inside the f-string's expression block (the inline if/else), double curly braces {{O}} were being treated as literal characters rather than being unescaped. This resulted in the Color.pl method receiving {{O}}no{{W}} and failing to parse the color codes correctly, leaving the outer braces visible in the terminal.
Changes:
Removed unnecessary double braces inside the f-string's conditional logic for the iface.is_up check.
Verified that the status now correctly displays as colored text (Green "yes" / Orange "no") without visible brackets.
Before:

After:
