Une toolchain Swift sur Linux, pour ne plus ecrire de dates a l'aveugle
J'ai ecrit `asOf(_:)` hier sans pouvoir le compiler. Swift 6.3 est desormais
installe sur la machine de dev (Debian 12 x86_64) et `tests-linux/` compile
et teste la logique PURE des widgets.
10 tests, dont 5 verifies rouges en neutralisant la peremption. Ils couvrent
la remise a zero, la conservation des objectifs et des zones, le report de la
seance du lendemain, et le passage a l'heure d'hiver du 25 octobre — ou un
`+86400` naif ferait basculer le widget une heure trop tot, la veille au soir.
Les sources du paquet sont des liens symboliques vers les vrais fichiers : le
test porte sur le code livre, pas sur une copie.
⚠️ Ne remplace PAS le build Xcode et ne le remplacera jamais : WidgetKit,
SwiftUI, HealthKit et WatchKit sont absents de Swift pour Linux. Ni l'app, ni
les widgets, ni les vues ne se compilent ici.
This commit is contained in:
21
tests-linux/Package.swift
Normal file
21
tests-linux/Package.swift
Normal file
@@ -0,0 +1,21 @@
|
||||
// swift-tools-version: 6.0
|
||||
//
|
||||
// Banc d'essai Linux pour la logique PURE des widgets.
|
||||
//
|
||||
// ⚠️ **Ceci ne remplace PAS le build Xcode.** WidgetKit, SwiftUI, HealthKit et
|
||||
// WatchKit sont des frameworks Apple, absents de Swift sur Linux : ni les
|
||||
// widgets, ni l'app ne peuvent être compilés ici. Ce paquet ne construit que
|
||||
// les fichiers qui n'importent que Foundation — et c'est précisément là que
|
||||
// vit l'arithmétique de dates où se cachent les décalages d'un jour.
|
||||
//
|
||||
// Les sources sont des LIENS SYMBOLIQUES vers les vrais fichiers : le test
|
||||
// porte sur le code livré, pas sur une copie qui dériverait en silence.
|
||||
import PackageDescription
|
||||
|
||||
let package = Package(
|
||||
name: "CoachModel",
|
||||
targets: [
|
||||
.target(name: "CoachModel"),
|
||||
.testTarget(name: "CoachModelTests", dependencies: ["CoachModel"]),
|
||||
]
|
||||
)
|
||||
Reference in New Issue
Block a user