github cloudposse/atmos v1.165.3

one day ago
Update `overrides` section behavior in imports and inline @aknysh (#1122)

what

  • Update overrides section behavior in imports and inline
  • Add acceptance tests for the overrides section for many scenarios (overrides at the stack level, team level, inline and in imports)
  • Update docs
  • Update Go to 1.24.0 and fix some issues in the code (1.24.0 is more strict about the Go format functions always requiring the format as the first argument)
  • Add unit tests

why

  • Importing the overrides did not cover all possible scenarios (e.g. when importing the overrides for the imported components, the inline overrides for the same stack were not taken into account). This PR fixes this and adds acceptance tests for all scenarios
  • Update the Share Data Between Components doc to describe how the !terraform.output YAML function can (and should be) used to to read the outputs (remote state) of components directly in Atmos stack manifests
Downgrade Lint Errors to Warnings @osterman (#1132)

What

  • Downgrade some common lint errors to warnings.
  • Change reviewdog to only report annotations
  • Add a lint-failures label if it failed linting

Why

  • Strict enforcement significantly increase scope on some PRs
  • We need incremental improvements to code quality rather than blocking progress.
  • Warnings should still be addressed, but they shouldn't block PR merges, if necessary
  • Instead of lowering the bar, we keep the bar high informing developers of best practices.
Warn on Excessive Function Returns & `//nolint` Usage @osterman (#1131) ## What - Warn when functions return more than 2 values (we should be returning objects). - Warn when using lint ignore (`//nolint`), so that we draw attention to it.

Why

  • Objects have named properties, making it easier to understand what everything is. We've seen functions returning 7+ values, which is impractical and error-prone.
  • Many times when //nolint is used, there’s a better way to address the issue:
    • The lint rule might be too strict.
    • The developer might not realize there's a straightforward solution that avoids ignoring the rule.
    • The rule may have been misunderstood.
    • The ignore might have been intended as temporary but was never revisited.

Don't miss a new atmos release

NewReleases is sending notifications on new releases.