Run the iOS test app in Release mode on CI

Abierto
#415 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
55/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
cpp, github-actions, ios, react-native, typescript

Línea de trabajo

Comienza con el job test-ios en .github/workflows/check.yml y ejecuta pnpm run test:ios:allTests --mode Release contra apps/test-app para capturar el fallo actual. Inspecciona packages/host/src/node/prebuilds/apple.ts si el fallo implica XCFrameworks precompilados. Se considera completado cuando la invocación de pruebas de iOS en Release se ejecuta correctamente en CI.

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

Descripción

Apple 🍎 CI

Tracking the TODO in the test-ios job of .github/workflows/check.yml.

The iOS integration tests only ever run in the default (Debug) configuration; the Release invocation is present but commented out:

https://github.com/callstackincubator/react-native-node-api/blob/29a527d87fa8cb965b0048b1b4c1cff2b0eab281/.github/workflows/check.yml#L236-L240

Debug-only coverage leaves the configuration users actually ship untested. Release differs in ways that matter for this project specifically: optimisation and dead-stripping can drop symbols the addon loader looks up at runtime, NDEBUG removes the asserts that the C++ host relies on for its invariants, and code-signing/bitcode behaviour differs for the dynamic libraries inside the prebuilt XCFrameworks.

The TODO says "when it works", so the first step is to find out how it currently fails — run pnpm run test:ios:allTests --mode Release locally against apps/test-app and capture the failure. Depending on what it is, the fix may live in the prebuild pipeline (packages/host/src/node/prebuilds/apple.ts) rather than in the workflow.

Related: Logger.cpp unconditionally emits debug logs, which a Release run would surface (see the "disable debug logging in release builds" issue).

Lenguaje dominante
TypeScript
Estrellas
188
Forks
10
Merge medio
2 d 17 h
PR fusionados (30 d)
3

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

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 callstackincubator/react-native-node-api

Todos los issues de callstackincubator/react-native-node-api

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.