Ragged VectorOfArray: R[i,j] zero-pads but R[i,:] and R[i,1:k] throw BoundsError
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 57/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Área
- backend
Línea de trabajo
Start at the row-slice paths in src/vector_of_array.jl:668 for VectorOfArray and :696 for DiffEqArray, and compare them with scalar indexing and Array(R) behavior. Reproduce with the provided ragged-array example; related issues #208 and #118 may clarify expected semantics. Done means row slices and scalar indexing consistently either zero-pad or throw, with tests covering the chosen behavior.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
On a ragged VectorOfArray, scalar indexing zero-pads, but row slices throw. The two disagree about whether the array is padded.
using RecursiveArrayTools
R = VectorOfArray([[1.0, 2.0], [3.0], [4.0, 5.0, 6.0]])
R[2, 2] # 0.0 (zero-padded)
R[2, :] # BoundsError: attempt to access 1-element Vector at index [2]
R[2, 1:3] # BoundsError
stack(R) # DimensionMismatch
The row-slice path is src/vector_of_array.jl:668 for VectorOfArray (and :696 for DiffEqArray). It indexes each inner array directly. Either row slices should zero-pad the way R[i,j] and Array(R) do, or R[i,j] should throw. Related: #208 and #118.
Found in a measurement audit of RecursiveArrayTools.jl master 02c477c (v4.5.3). It reproduces on Julia 1.12.4 and 1.10.12, and the reproducer above was re-run as written before filing.
🤖 Filed by Claude Code (model: claude-opus-5-5[1m]) on behalf of @ChrisRackauckas. The audit was done by a Claude Code Opus 5.5 subagent. Session: https://claude.ai/code/session_01LPHREnnonfLg1VcE1EJovv
- Lenguaje dominante
- Julia
- Estrellas
- 234
- Forks
- 77
- Merge medio
- 1 d 5 h
- PR fusionados (30 d)
- 10
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la 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 SciML/RecursiveArrayTools.jl
-
Docs: usage of j vs iAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 68/100
SciML/RecursiveArrayTools.jl#255 ·
Los mantenedores suelen responder en 2 días
-
ArrayPartition of GPU arrays: norm, dot, Vector, any scalar-index; no KernelAbstractions.get_backendAbierto
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
SciML/RecursiveArrayTools.jl#676 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 3/5 1-2 días Aptitud para principiantes 67/100
SciML/RecursiveArrayTools.jl#675 ·
Los mantenedores suelen responder en 2 días
-
JET: similar_type(::Any) no-matching-method in RecursiveArrayToolsRaggedArrays (pre-existing QA red)Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
SciML/RecursiveArrayTools.jl#620 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
SciML/RecursiveArrayTools.jl#619 ·
Los mantenedores suelen responder en 2 días
Todos los issues de SciML/RecursiveArrayTools.jl
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
SciML/PETScDiffEq.jl#196 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 84/100
SciML/Catalyst.jl#1571 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
SciML/Optimization.jl#1414 ·
Los mantenedores suelen responder en 1 día