Skip to content

Commit

Permalink
chore(release): 1.92.0 (#4336)
Browse files Browse the repository at this point in the history
  • Loading branch information
mergify[bot] committed Nov 16, 2023
2 parents 1b1f239 + 7d2da6f commit db7f27d
Show file tree
Hide file tree
Showing 57 changed files with 837 additions and 682 deletions.
9 changes: 4 additions & 5 deletions .github/workflows/docker-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,16 +22,15 @@ jobs:
fail-fast: false
matrix:
debian:
- 'buster' # 10
node: ['16', '18', '20']
- 'buster' # 10
- 'bullseye' # 11
node: ['18', '20']
include:
- debian: 'bullseye' # 11
node: '20'
- debian: 'bookworm' #12
node: '20'
env:
# Node version whose images will be aliased without the -nodeXX segment
DEFAULT_NODE_MAJOR_VERSION: 16
DEFAULT_NODE_MAJOR_VERSION: 18
steps:
- name: Check out
uses: actions/checkout@v4
Expand Down
62 changes: 27 additions & 35 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,15 +42,15 @@ jobs:
with:
distribution: 'zulu'
java-version: '8'
- name: Set up Node 16
- name: Set up Node 18
uses: actions/setup-node@v4
with:
cache: yarn
node-version: '16'
- name: Set up Python 3.7
node-version: '18'
- name: Set up Python 3.8
uses: actions/setup-python@v4
with:
python-version: '3.7'
python-version: '3.8'
cache: pip
- name: Install python3-venv
run: sudo apt install -y python3-venv
Expand Down Expand Up @@ -125,15 +125,15 @@ jobs:
with:
distribution: 'zulu'
java-version: '8'
- name: Set up Node 16
- name: Set up Node 18
uses: actions/setup-node@v4
with:
cache: yarn
node-version: '16'
- name: Set up Python 3.7
node-version: '18'
- name: Set up Python 3.8
uses: actions/setup-python@v4
with:
python-version: '3.7'
python-version: '3.8'
cache: pip
- name: Install python3-venv
run: sudo apt install -y python3-venv
Expand Down Expand Up @@ -195,101 +195,94 @@ jobs:
dotnet: ['6.0.x']
go: ['1.18']
java: ['8']
node: ['16'] # EOL 2023-09-11
node: ['18'] # EOL 2025-04-30
os: [ubuntu-latest]
python: ['3.7']
# Add specific combinations to be tested against "node 14" (to restrict cardinality)
python: ['3.8']
# Add specific combinations to be tested against (to restrict cardinality)
include:
# Test using Windows
- title: 'Windows'
os: windows-latest
dotnet: '6.0.x'
go: '1.18'
java: '8'
node: '16'
python: '3.7'
node: '18'
python: '3.8'
# Test using macOS
- title: 'macOS'
os: macos-latest
dotnet: '6.0.x'
go: '1.18'
java: '8'
node: '16'
python: '3.7'
node: '18'
python: '3.8'
# Test alternate Nodes
- title: 'Node 16'
java: '8'
dotnet: '6.0.x'
go: '1.18'
node: '16' # EOL 2023-09-11
os: ubuntu-latest
python: '3.7'
- title: 'Node 18'
java: '8'
dotnet: '6.0.x'
go: '1.18'
node: '18' # EOL 2025-04-30
os: ubuntu-latest
python: '3.7'
python: '3.8'
- title: 'Node 20'
java: '8'
dotnet: '6.0.x'
go: '1.18'
node: '20' # EOL 2026-04-30
os: ubuntu-latest
python: '3.7'
python: '3.8'
# Test alternate .NETs
- title: '.NET 7.0'
java: '8'
dotnet: '7.0.x'
go: '1.18'
node: '16'
node: '18'
os: ubuntu-latest
python: '3.7'
python: '3.8'
# Test alternate Gos
- title: 'Go 1.19'
java: '8'
dotnet: '6.0.x'
go: '1.19'
node: '16'
node: '18'
os: ubuntu-latest
python: '3.7'
python: '3.8'
# Test alternate Javas
- title: 'Java 11'
java: '11'
dotnet: '6.0.x'
go: '1.18'
node: '16'
node: '18'
os: ubuntu-latest
python: '3.7'
python: '3.8'
# Test alternate Pythons
- title: 'Python 3.8'
python: '3.8'
dotnet: '6.0.x'
go: '1.18'
java: '8'
node: '16'
node: '18'
os: ubuntu-latest
- title: 'Python 3.9'
python: '3.9'
dotnet: '6.0.x'
go: '1.18'
java: '8'
node: '16'
node: '18'
os: ubuntu-latest
- title: 'Python 3.10'
python: '3.10'
dotnet: '6.0.x'
go: '1.18'
java: '8'
node: '16'
node: '18'
os: ubuntu-latest
- title: 'Python 3.11'
python: '3.11'
dotnet: '6.0.x'
go: '1.18'
java: '8'
node: '16'
node: '18'
os: ubuntu-latest

runs-on: ${{ matrix.os }}
Expand Down Expand Up @@ -479,4 +472,3 @@ jobs:
with:
name: integtest_aws-cdk-lib
path: ./node_modules/aws-cdk-lib/dist/

22 changes: 22 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,28 @@

All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.

## [1.92.0](https://github.com/aws/jsii/compare/v1.91.0...v1.92.0) (2023-11-16)


### ⚠ BREAKING CHANGES

* jsii-pacmak and the libraries it generates for Python targets now require a minimum Python version of 3.8, instead of 3.7 previously. We recommend users upgrade to the latest supported Python release (Python 3.11).
* all libraries and tools now require a minimum version of Node.js 18, instead of 16 previously. We recommend users upgrade to the latest supported Node.js release (Node.js 20).

### Features

* **jsii-reflect:** TypeSystem can be locked to improve reflection performance ([#4318](https://github.com/aws/jsii/issues/4318)) ([c87da43](https://github.com/aws/jsii/commit/c87da436671d677d1fee276d0932ea7edd431f78))
* make node 18 the default ([#4325](https://github.com/aws/jsii/issues/4325)) ([8784725](https://github.com/aws/jsii/commit/87847254c8a39f6e99383bfa3a375ae6c8d9a8a5))
* **superchain:** publish a bullseye image with node18 & python 3.9 ([#4326](https://github.com/aws/jsii/issues/4326)) ([7197b4f](https://github.com/aws/jsii/commit/7197b4f21e7f6776fbbfe5bac7f03a308cd9f7c0))
* switch to python 3.8 ([#4327](https://github.com/aws/jsii/issues/4327)) ([416e2b5](https://github.com/aws/jsii/commit/416e2b504895800281a3598b3139b141330aa906))


### Bug Fixes

* **kernel:** invokeBinScript fails when using symlinked cache ([#4324](https://github.com/aws/jsii/issues/4324)) ([a2ab316](https://github.com/aws/jsii/commit/a2ab31609d361ac5ceca6c928584ec59f2d705d3))
* **pacmak:** *.tsbuildinfo not in auto-generated .npmignore file ([#4236](https://github.com/aws/jsii/issues/4236)) ([d55b8d5](https://github.com/aws/jsii/commit/d55b8d57ce43dc9fd3d5132d7ba3ad0aa9ead3b9)), closes [#3978](https://github.com/aws/jsii/issues/3978)
* **superchain:** installed setuptools is an unsupported version ([#4333](https://github.com/aws/jsii/issues/4333)) ([c0a4140](https://github.com/aws/jsii/commit/c0a41409568bc71b086fd1c56e2c5a08f708c3ad))

## [1.91.0](https://github.com/aws/jsii/compare/v1.90.0...v1.91.0) (2023-10-24)

## [1.90.0](https://github.com/aws/jsii/compare/v1.89.0...v1.90.0) (2023-10-06)
Expand Down
9 changes: 5 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ in your development environment.
+ [`maven >= 3.0.5`](https://maven.apache.org)
- [.NET `6.0`] or later
+ *Recommended:* [`mono >= 6`](https://www.mono-project.com)
- [Python `3.7.3`] or later
- [Python `3.8.10`] or later
+ [`pip`](https://pip.pypa.io/en/stable/installing/)
+ [`setuptools >= 38.6.0`](https://pypi.org/project/setuptools/)
+ [`wheel`](https://pypi.org/project/wheel/)
Expand All @@ -57,7 +57,7 @@ in your development environment.
[Oracle's OpenJDK8]: http://openjdk.java.net/install/
[Amazon Corretto 8]: https://aws.amazon.com/corretto/
[.NET `6.0`]: https://www.microsoft.com/net/download
[Python `3.7.3`]: https://www.python.org/downloads/release/python-373/
[Python `3.8.10`]: https://www.python.org/downloads/release/python-3810/
[Go]: https://go.dev/dl/

## Getting Started
Expand Down Expand Up @@ -228,13 +228,14 @@ The [Python](./packages/jsii-pacmak/lib/targets/python.ts) target is a good
example to work from.

## Releasing

### The `public.ecr.aws/jsii/superchain` Docker image

Upon merging new changes to the `main` branch, the `public.ecr.aws/jsii/superchain:1-buster-slim-nightly`
Upon merging new changes to the `main` branch, the `public.ecr.aws/jsii/superchain:1-bullseye-slim-nightly`
image will be released after a last validation build.

Upon making a new `jsii` release (when the GitHub release entry - and its
corresponding git tag - is created), the `public.ecr.aws/jsii/superchain:1-buster-slim` image will
corresponding git tag - is created), the `public.ecr.aws/jsii/superchain:1-bullseye-slim` image will
be released after a last validation build.

The latest release information (for both of the Docker image tags) can be seen
Expand Down
2 changes: 1 addition & 1 deletion gh-pages/content/user-guides/language-support/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ in significant re-engineering effort:
- How are dependencies modeled? If [semantic versioning] is not the norm, what is the strategy to correctly represent
semantic version ranges?
- What are the toolchain and platform requirements?
- For example, **Java** requires an OpenJDK 8 distribution and `maven`, **Python** requires `python` 3.7 or above,
- For example, **Java** requires an OpenJDK 8 distribution and `maven`, **Python** requires `python` 3.8 or above,
etc...

## Code Generation
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ The `python` target requires two configuration entries:
- Additionally, the following `Programming Language ::` classifiers are already set (more could be added by the user
if relevant):
- `Programming Language :: Python :: 3 :: Only`
- `Programming Language :: Python :: 3.7`
- `Programming Language :: Python :: 3.8`
- `Programming Language :: Python :: 3.9`
- `Programming Language :: Python :: 3.10`
Expand Down
2 changes: 1 addition & 1 deletion gh-pages/content/user-guides/lib-author/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ to produce releasable artifacts.
| .NET | .NET ≥ 6.0 |
| Go | Go ≥ 1.18 |
| Java | JDK ≥ 8 *and* Maven ≥ 3.6 |
| Python | Python ≥ 3.7 |
| Python | Python ≥ 3.8 |


## :octicons-desktop-download-24: Download Locations
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,14 @@ A *jsii module* can declare dependencies on any other *jsii module* by adding en
`package.json` file. Since most other platforms do not support multiple different versions of the same library to
coexist in the same closure, it is recommended to also declare all such dependencies as `peerDependencies`.

### non-jsii dependencies

Occasionally, a dependency on a *non-jsii module* is useful. Since such dependencies do not have generated bindings in
all the supported languages, they must be bundled with the *jsii module* that depends on them, by adding the library
into the `bundleDependencies` array in `package.json`. The API of the *jsii module* can not expose any type from bundled
dependencies, since those types would not be available in other languages.
into the `bundleDependencies` array in `package.json`.

The API of the *jsii module* can not expose any type from bundled dependencies, since those types would not be available in other languages.
TypeScript files that include a non-jsii dependency (e.g. a lambda handler for an AWS CDK Construct) cannot be exported from the `main`/`types` entry point.

!!! info
For more information on `package.json` file contents, refer to the [npm documentation][package-json].
Expand Down
4 changes: 2 additions & 2 deletions gh-pages/mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,8 @@ markdown_extensions:
- pymdownx.superfences
- pymdownx.tabbed
- pymdownx.emoji:
emoji_index: !!python/name:materialx.emoji.twemoji
emoji_generator: !!python/name:materialx.emoji.to_svg
emoji_index: !!python/name:material.extensions.emoji.twemoji
emoji_generator: !!python/name:material.extensions.emoji.to_svg

plugins:
- awesome-pages:
Expand Down
2 changes: 1 addition & 1 deletion gh-pages/requirements-dev.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
mkdocs~=1.5.3
mkdocs-awesome-pages-plugin~=2.9.2
mkdocs-material~=9.4.6
mkdocs-material~=9.4.8
mkdocs-git-revision-date-plugin~=0.3.2
2 changes: 1 addition & 1 deletion lerna.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@
"rejectCycles": true
}
},
"version": "1.91.0",
"version": "1.92.0",
"$schema": "node_modules/lerna/schemas/lerna-schema.json"
}
12 changes: 6 additions & 6 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@
},
"devDependencies": {
"@jest/types": "^28.1.3",
"@types/jest": "^29.5.6",
"@types/jest": "^29.5.8",
"@types/node": "^14.18.63",
"@typescript-eslint/eslint-plugin": "^6.8.0",
"@typescript-eslint/parser": "^6.8.0",
"@typescript-eslint/eslint-plugin": "^6.11.0",
"@typescript-eslint/parser": "^6.11.0",
"all-contributors-cli": "^6.26.1",
"eslint": "^8.51.0",
"eslint": "^8.53.0",
"eslint-config-prettier": "^9.0.0",
"eslint-import-resolver-node": "^0.3.9",
"eslint-import-resolver-typescript": "^3.6.1",
Expand All @@ -31,8 +31,8 @@
"jest-circus": "^28.1.3",
"jest-config": "^28.1.3",
"jest-expect-message": "^1.1.3",
"lerna": "^7.4.1",
"prettier": "^3.0.3",
"lerna": "^7.4.2",
"prettier": "^3.1.0",
"standard-version": "^9.5.0",
"ts-node": "^10.9.1",
"typescript": "~4.7.4"
Expand Down
4 changes: 2 additions & 2 deletions packages/@jsii/Directory.Build.targets
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
<PackageReference Update="Microsoft.CodeAnalysis.Analyzers" Version="3.3.4" />
<PackageReference Update="Microsoft.CodeQuality.Analyzers" Version="3.3.2" />

<PackageReference Update="Microsoft.NET.Test.Sdk" Version="17.7.2" />
<PackageReference Update="Microsoft.NET.Test.Sdk" Version="17.8.0" />
<PackageReference Update="NSubstitute" Version="5.1.0" />
<PackageReference Update="xunit" Version="2.5.2" />
<PackageReference Update="xunit" Version="2.6.1" />
<PackageReference Update="xunit.runner.visualstudio" Version="2.5.3" />
<PackageReference Update="XunitXml.TestLogger" Version="3.1.17" />

Expand Down
7 changes: 4 additions & 3 deletions packages/@jsii/check-node/src/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,6 @@ export class NodeRelease {
endOfLife: new Date('2022-04-30'),
supportedRange: '^12.7.0',
}),
new NodeRelease(19, { endOfLife: new Date('2023-06-01') }),

// Currently active releases (as of last edit to this file...)
new NodeRelease(16, {
endOfLife: new Date('2023-09-11'),
supportedRange: '^16.3.0',
Expand All @@ -46,8 +43,12 @@ export class NodeRelease {
endOfLife: new Date('2022-06-01'),
supportedRange: '^17.3.0',
}),
new NodeRelease(19, { endOfLife: new Date('2023-06-01') }),

// Currently active releases (as of last edit to this file...)
new NodeRelease(18, { endOfLife: new Date('2025-04-30') }),
new NodeRelease(20, { endOfLife: new Date('2026-04-30') }),
new NodeRelease(21, { endOfLife: new Date('2024-06-01') }),

// Future (planned releases)
];
Expand Down
2 changes: 1 addition & 1 deletion packages/@jsii/check-node/src/index.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ test('tested node releases are correctly registered & supported', () => {

// This test is there to ensure house-keeping happens when it should. If we are
// testing a given node release, it must not have been EOL for over 60 days.
test(`tested node release (${process.version}) has not ben EOL for more than 60 days`, () => {
test(`tested node release (${process.version}) has not been EOL for more than 60 days`, () => {
const { nodeRelease } = NodeRelease.forThisRuntime();
expect(nodeRelease?.endOfLifeDate?.getTime()).toBeGreaterThan(
Date.now() - 60 * 86_400_000,
Expand Down
Loading

0 comments on commit db7f27d

Please sign in to comment.