Skip to content

Releases: jantari/LSUClient

Version 1.8.1

10 Apr 22:39

Choose a tag to compare

Changelog since 1.8.0

  • Get-LSUpdate can now work in Azure App Service and on Linux [#133]
  • Disallow paths with spaces for Path parameter of Save-LSUpdate, Expand-LSUpdate and Install-LSUpdate [#134].
    Paths with spaces never worked correctly for Install-LSUpdate due to the package installers and their arguments as supplied by Lenovo not accounting for them. If you must store installers in a path containing spaces consider creating a symlink to it in a path without spaces and passing that to LSUClient.

Version 1.8.0

12 Oct 22:20

Choose a tag to compare

Changelog since 1.7.1

  • Relative paths in self-hosted package repositories are now always relative to the repository or package root [#122]
    This change only affects users of self-hosted package repositories who are pointing LSUClient to the repository via a filesystem path. A detailed explanation of the new (and old) behavior is available here.

Version 1.7.1

23 Apr 22:02

Choose a tag to compare

Changelog since 1.7.0

  • Support more types of _RegistryKeyValue tests [#115]
  • Try to compare irregular version numbers [#115]

Version 1.7.0

05 Mar 01:03

Choose a tag to compare

Changelog since 1.6.2

  • Make the previously internal function Expand-LSUpdate public [#109]
  • Expose the "Status" of packages from a custom repository managed with Update Retriever in a new Status property [#113]
  • Updates that have their status set to "Hidden" will no longer be returned [#113]

Version 1.6.2

23 Jan 18:25

Choose a tag to compare

Changelog since 1.6.1

  • Fix MCUFWRevCheck.exe and possibly other commands hanging [#103]
  • Really fix #99 (error on multi-socket systems) this time
  • Speed up package dependency (IsApplicable and IsInstalled) tests in some cases

Version 1.6.1

04 Dec 18:49

Choose a tag to compare

Changelog since 1.6.0

  • Handle a Join-Path error in PowerShell 7 [#96]
  • Fix an error when running Get-LSUpdate on a machine with multiple CPUs [#99]
  • Print HTTP errors (if any) when no packages could be retrieved from a repository.
    This makes it easier to find the cause of the No packages for computer model 'xxxx' could be retrieved from repository error in cases where you have connectivity issues.

Version 1.6.0

31 Jul 17:15

Choose a tag to compare

Changelog since 1.5.5

  • Manual override/spoofing of computer info with the new -MachineCharacteristicsOverride parameter on Get-LSUpdate [#92]
    This new feature allows you to override data about the computer that LSUClient uses to evaluate packages. For example, you could use it to retrieve the list of updates as if the computer were running Windows 10, even when it is really running Windows 11.
  • Save-LSUpdate and Install-LSUpdate now accept deserialized LenovoPackage objects (exported and imported to/from Clixml) [#78]
  • Handle download errors inside internal Save-PackageFile function to make them respect ErrorAction setting [#90]
  • Fix an error when a package with RebootType 1 or 4 that isn't a known kind of BIOS update installed successfully [#94]

Version 1.5.5

25 Apr 16:00

Choose a tag to compare

Changelog since 1.5.4

  • Fix 0 being added as a cancel code to packages that don't have any [#87 - bug was introduced in 1.5.4]

Version 1.5.4

23 Apr 19:40

Choose a tag to compare

Changelog since 1.5.3

  • Fix an error if a ThinkPad BIOS update completes without creating a winuptp.log file [#84]
  • Return "CANCELLED_BY_USER" as the FailureReason if an installer exits with one of its CancelCodes (as defined in the package XML)
  • (with -Debug) print the WindowTitle of non-visible windows as well to help troubleshoot processes stuck in session 0.
    Many deployment tools, RMMs, etc. will run commands and scripts (including LSUClient and its child-processes) from a service in session 0. If a process opens a graphical window there IsWindowVisible always considers them not visible in my tests, but because they can still block a process it's better to include their info in the debug output. I have updated the docs article on diagnosing hanging processes with additional information about this case.

Version 1.5.3

18 Mar 14:10

Choose a tag to compare

Changelog since 1.5.2

  • Handle duplicate package names in one repository without error [#76]
  • Start cmd with a fixed local working directory when getting Windows build [#79]
  • Info on long-running processes is now printed regularly and not just once when they've hit their max runtime
  • More details about long-running processes are gathered to help diagnose them if they are stuck