Skip to content

refactor: use WorkspaceJsiiBuild from cdklabs-projen-project-types#1565

Merged
aws-cdk-automation merged 1 commit into
mainfrom
mrgrain/chore/jsii-build-from-upstream
May 29, 2026
Merged

refactor: use WorkspaceJsiiBuild from cdklabs-projen-project-types#1565
aws-cdk-automation merged 1 commit into
mainfrom
mrgrain/chore/jsii-build-from-upstream

Conversation

@mrgrain
Copy link
Copy Markdown
Contributor

@mrgrain mrgrain commented May 28, 2026

Replaces the local JsiiBuild component with WorkspaceJsiiBuild from cdklabs-projen-project-types for the cloud-assembly-schema package. This moves us to the upstream implementation, reducing local maintenance burden and keeping us aligned with the shared build infrastructure used across cdklabs projects.

The remaining local JsiiBuild class has its NPM publishing job check commented out since WorkspaceJsiiBuild handles this differently.

Checklist

  • This change contains a major version upgrade for a dependency and I confirm all breaking changes are addressed
    • Release notes for the new version:

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

@github-actions github-actions Bot added the p2 label May 28, 2026
@aws-cdk-automation aws-cdk-automation requested a review from a team May 28, 2026 15:50
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 28, 2026

Dependency Review

The following issues were found:
  • ✅ 0 vulnerable package(s)
  • ✅ 0 package(s) with incompatible licenses
  • ✅ 0 package(s) with invalid SPDX license definitions
  • ⚠️ 2 package(s) with unknown licenses.
See the Details below.

License Issues

yarn.lock

PackageVersionLicenseIssue Type
cdklabs-projen-project-types0.5.0NullUnknown License
projen0.99.70NullUnknown License

OpenSSF Scorecard

Scorecard details
PackageVersionScoreDetails
npm/cdklabs-projen-project-types ^0.5.0 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/jsii-diff ^1.132.0 UnknownUnknown
npm/jsii-pacmak ^1.132.0 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/projen ^0.99.70 UnknownUnknown
npm/@jsii/check-node 1.132.0 🟢 7.1
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 10all changesets reviewed
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Branch-Protection🟢 8branch protection is not maximal on development and all release branches
Security-Policy🟢 10security policy file detected
Signed-Releases🟢 85 out of the last 5 releases have a total of 5 signed artifacts.
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/@jsii/spec 1.132.0 🟢 7.1
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 10all changesets reviewed
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Branch-Protection🟢 8branch protection is not maximal on development and all release branches
Security-Policy🟢 10security policy file detected
Signed-Releases🟢 85 out of the last 5 releases have a total of 5 signed artifacts.
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/cdklabs-projen-project-types 0.5.0 UnknownUnknown
npm/codemaker 1.132.0 🟢 7.1
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 10all changesets reviewed
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Branch-Protection🟢 8branch protection is not maximal on development and all release branches
Security-Policy🟢 10security policy file detected
Signed-Releases🟢 85 out of the last 5 releases have a total of 5 signed artifacts.
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/jsii-diff 1.132.0 🟢 7.1
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 10all changesets reviewed
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Branch-Protection🟢 8branch protection is not maximal on development and all release branches
Security-Policy🟢 10security policy file detected
Signed-Releases🟢 85 out of the last 5 releases have a total of 5 signed artifacts.
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/jsii-pacmak 1.132.0 🟢 7.1
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 10all changesets reviewed
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Branch-Protection🟢 8branch protection is not maximal on development and all release branches
Security-Policy🟢 10security policy file detected
Signed-Releases🟢 85 out of the last 5 releases have a total of 5 signed artifacts.
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/jsii-reflect 1.132.0 🟢 7.1
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 10all changesets reviewed
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Branch-Protection🟢 8branch protection is not maximal on development and all release branches
Security-Policy🟢 10security policy file detected
Signed-Releases🟢 85 out of the last 5 releases have a total of 5 signed artifacts.
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/oo-ascii-tree 1.132.0 🟢 7.1
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 10all changesets reviewed
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Branch-Protection🟢 8branch protection is not maximal on development and all release branches
Security-Policy🟢 10security policy file detected
Signed-Releases🟢 85 out of the last 5 releases have a total of 5 signed artifacts.
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/projen 0.99.70 🟢 7.3
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 24 issue activity found in the last 90 days -- score normalized to 10
Security-Policy🟢 10security policy file detected
Code-Review🟢 10all changesets reviewed
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Binary-Artifacts🟢 10no binaries found in the repo
Token-Permissions🟢 4detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
License🟢 10license file detected
Fuzzing⚠️ 0project is not fuzzed
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
SAST🟢 8SAST tool is not run on all commits -- score normalized to 8

Scanned Files

  • package.json
  • packages/@aws-cdk-testing/cli-integ/package.json
  • packages/@aws-cdk/cdk-assets-lib/package.json
  • packages/@aws-cdk/cli-plugin-contract/package.json
  • packages/@aws-cdk/cloud-assembly-api/package.json
  • packages/@aws-cdk/cloud-assembly-schema/package.json
  • packages/@aws-cdk/cloudformation-diff/package.json
  • packages/@aws-cdk/integ-runner/package.json
  • packages/@aws-cdk/toolkit-lib/package.json
  • packages/@aws-cdk/user-input-gen/package.json
  • packages/@aws-cdk/yarn-cling/package.json
  • packages/aws-cdk/package.json
  • packages/cdk-assets/package.json
  • packages/cdk/package.json
  • yarn.lock

@mrgrain mrgrain force-pushed the mrgrain/chore/jsii-build-from-upstream branch from 8f54f8e to bda1eef Compare May 28, 2026 15:51
Comment thread projenrc/jsii.ts
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

removing the now redundant file

Comment thread .projenrc.ts
fixupTestTask(cloudAssemblySchema);

new JsiiBuild(cloudAssemblySchema, {
cloudAssemblySchema.with(new yarn.WorkspaceJsiiBuild({
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

this is the actual change. everything else is just version updates.

{
"spawn": "package:js",
"condition": "node -e \"if (!process.env.CI) process.exit(1)\""
"spawn": "package:js"
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This is the only functional difference to before.

Previously we wouldn't package @aws-cdk/cloud-assembly-schema locally at all during build. I believe this was not intentional, since all other packages are packaged during build.

What was intentional however was the to remove local packaging for all jsii languages (which is super slow). I have kept this removal and just re-established the package:js step.

In CI, it is important we only run package:js during build since the other packaging tasks are run in a separate job.

@codecov-commenter
Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 88.18%. Comparing base (7fdc034) to head (bda1eef).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1565   +/-   ##
=======================================
  Coverage   88.18%   88.18%           
=======================================
  Files          76       76           
  Lines       10841    10841           
  Branches     1493     1493           
=======================================
  Hits         9560     9560           
  Misses       1253     1253           
  Partials       28       28           
Flag Coverage Δ
suite.unit 88.18% <ø> (ø)

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

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@aws-cdk-automation aws-cdk-automation added this pull request to the merge queue May 29, 2026
Merged via the queue into main with commit 0a7f892 May 29, 2026
41 checks passed
@aws-cdk-automation aws-cdk-automation deleted the mrgrain/chore/jsii-build-from-upstream branch May 29, 2026 07:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants