project-create generates an invalid class name when the project name starts with a digit
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- Menos de una hora
- Aptitud para principiantes
- 40/100
Línea de trabajo
Find the code handling the project-create command in the lean-cli codebase, likely in a commands or templates directory. Look for the function that generates class names by removing non-alphanumeric characters from the project name. Add a check to prefix the result with an underscore when it starts with a digit or is empty, then add tests for project names like '2024 Momentum' and '123'.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Expected Behavior
lean project-create writes a main file that compiles, whatever the project name is.
Actual Behavior
The class name is the project name with non-alphanumeric characters removed. If the name starts with a digit, the generated class is not a valid identifier in Python or C#:
$ lean project-create --language python "2024 Momentum"
$ grep class "2024 Momentum/main.py"
class 2024Momentum(QCAlgorithm):
python -m py_compile on that file fails with SyntaxError: invalid decimal literal. A name with only digits (123) gives class 123(QCAlgorithm):. The command exits with code 0 in both cases, so the problem only shows up when the project is run.
Potential Solution
Prefix the class name with an underscore when it is empty or starts with a digit (_2024Momentum). I can open a PR with the fix and tests.
Reproducing the Problem
See the commands above.
System Information
lean-cli master at 20e58aa, Linux.
Checklist
- I have completely filled out this template
- I have confirmed that this issue exists on the current
masterbranch - I have confirmed that this is not a duplicate issue by searching issues
- Lenguaje dominante
- Python
- Estrellas
- 327
- Forks
- 170
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de QuantConnect/lean-cli
-
lean cloud live deploy --notify-webhooks fails when the address is a URLPosiblemente ocupada @Amadeus-22 la tomó hace 2 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 48/100
QuantConnect/lean-cli#671 ·
-
Docker image with a registry port cannot be parsedPosiblemente ocupada @Amadeus-22 la tomó hace 2 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 45/100
QuantConnect/lean-cli#669 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
QuantConnect/lean-cli#661 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
QuantConnect/lean-cli#619 ·
-
Implements AutocompleteQuizá libre de nuevo @shreejaykurhade la tomó hace 195 días y no hay ningún pull request abierto. Abiertofeature
QuantConnect/lean-cli#602 · 6 comentarios · 3 reacciones · 1 asignado ·
Todos los issues de QuantConnect/lean-cli
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
UKGovernmentBEIS/inspect_ai#5781 ·
Los mantenedores suelen responder en 2 días
-
Bump .cicd to wamp-cicd 4c2f9ac: `just land` refuses open A18 decisions, `just where` lists themAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
crossbario/cfxdb#139 ·
-
Bump .cicd to wamp-cicd 4c2f9ac: `just land` refuses open A18 decisions, `just where` lists themAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 84/100
crossbario/txaio#241 ·
-
UX
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
mediajunkie/piper-morgan-product#1963 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100