Skip to content

Commit

Permalink
feat: TypeScript 5.5 (#1256)
Browse files Browse the repository at this point in the history
Closes #1255 

---

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

[Apache 2.0 license]: https://www.apache.org/licenses/LICENSE-2.0

---------

Signed-off-by: github-actions <[email protected]>
Co-authored-by: github-actions <[email protected]>
Co-authored-by: Momo Kornher <[email protected]>
  • Loading branch information
3 people authored Aug 20, 2024
1 parent c1ff791 commit b69ed87
Show file tree
Hide file tree
Showing 17 changed files with 262 additions and 55 deletions.
3 changes: 2 additions & 1 deletion .backportrc.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions .gitattributes

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

59 changes: 59 additions & 0 deletions .github/workflows/auto-tag-dev-v5.4.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion .github/workflows/auto-tag-dev.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

59 changes: 59 additions & 0 deletions .github/workflows/auto-tag-releases-v5.4.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion .github/workflows/auto-tag-releases.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

97 changes: 97 additions & 0 deletions .github/workflows/upgrade-maintenance-v5.4.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions .gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion .projen/deps.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions .projen/files.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

30 changes: 17 additions & 13 deletions .projenrc.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,24 @@ import { SUPPORT_POLICY, SupportPolicy } from './projenrc/support';
import { UpdateIntegPackage } from './projenrc/update-integ-package';
import { UpgradeDependencies } from './projenrc/upgrade-dependencies';

// See 'projenrc/support.ts' for TypeScript versions we are tracking. To add a new version:
// See 'projenrc/support.ts' for TypeScript versions we are tracking. To add a new version:
//
// 1. Fork the current `main` to a maintenance branch:
// `git push origin main:maintenance/vx.y` (x.y is the TS version that is about to be replaced by a new release)
// 2. Add a branch protection rule for the new maintenance branch
// 3. Edit `support.ts`, maintenance EOL date for the current version is 6 months from
// today, make the new version current.
// 4. Update `minNodeVersion` to the oldest LTS version of Node (i.e. dropping support for EOL versions of Node)
// 5. `npx projen`
// 6. Update the version list in the README (remember to remove EOS versions)
// 7. Create a PR
// 8. Note that merging the PR doesn't trigger a release. Release are perfoemd on a weekly schedule, you should manully create a release by trigeeting this workflow:
// https://github.com/aws/jsii-compiler/actions/workflows/auto-tag-releases.yml
// 9. Perform new version steps for `jsii-rosetta`
// 1. Fork the current `main` to a maintenance branch:
// `git switch main && git fetch --all && git pull`
// `git push origin main:maintenance/vX.Y` (X.Y is the TS version that is about to be replaced by a new release)
// 2. Add a branch protection rule for the new maintenance branch.
// Copy the settings from the branch for the version that is about to be replaced.
// 3. Edit `projenrc/support.ts`, maintenance EOL date for the current version to be 6 months from
// today (round up to the mid-point or end of month), make the new version current.
// 4. Update `minNodeVersion` to the oldest LTS version of Node (i.e. dropping support for EOL versions of Node)
// 5. `npx projen`
// 6. Update the version list in the README (remember to remove EOS versions)
// 7. If any versions dropped into EOS, change the respective branch protection rule to include "Lock branch"
// 8. Create a PR, with title "eat: TypeScript X.Y"
// 9. Note that merging the PR doesn't trigger a release. Release are performed on a weekly schedule.
// You need to manually create a release by triggering this workflow:
// https://github.com/aws/jsii-compiler/actions/workflows/auto-tag-releases.yml
// 10. Perform new version steps for `jsii-rosetta`

const project = new typescript.TypeScriptProject({
projenrcTs: true,
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,9 @@ The current status of `jsii` compiler releases is:

| Release | Status | EOS | Comment |
| ------- | ----------- |------------| --------------------------------------------------------------------------------------- |
| `5.4.x` | Current | TBD | ![npm](https://img.shields.io/npm/v/jsii/v5.4-latest?label=jsii%40v5.4-latest&logo=npm) |
| `5.5.x` | Current | TBD | ![npm](https://img.shields.io/npm/v/jsii/v5.5-latest?label=jsii%40v5.5-latest&logo=npm) |
| `5.4.x` | Maintenance | 2024-02-28 | ![npm](https://img.shields.io/npm/v/jsii/v5.4-latest?label=jsii%40v5.4-latest&logo=npm) |
| `5.3.x` | Maintenance | 2024-10-07 | ![npm](https://img.shields.io/npm/v/jsii/v5.3-latest?label=jsii%40v5.3-latest&logo=npm) |
| `5.2.x` | Maintenance | 2024-06-30 | ![npm](https://img.shields.io/npm/v/jsii/v5.2-latest?label=jsii%40v5.2-latest&logo=npm) |
| `1.x` | Maintenance | 2024-10-31 | <https://github.com/aws/jsii> |

## :balance_scale: License
Expand Down
2 changes: 1 addition & 1 deletion package.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion projenrc/support.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,14 @@ import { JsonFile, Project } from 'projen';
import type { ReleasesDocument } from '../src/support';

export const SUPPORT_POLICY: ReleasesDocument = {
current: '5.4',
current: '5.5',
maintenance: {
// version: End-of-support date
'5.0': new Date('2024-01-31'),
'5.1': new Date('2024-02-28'),
'5.2': new Date('2024-06-30'),
'5.3': new Date('2024-10-15'),
'5.4': new Date('2025-02-28'),
},
};

Expand Down
5 changes: 3 additions & 2 deletions releases.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit b69ed87

Please sign in to comment.