Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

[feature request] Exclude function (kw)args from synopsis, arguments and flags in help output

Aberta
#465 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
30/100
Tipo de issue
Funcionalidade
Clareza
Precisa de esclarecimento
Status de atividade
Estagnada
Stack de tecnologia
python
Domínio
cli

Direção de pesquisa

A issue não nomeia arquivos, testes ou pontos de entrada. Comece localizando o código que constrói os resumos da ajuda, os argumentos e as flags; em seguida, compare as abordagens propostas de exclusão de sublinhados, apenas literais e tipos/módulos. Para considerar concluído, é necessária uma API de exclusão acordada e testes mostrando que os argumentos nomeados excluídos não aparecem mais em cada seção da ajuda.

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

Descrição

enhancement

The help output lists all function (keyword) arguments in the synopsis, arguments and flags.

In my specific use case, I would like to exclude some of those arguments, because they are:

  1. of non-literal type, and therefore not easily provided through the means of CLI
  2. injected by a dependency injection decorator

The option to exclude (keyword) arguments could be done in a couple of ways:

  1. prefix the argument name with an underscore, e.g.
def my_function(a: bool, _complex_type: ComplexType = ComplexType()):
  ...
  1. limit args and kwargs to literal types
fire.Fire(help_include_literals_only=True)
  1. provide the means to exclude arguments based on module or instance type, e.g.
def my_function(a: bool, s: service.ComplexType):
  ...

fire.Fire(
  help_exclude_arg_types=[service.ComplexType],
  help_exclude_arg_modules=[service]
)
Linguagem predominante
Python
Estrelas
28.2k
Forks
1.5k
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 google/python-fire

Todas as issues de google/python-fire

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

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