Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package terragrunt for openSUSE:Factory checked in at 2026-02-19 14:24:31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/terragrunt (Old) and /work/SRC/openSUSE:Factory/.terragrunt.new.1977 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "terragrunt" Thu Feb 19 14:24:31 2026 rev:286 rq:1333876 version:0.99.3 Changes: -------- --- /work/SRC/openSUSE:Factory/terragrunt/terragrunt.changes 2026-02-16 13:17:13.905786528 +0100 +++ /work/SRC/openSUSE:Factory/.terragrunt.new.1977/terragrunt.changes 2026-02-19 14:25:01.302809756 +0100 @@ -1,0 +2,12 @@ +Thu Feb 19 07:09:42 UTC 2026 - Johannes Kastl <[email protected]> + +- Update to version 0.99.3: + * Bug Fixes + - Over-warning on strict controls prevented + Using --strict-mode resulted in over-warning on completed + controls. Those warnings will no longer appear when using + strict mode. + * What's Changed + - chore: Backport #5501 by @yhakbar in #5566 + +------------------------------------------------------------------- Old: ---- terragrunt-0.99.2.obscpio New: ---- terragrunt-0.99.3.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ terragrunt.spec ++++++ --- /var/tmp/diff_new_pack.CE4dXP/_old 2026-02-19 14:25:07.183053719 +0100 +++ /var/tmp/diff_new_pack.CE4dXP/_new 2026-02-19 14:25:07.183053719 +0100 @@ -17,7 +17,7 @@ Name: terragrunt -Version: 0.99.2 +Version: 0.99.3 Release: 0 Summary: Thin wrapper for Terraform for working with multiple Terraform modules License: MIT ++++++ _service ++++++ --- /var/tmp/diff_new_pack.CE4dXP/_old 2026-02-19 14:25:07.371061519 +0100 +++ /var/tmp/diff_new_pack.CE4dXP/_new 2026-02-19 14:25:07.391062349 +0100 @@ -3,7 +3,7 @@ <param name="url">https://github.com/gruntwork-io/terragrunt</param> <param name="scm">git</param> <param name="exclude">.git</param> - <param name="revision">v0.99.2</param> + <param name="revision">v0.99.3</param> <param name="versionformat">@PARENT_TAG@</param> <param name="versionrewrite-pattern">v(.*)</param> <param name="changesgenerate">enable</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.CE4dXP/_old 2026-02-19 14:25:07.471065668 +0100 +++ /var/tmp/diff_new_pack.CE4dXP/_new 2026-02-19 14:25:07.503066996 +0100 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/gruntwork-io/terragrunt</param> - <param name="changesrevision">f84675a8a1746a4e16a9725e87492b0bf6b01928</param></service></servicedata> + <param name="changesrevision">0a6a0eccc8ffb23cf7879888e1dfcecd12506423</param></service></servicedata> (No newline at EOF) ++++++ terragrunt-0.99.2.obscpio -> terragrunt-0.99.3.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.99.2/internal/cli/flags/global/flags.go new/terragrunt-0.99.3/internal/cli/flags/global/flags.go --- old/terragrunt-0.99.2/internal/cli/flags/global/flags.go 2026-02-13 15:51:17.000000000 +0100 +++ new/terragrunt-0.99.3/internal/cli/flags/global/flags.go 2026-02-18 21:14:42.000000000 +0100 @@ -224,8 +224,9 @@ Setter: func(val string) error { return opts.StrictControls.EnableControl(val) }, - Action: func(_ context.Context, _ *clihelper.Context, _ []string) error { + Action: func(_ context.Context, _ *clihelper.Context, vals []string) error { opts.StrictControls.LogEnabled(l) + opts.StrictControls.LogCompletedControls(l, vals) return nil }, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.99.2/internal/strict/control.go new/terragrunt-0.99.3/internal/strict/control.go --- old/terragrunt-0.99.2/internal/strict/control.go 2026-02-13 15:51:17.000000000 +0100 +++ new/terragrunt-0.99.3/internal/strict/control.go 2026-02-18 21:14:42.000000000 +0100 @@ -195,15 +195,18 @@ return NewInvalidControlNameError(ctrls.FilterByStatus(ActiveStatus).Names()) } -// LogEnabled logs the control names that are enabled and have completed Status. +// LogEnabled logs the control names that are enabled. func (ctrls Controls) LogEnabled(logger log.Logger) { enabledControls := ctrls.FilterByEnabled() if len(enabledControls) > 0 { logger.Debugf("Enabled strict control(s): %s", enabledControls.Names()) } +} - completedControls := enabledControls.FilterByStatus(CompletedStatus) +// LogCompletedControls warns about any completed controls from the given explicitly requested names. +func (ctrls Controls) LogCompletedControls(logger log.Logger, requestedNames []string) { + completedControls := ctrls.FilterByNames(requestedNames...).FilterByStatus(CompletedStatus) if len(completedControls) > 0 { logger.Warnf(CompletedControlsFmt, completedControls.Names().String()) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/terragrunt-0.99.2/internal/strict/control_test.go new/terragrunt-0.99.3/internal/strict/control_test.go --- old/terragrunt-0.99.2/internal/strict/control_test.go 2026-02-13 15:51:17.000000000 +0100 +++ new/terragrunt-0.99.3/internal/strict/control_test.go 2026-02-18 21:14:42.000000000 +0100 @@ -216,7 +216,16 @@ logger, output := newTestLogger() + var requestedNames []string + + for _, ec := range tc.enableControls { + if ec.expectedErr == nil { + requestedNames = append(requestedNames, ec.controlName) + } + } + controls.LogEnabled(logger) + controls.LogCompletedControls(logger, requestedNames) if tc.expectedCompletedMsg == "" { assert.Empty(t, output.String()) @@ -280,6 +289,57 @@ } } +func TestLogCompletedControlsWithParentAndCompletedSubcontrol(t *testing.T) { + t.Parallel() + + // Regression test for #5293: enabling a parent control that has a completed + // subcontrol should NOT warn, because the user only explicitly requested the parent. + parentCtrl := &controls.Control{ + Name: "parent-ctrl", + Subcontrols: strict.Controls{ + &controls.Control{ + Name: "completed-sub", + Status: strict.CompletedStatus, + }, + }, + } + + ctrls := strict.Controls{parentCtrl} + + // Enable the parent (which recursively enables subcontrols). + err := ctrls.EnableControl("parent-ctrl") + require.NoError(t, err) + + logger, output := newTestLogger() + + // Only "parent-ctrl" was explicitly requested. + ctrls.LogCompletedControls(logger, []string{"parent-ctrl"}) + + assert.Empty(t, output.String(), "should not warn about implicitly enabled completed subcontrols") +} + +func TestLogCompletedControlsWithExplicitlyRequestedCompletedControl(t *testing.T) { + t.Parallel() + + // Explicitly requesting a completed control SHOULD produce a warning. + completedCtrl := &controls.Control{ + Name: "completed-ctrl", + Status: strict.CompletedStatus, + } + + ctrls := strict.Controls{completedCtrl} + + err := ctrls.EnableControl("completed-ctrl") + require.NoError(t, err) + + logger, output := newTestLogger() + + ctrls.LogCompletedControls(logger, []string{"completed-ctrl"}) + + expectedMsg := fmt.Sprintf(strict.CompletedControlsFmt, "completed-ctrl") + assert.Contains(t, strings.TrimSpace(output.String()), expectedMsg) +} + func TestEvaluateControl(t *testing.T) { t.Parallel() ++++++ terragrunt.obsinfo ++++++ --- /var/tmp/diff_new_pack.CE4dXP/_old 2026-02-19 14:25:12.443271958 +0100 +++ /var/tmp/diff_new_pack.CE4dXP/_new 2026-02-19 14:25:12.451272290 +0100 @@ -1,5 +1,5 @@ name: terragrunt -version: 0.99.2 -mtime: 1770994277 -commit: f84675a8a1746a4e16a9725e87492b0bf6b01928 +version: 0.99.3 +mtime: 1771445682 +commit: 0a6a0eccc8ffb23cf7879888e1dfcecd12506423 ++++++ vendor.tar.gz ++++++ /work/SRC/openSUSE:Factory/terragrunt/vendor.tar.gz /work/SRC/openSUSE:Factory/.terragrunt.new.1977/vendor.tar.gz differ: char 13, line 1
