Skip to content

Conversation

ldez
Copy link
Member

@ldez ldez commented Apr 3, 2025

The migration guide is sparse https://cli.urfave.org/migrate-v2-to-v3/, but the migration is not complex.

@ldez ldez added this to the unreleased milestone Apr 3, 2025
@ldez ldez requested a review from dmke April 3, 2025 16:42
@ldez ldez force-pushed the feat/urfave-v3 branch from c808038 to 0bb5374 Compare April 3, 2025 16:46
@ldez

This comment was marked as outdated.

@dmke

This comment was marked as off-topic.

@ldez ldez changed the title chore: migrate to urfave v3 chore: migrate to urfave/cli v3 Apr 5, 2025
@ldez ldez mentioned this pull request Apr 11, 2025
Copy link
Member

@dmke dmke left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@dmke

This comment was marked as off-topic.

@ldez
Copy link
Member Author

ldez commented Apr 14, 2025

I have the feeling after playing a bit with urfave/cli v3 that not all things are stable, so we will wait a bit before the merge of this PR.

@ldez
Copy link
Member Author

ldez commented Apr 23, 2025

v3.2 of urfave/cli breaks things... I always appreciated the simplicity of this lib, but the current release flow is bad, very bad.

Copy link
Member

@dmke dmke left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I mean... if upgrading urfave/cli to v3 is this tedious, we can stay on v2 for a while longer.

Have you looked into alternatives, yet? Personally, I found spf13/pflag sufficient most of the time, and spf13/cobra helpful for anything beyond.

@ldez
Copy link
Member Author

ldez commented Apr 23, 2025

I use spf13/cobra (+ spf13/viper) for other projects, IMHO it's overkill for lego.
It needs plumbing and has unwanted complexity, especially when using spf13/viper.
spf13/viper has some design problems (it creates "case insensitivity" by lower-casing everything, and this is a problem).

IMHO, spf13/pflag is not a huge improvement on the standard flags package, and it has the same problems as spf13/cobra (expected as spf13/cobra is based on spf13/pflag).

I'm looking at alecthomas/kong, I never tried.

I also created a configuration parser a few years ago: traefik/paerser

But I still like the simplicity of urfave/cli.

For now, we don't need to migrate, so we will wait.

@ldez ldez removed this from the unreleased milestone Apr 23, 2025
@ldez ldez marked this pull request as draft April 23, 2025 21:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

2 participants