Automate more of the Python upgrade
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- github-actions, python
- Área
- ci-cd, devops, documentation
Línea de trabajo
Lee .github/workflows/new_python.yml para comprender la lista de comprobación actual de actualización de Python y, después, revisa renovate.json y decision 0022-spec-0.html. Decide qué pasos de soporte y Deprecation deberían automatizarse, registra esa decisión en el documento vinculado e implementa la automatización acordada o divide el trabajo más difícil en un nuevo Issue.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
When a new python version is released we currently have the checklist in https://github.com/DiamondLightSource/python-copier-template/blob/main/.github/workflows/new_python.yml. Many of these steps could be done automatically by renovate e.g. something like:
{
"regexManagers": [
{
"fileMatch": ["^\\.github/workflows/.*\\.ya?ml$"],
"matchStrings": [
"python-version:\\s*\
\[(?<currentVersions>[^\\]
]+)\\]
"
],
"datasourceTemplate": "python",
"depNameTemplate": "python",
"versioningTemplate": "pep440"
}
]
}
in the renovate.json should update the versions under test.
There are probably differing opinions of how much of this we do automatically, semi-automatically or manually based on risk. My preference would be to split the move into two steps:
- Adding the new version as supported - e.g. adding it to the versions under test and to the
classifiers. I would say if the tests pass then merge this w/o human input - Deprecating the old one. I think this does need human intervention as it's risky and there may be valid reasons it's hard. However, we can probably still get renovate to make the PR for it.
Acceptance Criteria
- We decide how much of the process should be automated
- The decision is written in https://diamondlightsource.github.io/python-copier-template/main/explanations/decisions/0022-spec-0.html
- We automate the agreed upon steps (or make a new issue if hard)
- Lenguaje dominante
- Jinja
- Estrellas
- 25
- Forks
- 10
- Merge medio
- 4 d 17 h
- PR fusionados (30 d)
- 7
Guía de contribución
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 DiamondLightSource/python-copier-template
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 68/100
-
documentation good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 70/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Todos los issues de DiamondLightSource/python-copier-template
Issues similares
-
task
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
vsanthanam/JBird#429 ·
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
alexgorbatchev/simple-ptt#14 ·
-
github-request
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
openedx/axim-engineering#1758 · 2 comentarios ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
components-web-app/docs#92 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100