Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

[RDataFrame] Code that transforms `#var` alias to `R_rdf_sizeof_var` does not respect string literals

Abierto
#23,790 0 comentarios 0 reacciones 1 asignado Ver en GitHub

Los mantenedores suelen responder en 1 día

@vepadulano ya está trabajando en esto.

Desde el 22/10/2026.

  • #23800 de @muntasir-396 — abierto
  • #23804 de @vepadulano — abierto

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
71/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
cpp, python
Área
data

Línea de trabajo

Start with the alias transformation near line 183 of tree/dataframe/src/RDFInterfaceUtils.cxx and reproduce the problem with the provided RDataFrame example. Check how the transformation handles string literals containing #; done means the example prints and stores the original strings, and relevant tests cover this behavior.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug in:RDataFrame
Check duplicate issues.
  • Checked for duplicates
Description

The code before
https://github.com/root-project/root/blob/72f8ef3b95285bb0bb61bc8310701021ab52fad8/tree/dataframe/src/RDFInterfaceUtils.cxx#L183
fails when the RDataFrame expression preProcessedExpr contains string literals that contain # characters. In this case, the string literal is wrongly modified altering data used in the expression.

Reproducer
#!/usr/bin/env python3

import ROOT


CPP_CODE = """
std::string
printString(const std::string& s)
{
  std::cout << s << std::endl;
  return s;
}
"""
ROOT.gInterpreter.Declare(CPP_CODE)


ROOT.RDataFrame(1) \
    .Define("col", 'printString("#a")') \
    .Filter('printString("#b"); return true') \
    .Display(("col", )).Print()
# should print "#a" and "#b" to the console and `col` should contain "#a"
# instead, it prints "R_rdf_sizeof_b" and "R_rdf_sizeof_a" to the console and `col` contains "R_rdf_sizeof_a"
ROOT version

This was introduced by 819a3829cc350bc69386a201ee59340f61c35342 and affects all ROOT versions since 6.25.02. Verified using 6.32.20 and 6.40.04.

Installation method

built from source

Operating system

AlmaLinux 9.8

Additional context

No response

Lenguaje dominante
C++
Estrellas
3.3k
Forks
1.6k
Merge medio
2 d 17 h
PR fusionados (30 d)
188

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de root-project/root

Todos los issues de root-project/root

Issues similares

Más issues de C++

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.