Use a path string instead of a string list to encode Node paths
Los mantenedores suelen responder en 1 día
@r-c-n ya está trabajando en esto.
Desde el 18/3/2024.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Currently, all Nodes have a path field that encodes the path to that node from a root node (in practice, a checkout node) as a list of strings. I don't know the reason to pick a list to encode a path, but there are certain shortcomings that come with it, the most important of which is that it severely handicaps the way it can be used in queries. That is, we can't search for nodes with a certain string in their paths because we can't express that kind of condition (match an element inside a list) in our queries.
I propose we use a more universal approach to paths and use a common slash-separated path string instead?
Pros:
- They can be properly used as query conditions
- They can carry additional information that the lists can't provide: for instance, we can encode whether a node is a leaf node or an intermediate node by having the intermediate nodes end their path string with a trailing slash ('/'). This would give us additional expressiveness in the queries for free, we'd be able to quickly identify if a node contains children nodes or if it's a leaf node.
- No loss of expressiveness or features compared to the current implementation.
Cons:
- The character used as the separator can't appear in the name of a test suite, test case, etc.
This could be done with very few code changes, a simple set of helper functions can do the work of managing this field (appending parts to the path, setting a trailing slash when adding children nodes, unpacking path parts, etc).
- Lenguaje dominante
- Python
- Estrellas
- 120
- Forks
- 108
- Merge medio
- 1 d 12 h
- PR fusionados (30 d)
- 21
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 kernelci/kernelci-core
-
good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
kernelci/kernelci-core#2591 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 25/100
kernelci/kernelci-core#3234 ·
Los mantenedores suelen responder en 1 día
-
Make Kubernetes job network readiness checks bounded and deployment-independentQuizá libre de nuevo @Aniket1260 la tomó hace 37 días y no hay ningún pull request abierto. Abiertogood first issue techdebt
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
kernelci/kernelci-core#3197 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
chromeos techdebt
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
kernelci/kernelci-core#3196 ·
Los mantenedores suelen responder en 1 día
-
kubernetes runners missing logs and test naming wrongQuizá libre de nuevo @nuclearcat la tomó hace 69 días y no hay ningún pull request abierto. Abierto
kernelci/kernelci-core#3170 · 2 comentarios · 1 reacción · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de kernelci/kernelci-core
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
-
Harmony OPeNDAP SubSetter (HOSS) Geographic LARC_CLOUD PREFIRE_SAT2_AUX-SAT R01 production
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
nasa/harmony-autotester#245 ·
-
[FEATURE] - Add UTVD supportAbiertoenhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Deltares/imod-python#1928 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
feature
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100