Skip to content

v15.1.0

Compare
Choose a tag to compare
@dscbot dscbot released this 02 Feb 13:53
· 180 commits to main since this release
f7676b0

[v15.1.0]

Added

  • SqlServerDsc
    • Added a new script analyzer rule to verify that Import-SQLPSModule or Connect-SQL
      (that implicitly calls Import-SQLPSModule) is present in each Get-, Test-,
      and Set-TargetResource function. If neither command is not needed then the
      analyzer rule should be overridden (issue #1683).
    • Added a new pipeline job that runs Script Analyzer on all PowerShell scripts
      in the source folder. The rules are defined by the Script Analyzer settings
      file .vscode\analyzersettings.psd1 (which also the Visual Studio Code
      PowerShell extension uses).
    • Added unit tests and integration tests for SQL Server 2019
      (issue #1310).

Changed

  • SqlServerDsc
    • Suppressed new custom Script Analyzer rule SqlServerDsc.AnalyzerRules\Measure-CommandsNeededToLoadSMO
      for Get-, Test-, and Set-TargetResource functions in the resources.
  • SqlLogin
    • Added functionality to throw exception if an update to the LoginMustChangePassword
      value on an existing SQL Login is attempted. This functionality is not supported
      by referenced, SQL Server Management Object (SMO), libraries and cannot be
      supported directly by this module.
    • Added integration tests to ensure that an added (or updated) SqlLogin can
      connect into a SQL instance once added (or updated).
    • Added integration tests to ensure that the default database connected to by
      a SqlLogin is the same as specified in the resource's DefaultDatabase
      property/parameter.
    • Amended how the interdependent, PasswordExpirationEnabled and PasswordPolicyEnforced
      properties/parameters are updated within the SqlLogin resource - Both values
      are now updated together if either one or both are not currently in the desired
      state. This change avoids exceptions thrown by transitions to valid, combinations
      of these properties that have to transition through an invalid combination (e.g.
      where PasswordExpirationEnabled is $true but PasswordPolicyEnforced is
      $false).
  • SqlSetup
    • Minor refactor due to source code lint errors. The loop what evaluates
      the configuration parameters *FailoverCluster was change to a foreach().

Fixed

  • SqlServerDsc
    • The component gitversion that is used in the pipeline was wrongly
      configured when the repository moved to the new default branch main.
      It no longer throws an error when using newer versions of GitVersion
      (issue #1674).
    • Minor lint errors throughout the repository.
  • SqlLogin
    • Added integration tests to assert LoginPasswordExpirationEnabled,
      LoginPasswordPolicyEnforced and LoginMustChangePassword properties/parameters
      are applied and updated correctly. Similar integration tests also added to ensure
      the password of the SqlLogin is updated if the password within the SqlCredential
      value/object is changed (issue #361,
      issue #1032 and
      issue #1050).
    • Updated SqlLogin, integration tests to make use of amended Wait-ForIdleLcm,
      helper function, -Clear switch usage to remove intermittent, integration
      test failures (issue #1634).
  • SqlRSSetup
    • If parameter SuppressRestart is set to $false the /norestart
      argument is no longer wrongly added (issue #1401).
  • SqlSetup
    • Added/corrected InstallSharedDir, property output when using SQL Server 2019.
  • SqlTraceFlag
  • SqlDatabaseUser
    • Added parameter ServerName to the call of Assert-SqlLogin.
      @PSBoundParameters doesn't capture the default value of ServerName
      when it is not explicitly set by the caller (issue #1647).