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
Update CLI flag configuration to use Sources instead of EnvVars
Refactor function signatures to use cli.Command instead of cli.Context
Add CLI documentation generation command
Diagram Walkthrough
flowchart LR
A["urfave/cli/v2"] --> B["urfave/cli/v3"]
B --> C["Updated Flag Configuration"]
B --> D["Function Signature Changes"]
B --> E["CLI Documentation Generation"]
C --> F["EnvVars → Sources"]
D --> G["cli.Context → cli.Command"]
The GravatarDefault field assignment on line 99 directly calls cmd.String() without using the GetEnumValue helper that was removed, potentially causing runtime issues if the enum validation is not properly handled elsewhere.
The removal of GetEnumValue and GetGeneric helper functions may break existing code that depends on these utilities for type-safe enum value retrieval from CLI contexts.
ifs, ok:=e.Get().(string); ok {
returns
}
return""
}
The migration changes cli.NewStringSlice() calls to direct slice literals, but this may not be equivalent behavior in urfave/cli v3. The new Value field assignments should be verified to work correctly with the v3 API.
The return type changed from string to any which breaks type safety. This could cause runtime panics when callers expect a string but receive a different type.
-func (e *EnumValue) Get() any {+func (e *EnumValue) Get() string {
if e.selected == "" {
return e.Default
}
return e.selected
}
Suggestion importance[1-10]: 8
__
Why: This is a valid concern about type safety. Changing the return type from string to any breaks the contract and could cause runtime issues for existing callers expecting a string type, especially in the String() method implementation.
Medium
Security
Avoid exposing sensitive configuration values
The error message reveals the invalid auth method value to potential attackers. Consider using a generic error message that doesn't expose the actual input value to prevent information leakage.
Why: The suggestion correctly identifies a potential information leakage issue where invalid auth method values are exposed in error messages. However, the impact is relatively low since this is configuration validation rather than user input, and the suggested generic error message reduces debugging capability.
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.
PR Type
Enhancement
Description
Migrate from urfave/cli/v2 to v3 with API changes
Update CLI flag configuration to use Sources instead of EnvVars
Refactor function signatures to use cli.Command instead of cli.Context
Add CLI documentation generation command
Diagram Walkthrough
File Walkthrough
10 files
Update config functions for cli/v3 compatibilityRefactor database pool creation for new CLIUpdate email configuration and error handlingSimplify enum value handling and remove helpersUpdate JWT getter configuration for cli/v3Refactor logging configuration and flag processingUpdate migration functions for new CLI interfaceUpdate OAuth provider configuration functionsMajor CLI flag migration and server configurationAdd CLI documentation generation and update app structure5 files
Add nolintlint directive to test constantAdd nolintlint directive to test constantAdd nolintlint directive to test constantRemove WebAuthn test HTML fileRemove Node.js audit configuration file7 files
Update development guide title and contentRemove outdated Node.js development guideUpdate installation and configuration documentationUpdate security vulnerability reporting URLAdd comprehensive CLI documentationUpdate configuration documentation referencesRemove outdated environment variables documentation2 files
Update dependencies for urfave/cli/v3 migrationUpdate dependency checksums for new versions