Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

refactor(toolkit): new message level result #33234

Merged
merged 2 commits into from
Jan 30, 2025

Conversation

mrgrain
Copy link
Contributor

@mrgrain mrgrain commented Jan 30, 2025

Reason for this change

The CDK CLI has certain semantic rules around which messages are written to which output stream (stdout or stderr). These rules are mostly generalizable based on the level of a message. However until now there was one major exception: The main results of a CLI command should always be written to stdout, regardless of level. In practice these messages were always attributed to the info level.

With the recent refactorings towards a CliIoHost, we needed to include an additional property forceStdout on IoMessages. This always was a bad crutch and unintended to stay.

Description of changes

Removal of the forceStdout message property, in favor of a new explicit message level: result.
In terms of priority, a result is lower than an error, but higher than a warn. This is intuitive: A user that wants to ignore all warnings, will still want to see results.

Use result in the CLU and the new Toolkit class.

Describe any new or updated permissions being added

n/a

Description of how you validated changes

Existing and extended tests.

Checklist


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

@mrgrain mrgrain requested a review from a team as a code owner January 30, 2025 10:30
@aws-cdk-automation aws-cdk-automation requested a review from a team January 30, 2025 10:30
@github-actions github-actions bot added the p2 label Jan 30, 2025
@mergify mergify bot added the contribution/core This is a PR that came from AWS. label Jan 30, 2025
Copy link
Collaborator

@aws-cdk-automation aws-cdk-automation left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(This review is outdated)

@mrgrain mrgrain force-pushed the mrgrain/refactor/result-in-favor-of-data branch from bea5564 to 988b621 Compare January 30, 2025 10:34
@mrgrain mrgrain force-pushed the mrgrain/refactor/result-in-favor-of-data branch from 988b621 to 4ec739c Compare January 30, 2025 10:39
Copy link

codecov bot commented Jan 30, 2025

Codecov Report

Attention: Patch coverage is 91.30435% with 2 lines in your changes missing coverage. Please review.

Project coverage is 80.79%. Comparing base (c40a9e2) to head (6c6ee28).
Report is 1 commits behind head on main.

❌ Your patch status has failed because the patch coverage (91.30%) is below the target coverage (95.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files
@@           Coverage Diff           @@
##             main   #33234   +/-   ##
=======================================
  Coverage   80.79%   80.79%           
=======================================
  Files         232      232           
  Lines       14106    14106           
  Branches     2452     2450    -2     
=======================================
  Hits        11397    11397           
  Misses       2429     2429           
  Partials      280      280           
Flag Coverage Δ
suite.unit 80.79% <91.30%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
packages/aws-cdk 79.53% <91.30%> (ø)
packages/aws-cdk-lib/core 82.17% <ø> (ø)

@mrgrain mrgrain added the pr-linter/exempt-codecov The PR linter will not require codecov checks to pass label Jan 30, 2025
@aws-cdk-automation
Copy link
Collaborator

➡️ PR build request submitted to test-main-pipeline ⬅️

A maintainer must now check the pipeline and add the pr-linter/cli-integ-tested label once the pipeline succeeds.

@aws-cdk-automation
Copy link
Collaborator

AWS CodeBuild CI Report

  • CodeBuild project: AutoBuildv2Project1C6BFA3F-wQm2hXv2jqQv
  • Commit ID: 6c6ee28
  • Result: SUCCEEDED
  • Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

@mrgrain mrgrain added the pr-linter/cli-integ-tested Assert that any CLI changes have been integ tested label Jan 30, 2025
@aws-cdk-automation aws-cdk-automation dismissed their stale review January 30, 2025 13:56

✅ Updated pull request passes all PRLinter validations. Dismissing previous PRLinter review.

Copy link
Contributor

mergify bot commented Jan 30, 2025

Thank you for contributing! Your pull request will be updated from main and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork).

@mergify mergify bot merged commit 3b2846e into main Jan 30, 2025
23 of 26 checks passed
@mergify mergify bot deleted the mrgrain/refactor/result-in-favor-of-data branch January 30, 2025 13:57
Copy link

Comments on closed issues and PRs are hard for our team to see.
If you need help, please open a new issue that references this one.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jan 30, 2025
# for free to subscribe to this conversation on GitHub. Already have an account? #.
Labels
contribution/core This is a PR that came from AWS. p2 pr-linter/cli-integ-tested Assert that any CLI changes have been integ tested pr-linter/exempt-codecov The PR linter will not require codecov checks to pass
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants