Le script etait envoye sur stdin de `powershell -Command -`, qui analyse l'entree ligne par ligne. Le `}` fermant le try/catch n'etait suivi d'aucun saut de ligne : le parseur gardait l'instruction incomplete en attente et la jetait a la fermeture de stdin. PowerShell rendait la main avec le code 0 sans avoir appele Add-Computer, et l'utilisateur ne voyait qu'un « echec de la jointure (code retour 0) » sans explication. - Transmission du script d'un seul bloc via `-EncodedCommand` (base64 UTF-16LE), ce qui supprime toute analyse ligne par ligne et propage correctement les codes de sortie. Le mot de passe reste hors de la ligne de commande : il ne transite que par l'environnement du sous-processus. - Report de la sortie brute de PowerShell quand aucun marqueur n'est trouve, pour qu'un echec inattendu reste diagnosticable. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
49 lines
2.9 KiB
Markdown
49 lines
2.9 KiB
Markdown
# Changelog
|
|
|
|
## [Non publié]
|
|
|
|
### Fixed
|
|
- La jointure de domaine sous Windows échouait sans aucun message, avec un code
|
|
retour 0. Le script PowerShell était transmis sur l'entrée standard de
|
|
`powershell -Command -`, qui analyse stdin ligne par ligne : le bloc
|
|
`try`/`catch` final, dépourvu de saut de ligne terminal, restait en attente
|
|
dans le parseur et n'était jamais exécuté. PowerShell rendait donc la main
|
|
sans avoir tenté la jointure. Le script est désormais transmis d'un bloc via
|
|
`-EncodedCommand`.
|
|
- En l'absence de marqueur de succès comme d'échec, le message d'erreur se
|
|
réduisait à « code retour 0 », impossible à diagnostiquer. La sortie brute de
|
|
PowerShell est maintenant reportée à l'utilisateur (le mot de passe ne
|
|
transitant que par l'environnement, il n'y apparaît jamais).
|
|
|
|
## [0.1.3] - 2026-09-08
|
|
|
|
### Fixed
|
|
- Le binaire Windows produit sous Wine ne démarrait pas (« could not initialize
|
|
Qt platform plugin "windows" ») : le hook PySide6 de PyInstaller importe
|
|
QtCore pour localiser les plugins Qt, or Qt 6.10+ lie `Qt6Core.dll` à l'ICU
|
|
de Windows (`icuuc.dll`), absent de Wine. L'import échouait et aucun plugin
|
|
n'était embarqué. La compilation Windows épingle désormais `PySide6<6.10` et
|
|
vérifie explicitement l'import de PySide6 puis la présence de `qwindows.dll`.
|
|
|
|
### Added
|
|
- `Makefile` avec aide auto-documentée par catégories (`make help`).
|
|
- `packaging/build_windows_wine.sh` : production du `.exe` Windows depuis Linux.
|
|
- `README.md`.
|
|
- `make publish` : pousse branche et tags vers tous les dépôts Gitea configurés.
|
|
|
|
## [0.1.2] - 2026-09-04
|
|
|
|
### Changed
|
|
- Recompilation du binaire Linux (aucun changement fonctionnel depuis la 0.1.1).
|
|
|
|
## [0.1.1] - 2026-09-04
|
|
|
|
### Added
|
|
- Diagnostic réseau complet pour la jointure Active Directory : résolution DNS, enregistrements SRV (LDAP/Kerberos), ping des contrôleurs de domaine, test des ports AD (53/88/389/445/464/636/3268), synchronisation NTP, présence des outils requis.
|
|
- Jointure de domaine via `realmd` sous Linux et PowerShell `Add-Computer` sous Windows, avec bascule automatique de backend selon la plateforme.
|
|
- Installation automatique des prérequis Linux manquants (`apt-get install realmd sssd adcli samba-common-bin packagekit`), déclenchable en un clic ou via la CLI.
|
|
- Interface graphique PySide6 avec trois onglets : Diagnostic réseau, Rejoindre le domaine, À propos.
|
|
- Interface en ligne de commande (`diagnose`, `join`, `install-prereqs`) fonctionnant sans dépendance à PySide6, avec sortie colorée (détection tty, `NO_COLOR`/`FORCE_COLOR`).
|
|
- Scripts de packaging PyInstaller pour produire des binaires autonomes Linux et Windows (`packaging/build_linux.sh`, `packaging/build_windows.bat`).
|
|
- Mot de passe jamais transmis en argument de ligne de commande (toujours via stdin ou variable d'environnement du sous-processus) pour ne pas apparaître dans la liste des processus.
|