The Rust Docopt implementation¹ was deprecated this year, which is probably good because clap v3² is so awesome. In a project of mine (tealdeer), I noticed that docopt.rs was responsible for the huge majority of CPU instructions when running the binary: https://github.com/dbrgn/tealdeer/issues/106#issuecomment-59... I then switched³ to clap and shaved off almost a megabyte from the release binary⁴. Performance improved as well, time required for rendering a tldr page went down from ~15.9 ms to ~12.4 ms⁵. With the migration, we also managed to reduce a lot of custom validation logic and move this logic into the derive macro attributes.
¹ https://github.com/docopt/docopt.rs
² https://github.com/clap-rs/clap
³ https://github.com/dbrgn/tealdeer/pull/108
⁴ https://github.com/dbrgn/tealdeer/pull/108#issuecomment-9448...
⁵ https://github.com/dbrgn/tealdeer/pull/108#issuecomment-9448...