Add #CALC! error type for Excel compatibility
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 48/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- typescript
- Área
- backend
Línea de trabajo
Comienza por SequencePlugin.ts y después lee src/Cell.ts, src/error-message.ts y CellValueExporter para rastrear cómo se definen, se muestran en mensajes y se exportan los tipos de error. Identifica otras funciones de array que actualmente devuelven #NUM! para las condiciones indicadas, actualiza las pruebas correspondientes y confirma que se emite #CALC! para esos casos sin cambiar ningún otro comportamiento de error.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Severity: Low (backlog)
HyperFormula's ErrorType enum does not include CALC. Excel uses #CALC! for several conditions:
- Zero dimensions in array functions (
=SEQUENCE(0),=SEQUENCE(1,0)) - Empty array results
- Certain spill-related errors (separate from
#SPILL!)
Currently these are mapped to ErrorType.NUM (#NUM!), which is the closest semantic match but diverges from Excel.
Known affected locations
SequencePlugin.ts— zero dimension check returns#NUM!instead of#CALC!- Potentially other array functions
Scope
Adding ErrorType.CALC would require:
- New enum value in
src/Cell.ts - New error message in
src/error-message.ts - Export handling in
CellValueExporter - Updates to functions currently returning
#NUM!where#CALC!is correct - Test updates
Impact
Cosmetic divergence from Excel. Does not affect functionality — formulas still error correctly, just with a different error type. Low priority unless Excel compatibility audit (2026 roadmap) prioritizes exact error type matching.
Found during SEQUENCE implementation (PR #1645).
- Lenguaje dominante
- TypeScript
- Estrellas
- 2.8k
- Forks
- 175
- Merge medio
- 1 d 20 h
- PR fusionados (30 d)
- 17
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una 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 handsontable/hyperformula
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
handsontable/hyperformula#1803 ·
Los mantenedores suelen responder en 1 día
-
numberToSimpleDate returns day 0 for 31 December of some years when leapYear1900 is truePosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
handsontable/hyperformula#1793 ·
Los mantenedores suelen responder en 1 día
-
Bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
handsontable/hyperformula#1745 ·
Los mantenedores suelen responder en 1 día
-
Bug Impact: Low
Dificultad 1/5 1-3 horas Aptitud para principiantes 68/100
handsontable/hyperformula#1641 ·
Los mantenedores suelen responder en 1 día
-
Bug
Dificultad 5/5 Más de una semana Aptitud para principiantes 22/100
handsontable/hyperformula#1825 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de handsontable/hyperformula
Issues similares
-
Report: &TV InternationalAbiertocheck:passed streams:remove
Dificultad 1/5 Menos de una hora Aptitud para principiantes 67/100
Los mantenedores suelen responder en 1 día
-
bug priority-p1
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
-
beginner blocked
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
hiero-ledger/hiero-sdk-js#4670 ·
Los mantenedores suelen responder en 1 día
-
[Exploratory] Expense - 2 selected drop-down is shown twice when selecting hold from more option.AbiertoMonthly Not a priority
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Expensify/App#106080 · 1 comentario ·
Los mantenedores suelen responder en 1 día