google / google/python-fire

Improve error message when required argument is missing

Abierto
#633 1 comentario 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Python
Estrellas
28.2k
Forks
1.5k
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

## Description
When a required function argument is not provided via the command line, Python Fire raises a generic TypeError that doesn't clearly indicate which argument is missing or how to provide it.

## Current Behavior
```bash
$ python my_script.py greet
TypeError: greet() missing 1 required positional argument: 'name'
```

## Expected Behavior
A more user-friendly error message that would guide the user:
```
$ python my_script.py greet
Error: Missing required argument 'name'
Usage: my_script.py greet
```

## Motivation
This would significantly improve the user experience, especially for new users who are unfamiliar with Python tracebacks. Clear error messages are crucial for CLI tools.

## Environment
- Python Fire version: 0.7.1
- Python version: 3.11
- OS: macOS

## Possible Solution
Catch TypeError exceptions in the argument parsing logic and check if they're related to missing arguments, then provide a more descriptive message with usage hints.

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.