Add module version metadata to binary distributions
Los mantenedores suelen responder en 1 día
Ya se ha fusionado un pull request relacionado.
- #1231 de @Kyle-Ye — fusionado
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- swift
- Área
- build-system, release
Línea de trabajo
Start with the build settings that publish OpenSwiftUI and OpenSwiftUICore, tracing how SWIFT_USER_MODULE_VERSION is set and how -user-module-version reaches the generated .swiftinterface files. Then inspect the distribution validation path for the iOS, macOS and visionOS slices, and compare it with the standalone DemoKit experiment. Done means version checks pass at and below 0.25.0, fail above it, and the docs explain _underlyingVersion and unversioned-module behavior.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Add module version metadata to published OpenSwiftUI binaries so consumers can check a minimum release at compile time:
#if canImport(OpenSwiftUI, _version: 0.25.0)
import OpenSwiftUI
#endif
Scope
- Set
SWIFT_USER_MODULE_VERSIONfrom the release version for the OpenSwiftUI and OpenSwiftUICore targets. - Preserve
-user-module-versionin the public.swiftinterfacefiles for every published platform slice. - Keep dependency framework versions independent of the OpenSwiftUI release version.
- Document the use of
_versionand the behavior of older binaries without module version metadata.
Acceptance criteria
- Version checks succeed for the published version and lower versions, and fail for higher versions.
- The checks work when consumers load only the public textual interfaces on iOS, macOS, and visionOS.
- Distribution validation checks both the expected version and an upper boundary.
- Documentation explains that
_underlyingVersionchecks the underlying Clang module, and that an unversioned Swift module warns and ignores the requested version rather than selecting the false branch.
A standalone DemoKit experiment has verified the build setting, version boundaries, and public interface behavior across the five Apple SDK slices.
- Lenguaje dominante
- Swift
- Estrellas
- 2.5k
- Forks
- 84
- Merge medio
- 4 h 55 min
- PR fusionados (30 d)
- 73
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 OpenSwiftUIProject/OpenSwiftUI
-
Implement PickerAbiertoarea: data-flow area: view type: feature
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
OpenSwiftUIProject/OpenSwiftUI#1225 ·
Los mantenedores suelen responder en 1 día
-
Add Shader supportAbiertoarea: graphics area: rendering type: feature
Dificultad 5/5 Más de una semana Aptitud para principiantes 18/100
OpenSwiftUIProject/OpenSwiftUI#1223 · 3 reacciones ·
Los mantenedores suelen responder en 1 día
-
Add MeshGradient supportAbiertoarea: graphics area: rendering type: feature
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
OpenSwiftUIProject/OpenSwiftUI#1222 ·
Los mantenedores suelen responder en 1 día
-
Implement ImageRendererAbiertoarea: rendering type: feature
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
OpenSwiftUIProject/OpenSwiftUI#1214 · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
Implement content transitionsAbiertoarea: animation area: rendering type: feature
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
OpenSwiftUIProject/OpenSwiftUI#1206 ·
Los mantenedores suelen responder en 1 día
Todos los issues de OpenSwiftUIProject/OpenSwiftUI
Issues similares
-
Seed a JRNYAx price before the last close so asset-detail S1.3 doesn't fail from 08:00Z to the openAbiertobug tests
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
lognorman20/monaco#7231 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 5 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Provenance-Emu/SkinKit#42 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
lwouis/alt-tab-macos#6154 ·
-
bug mac アプリ: コード アプリ: チャット 優先: 中 要トリアージ
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
yksr-melt/Meltype#1346 · 2 comentarios ·
Los mantenedores suelen responder en 1 día