Files
xtremobile/pubspec.yaml
T
Claude 93d5741c0c fix(ios): épingle device_info_plus 12.3.0 (SDK Xcode 26.1 requis en 12.4.0)
Deuxième run du workflow Build iOS : volume_controller passe, la compilation
s'arrête maintenant sur device_info_plus 12.4.0 :

  No visible @interface for 'NSProcessInfo' declares the selector
  'isiOSAppOnVision'

Le plugin appelle cette propriété derrière un `@available(iOS 26.1, *)`, garde
d'exécution qui n'évite pas la compilation : le symbole doit exister dans les
en-têtes, donc le SDK d'Xcode 26.1 est requis alors que le runner macOS en
embarque un plus ancien. La 12.3.0 est la dernière version sans cet appel.

Même cause de fond que l'épinglage précédent : faute de pubspec.lock versionné,
la CI résout les plugins à leur dernière version, laquelle vise un outillage
Apple plus récent que le Flutter 3.35.3 et l'Xcode des workflows.

Un balayage des sources natives iOS de l'ensemble des plugins du graphe (API
`@available(iOS >= 18)` et API scene de Flutter 3.38) ne remonte que ces deux
paquets ; les douze autres compilent en l'état.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WoXgHivbAphDk9ArgKDg8Q
2026-09-09 16:58:26 +00:00

95 lines
2.4 KiB
YAML

name: xtremobile
description: High-performance IPTV application (Android, iPhone, iPad) with Xtream Codes API
publish_to: 'none'
version: 1.7.1+15
environment:
sdk: '>=3.0.0 <4.0.0'
dependencies:
flutter:
sdk: flutter
# State Management
flutter_riverpod: ^2.6.1
riverpod_annotation: ^2.6.1
# Local Database (Web IndexedDB)
hive: ^2.2.3
hive_flutter: ^1.1.0
# Networking
dio: ^5.7.0
dio_cache_interceptor: ^3.5.1
dio_cache_interceptor_hive_store: ^3.2.2
http: ^1.2.2
# EPG (XMLTV fallback parsing)
xml: ^6.5.0
# Routing
go_router: ^13.2.5
# Video Player (FFmpeg-based for full codec support)
media_kit: ^1.1.11
media_kit_video: ^1.2.5
media_kit_libs_video: ^1.0.5
# Épinglé : tiré par media_kit_video (^3.0.2). À partir de 3.4.2, le plugin
# iOS utilise FlutterSceneLifeCycleDelegate / addSceneDelegate, des API
# apparues dans Flutter 3.38, sans relever sa contrainte `flutter:` — pub le
# sélectionne donc et la compilation Swift échoue sur le Flutter 3.35.3 des
# workflows. 3.4.1 est la dernière version sans ces appels.
# À relâcher le jour où les workflows passeront à Flutter >= 3.38.
volume_controller: 3.4.1
# UI Components
google_fonts: ^6.2.1
cached_network_image: ^3.3.1
# Security
crypto: ^3.0.3
uuid: ^4.4.0
# Utilities
intl: ^0.19.0
equatable: ^2.0.5
shared_preferences: ^2.3.2
path_provider: ^2.1.5
video_player: ^2.10.1
wakelock_plus: ^1.2.8
# Épinglé : la 12.4.0 appelle NSProcessInfo.isiOSAppOnVision derrière un
# `@available(iOS 26.1, *)`, ce qui exige le SDK d'Xcode 26.1 — plus récent
# que celui du runner macOS. 12.3.0 est la dernière version sans cet appel.
# À relâcher le jour où le workflow iOS utilisera un Xcode >= 26.1.
device_info_plus: 12.3.0
shelf_router: ^1.1.4
shelf_static: ^1.1.3
flutter_cache_manager: ^3.4.1
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^3.0.2
flutter_launcher_icons: ^0.14.3
# Code Generation
build_runner: ^2.4.13
riverpod_generator: ^2.4.0
hive_generator: ^2.0.1
flutter_launcher_icons:
android: true
ios: true
image_path: "assets/images/logo_xtremflow.png"
adaptive_icon_background: "#1a1a2e"
adaptive_icon_foreground: "assets/images/logo_xtremflow.png"
# iOS refuse une icône comportant un canal alpha.
remove_alpha_ios: true
flutter:
uses-material-design: true
assets:
- assets/images/