Tema: error-handling
-
Manejo de errores en PowerShell para scripts de administración: errores terminantes, $ErrorActionPreference y $LASTEXITCODE
PowerShell distingue dos clases de errores en un script: los terminantes, que try/catch puede interceptar, y los no terminantes, que solo $ErrorActionPreference o -ErrorAction pueden convertir en una detención. Una tercera clase, los fallos de ejecutables nativos, no sigue ninguno de esos caminos salvo que se active $PSNativeCommandUseErrorActionPreference (PowerShell 7.4+, experimental en 7.3).
-
Comprobación de si un envoltorio (wrapper) de tarea ocultó el fallo de su comando interno
Determinar si una tarea reportada como exitosa propagó realmente el resultado del compilador, del ejecutor de pruebas o del comando de migración del que depende ese éxito.
-
Manejo de errores en Go: envolver con %w, errors.Is y errors.As
Las funciones de Go devuelven los errores como valores ordinarios; se añade contexto con fmt.Errorf y el verbo %w para que el original siga siendo accesible, y después se comprueba la cadena con errors.Is para los valores centinela y errors.As (o la versión genérica errors.AsType) para los tipos, en lugar de comparar cadenas o usar ==.
-
Manejo de errores en Promises y async/await
Una función async convierte un throw en un rechazo, y await lo vuelve a lanzar; cada rechazo necesita un responsable. Envuelva solo lo que pueda recuperar, nunca deje una promesa sin gestionar, use allSettled cuando un fallo parcial sea aceptable y registre un manejador unhandledrejection como último recurso.
-
Pruebas de las rutas de error y los timeouts en llamadas salientes
Enumera las clases de fallo de cada dependencia (rechazo, reinicio de conexión, timeout de conexión o de lectura, 5xx, 429, cuerpo malformado o lento), inyecta cada una con un doble de prueba en las pruebas unitarias y con un proxy que inyecta fallos en las de integración, y verifica el comportamiento prometido: intentos, backoff, errores tipados, limpieza y ausencia de escrituras parciales.
-
Result, Option y el operador ?: manejo de errores en Rust
Rust no tiene excepciones ni null: las operaciones que pueden fallar devuelven Result<T, E>, los valores ausentes son Option<T>, y ambos son enums que el compilador obliga a tratar con match. El operador ? devuelve de forma anticipada Err o None y convierte los tipos de error mediante From; ignorar un Result genera una advertencia del compilador porque el tipo está marcado con #[must_use].
Legible por máquina: JSON