feature request: tell fire to stop parsing argument and pass the remaining unparsed args to function
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 35/100
Direção de pesquisa
Comece pelo ponto de entrada fire.Fire e inspecione como os argumentos da linha de comando são analisados antes de chegar ao método proposto fire.decorators.SkipParse. Defina como um marcador ou decorador de interrupção da análise deve se comportar e verifique se o exemplo preserva ('which', '-a', 'python3') após run.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Feature Description
I am working on a tool to wrap some existed command line tools to make them easier to use (like auto install, inject argument automatically, etc). And I hope that I can have a way to tell Fire to stop parsing after encount some specific command.
Example
Here are some real world examples like poetry run python3 ./my-scripts.py or conda run -n my-env python3 ./my-scripts.py
Without this feature I can only put everything else as string, just like what -c option of bash does, e.g. bash -c "echo 'hello world'" , which could still work, but the user have to type extra string quote and dealing with escaping in some cases.
I am not sure if it is possbile to provide some decorator to archive this, for example
class Conda:
def __init__(verbose=False):
...
@fire.decorators.SkipParse
def run(self, *argv):
print(argv)
fire.Fire(Conda)
And when running with python fake-conda.py --verbose run which -a python3, the output should be ('which', '-a', 'python3')
- Linguagem predominante
- Python
- Estrelas
- 28.2k
- Forks
- 1.5k
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de google/python-fire
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
google/python-fire#693 ·
-
Release 0.7.2? Aberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 38/100
google/python-fire#698 ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 58/100
google/python-fire#672 · 5 comentários ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
google/python-fire#665 · 2 comentários ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 55/100
google/python-fire#659 · 1 comentário ·
Todas as issues de google/python-fire
Issues semelhantes
-
essnmx good first issue
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 95/100
-
[Feature] 奇物选择添加优先级 Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
syfoud/Simulated_Scepter#174 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
Giskard-AI/giskard-oss#2840 · 1 comentário ·
-
A claim comment carrying the issue number is silently declined while the workflow reports success Abertaarea: repo bug perceived difficulty: 2
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
yeti-platform/yeti#1380 ·