Consider using a smaller command line argument parser

Aberta
#69 0 comentários 3 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
5/5
Tempo estimado
Mais de uma semana
Facilidade para iniciantes
25/100
Tipo de issue
Refatoração
Clareza
Precisa de esclarecimento
Status de atividade
Estagnada
Stack de tecnologia
rust
Domínio
cli

Direção de pesquisa

Nenhum arquivo, teste ou ponto de entrada foi identificado. Comece localizando a integração atual do clap e, em seguida, compare pico-args e argh com os requisitos de parsing e ajuda do sudo. O trabalho estará concluído quando um parser menor for selecionado e adotado, preservando o comportamento necessário da linha de comando e validando o impacto no tamanho do binário e no tempo de compilação.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Issue-Task

clap constitutes roughly 80% of sudo's binary size. According to this we have various choices that are significantly smaller:
https://github.com/rosetta-rs/argparse-rosetta-rs#results

Among those, pico-args seems to be the 2nd most popular choice and it's 30x smaller and 10x faster to compile. argh was authored by Google and may receive continued support as well. This clap issue seems relevant: https://github.com/clap-rs/clap/issues/1365

Since other, smaller parsers often don't support builtin formatting for --help we'd probably have to write that ourselves, however for sudo I suspect a simple, static string is sufficient.

Linguagem predominante
Rust
Estrelas
5.9k
Forks
180
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de microsoft/sudo

Todas as issues de microsoft/sudo

Issues semelhantes

Mais issues de Rust

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.