# Fehlerbehebung

LLMS index: [llms.txt](/v1.2.4.0/llms.txt)

---

Verwende diese Anleitung, wenn PackageUpdateInfo keine erwarteten Ergebnisse liefert, Prüfungen überspringt oder beim Import und Export von Daten fehlschlägt.

## Erste Schritte: Aktionsfähige Diagnosen

Führe den Befehl mit ausführlicher Ausgabe aus:

```powershell
Get-PackageUpdateInfo -Verbose
```

Einstellungen und Regeln prüfen:

```powershell
Get-PackageUpdateSetting
Get-PackageUpdateRule -IncludeDefaultRule
```

## Wird übersprungen unerwartet?

Symptom:

- Du siehst eine Warnung, dass Update-Prüfungen übersprungen werden, weil das Prüfintervall
  noch nicht abgelaufen ist.

Ursache:

- `UpdateCheckInterval` und das aktuelle `LastCheck` oder `LastSuccessfulCheck` verhindern eine neue Online-Prüfung.

Lösung:

```powershell
Get-PackageUpdateInfo -Force
```

Oder das Intervall verkürzen:

```powershell
Set-PackageUpdateSetting -UpdateCheckInterval (New-TimeSpan -Minutes 30)
```

## Konfigurationsdatei fehlt oder ist beschädigt

Symptom:

- `Get-PackageUpdateSetting` warnt, dass die Modulkonfigurationsdatei nicht
  gefunden wurde, und wirft dann einen Fehler.

Ursache:

- Der Pfad zur Konfigurationsdatei existiert nicht oder enthält ungültiges JSON.

Lösung:

```powershell
Set-PackageUpdateSetting -Reset
Get-PackageUpdateSetting
```

## Keine Module werden zurückgegeben

Symptom:

- `Get-PackageUpdateInfo` liefert nichts, obwohl Module installiert sind.

Häufige Ursachen:

- Include- und Exclude-Regeln filtern alle Module heraus.
- `-CurrentUser` oder `-AllUsers` filtern die erwarteten Module aus.
- Repository-Filterung schließt relevante Module aus.

Schritte zur Lösung:

```powershell
Get-PackageUpdateRule -IncludeDefaultRule
Get-PackageUpdateInfo -Force
Get-PackageUpdateInfo -CurrentUser -Force
Get-PackageUpdateInfo -AllUsers -Force
```

## Export schlägt wegen Pfadfehlern fehl

Symptom:

- Export meldet ungültigen Pfad oder Verzeichnisprobleme.

Ursache:

- `-Path` zeigt auf ein Verzeichnis oder einen nicht existierenden Ort ohne `-Force`.

Lösung:

```powershell
Get-PackageUpdateInfo | Export-PackageUpdateInfo -Path "$HOME\PackageUpdateInfo\updates.xml" -Force
```

## Import liefert keine Daten

Symptom:

- `Import-PackageUpdateInfo` liefert nichts.

Häufige Ursachen:

- Die Datei ist leer oder zu klein, um Datensätze zu enthalten.
- `-InputFormat` stimmt nicht mit dem exportierten Format überein.
- Falscher Dateipfad für die aktuelle Laufzeit und Edition.

Lösung:

```powershell
Import-PackageUpdateInfo -InputFormat XML -Verbose
Import-PackageUpdateInfo -Path "$HOME\PackageUpdateInfo\updates.json" -InputFormat JSON
```

## Toast-Benachrichtigungen erscheinen nicht

Symptom:

- `-ShowToastNotification` wird verwendet, aber kein Toast erscheint.

Häufige Ursachen:

- BurntToast ist nicht installiert.
- Die Host-Plattform unterstützt keine Windows-Toast-Benachrichtigungen.
- Kein Modul im Ergebnis hat `NeedUpdate = $true`.

Lösung:

```powershell
Install-Module BurntToast -Scope CurrentUser
Get-PackageUpdateInfo -ShowOnlyNeededUpdate -ShowToastNotification -Force
```

## Regeln können nicht hinzugefügt oder geändert werden

Symptom:

- Das Hinzufügen einer Regel schlägt mit doppelter Id, include oder exclude fehl.

Ursache:

- Bereits vorhandene benutzerdefinierte Regeln enthalten die gleichen Identifikatoren oder Muster.

Lösung:

```powershell
Get-PackageUpdateRule
Add-PackageUpdateRule -IncludeModuleForChecking "MyModule.*"
Set-PackageUpdateRule -Id 1 -ReportChangeOnRevision $false
Remove-PackageUpdateRule -Id 1
```

## Repository- und Netzwerkprobleme

Symptom:

- Online-Versionenabfrage schlägt fehl oder ist unvollständig.

Häufige Ursachen:

- Repository ist nicht registriert oder nicht erreichbar.
- Vorübergehende Netzwerkprobleme.

Lösung:

```powershell
Get-PSRepository
Find-Module PackageUpdateInfo -Repository PSGallery
Get-PackageUpdateInfo -Repository PSGallery -Force
```

## Wiederherstellungsablauf

Wenn das Verhalten weiterhin inkonsistent ist, nutze diese Reset-Sequenz:

```powershell
Set-PackageUpdateSetting -Reset
Get-PackageUpdateInfo -Force | Export-PackageUpdateInfo
Import-PackageUpdateInfo
```
