Skip to content

Releases: jantari/LSUClient

Version 1.7.0

05 Mar 01:03
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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

Version 1.5.2

10 Mar 21:02
Compare
Choose a tag to compare

Changelog since 1.5.1

  • Print warnings for long-running downloads in Save-LSUpdate
  • Add support for _Coreq (package inter-dependency) tests [fixes #58]
  • Fix -ProxyUseDefaultCredentials parameter not being passed correctly [#70]
  • Fix W10 AMD Chipset Driver not being able to install on ThinkStation P620 [#57]

Version 1.5.1

21 Dec 17:33
Compare
Choose a tag to compare

Changelog since 1.5.0

  • Fix an error during Get-LSUpdate search on ThinkPad L450 [#63]
  • Fix some packages repeatedly being returned even after they are installed [#59]
  • Support for _Firmware tests and comparing hexadecimal version numbers [#61, #64]
  • Fix a logic flaw in version comparisons that could lead to inaccurate results in rare cases [#67]
  • More detailed debug output during _Driver tests

Version 1.5.0

31 Oct 22:29
Compare
Choose a tag to compare

Changelog since 1.4.2

  • It is now possible to configure maximum runtime limits for external processes, including installers
    Some limits are set by default. Read more about this feature and how to use it on the docs site here.
  • New cmdlets Get-LSUClientConfiguration and Set-LSUClientConfiguration
    These two cmdlets are used to manage "global" options that may affect multiple LSUClient operations.
    For example, instead of passing a -Proxy to every cmdlet individually, you may run Set-LSUClientConfiguration -Proxy once and all future invocations of Get-LSUpdate, Save-LSUpdate and Install-LSUpdate in the same PowerShell session will default to use that proxy.
  • Look for executables on system PATH when they can't be found in the packages files [#57]
  • Move all P/Invoke code to its own LSUClient namespace to reduce chance of name collision with other modules