Skip to content

Commit 404ee7b

Browse files
Merge branch 'develop'
2 parents 69cd0ca + 005cead commit 404ee7b

File tree

60 files changed

+865
-26
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+865
-26
lines changed

.github/workflows/build.yml

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,7 @@ jobs:
125125
- "3.9"
126126
- "3.10"
127127
- "3.11"
128+
- "3.12"
128129
npm:
129130
- 8
130131
- 9
@@ -158,6 +159,7 @@ jobs:
158159
- "3.9"
159160
- "3.10"
160161
- "3.11"
162+
- "3.12"
161163
steps:
162164
- uses: actions/checkout@v4
163165
- uses: actions/setup-python@v4
@@ -185,6 +187,7 @@ jobs:
185187
- "3.9"
186188
- "3.10"
187189
- "3.11"
190+
- "3.12"
188191
steps:
189192
- uses: actions/checkout@v4
190193
- uses: actions/setup-python@v4
@@ -193,7 +196,7 @@ jobs:
193196
- uses: actions/setup-java@v3
194197
with:
195198
distribution: 'corretto'
196-
java-version: '17'
199+
java-version: '21'
197200
- run: make init
198201
- run: pytest -vv tests/integration/workflows/java_maven
199202

@@ -215,6 +218,7 @@ jobs:
215218
- "3.9"
216219
- "3.10"
217220
- "3.11"
221+
- "3.12"
218222
steps:
219223
- uses: actions/checkout@v4
220224
- uses: actions/setup-python@v4
@@ -223,7 +227,7 @@ jobs:
223227
- uses: actions/setup-java@v3
224228
with:
225229
distribution: 'zulu'
226-
java-version: '17'
230+
java-version: '21'
227231
- run: make init
228232
- run: pytest -vv tests/integration/workflows/java_gradle
229233

@@ -243,6 +247,7 @@ jobs:
243247
- "3.9"
244248
- "3.10"
245249
- "3.11"
250+
- "3.12"
246251
steps:
247252
- uses: actions/checkout@v4
248253
- uses: actions/setup-python@v4
@@ -267,11 +272,16 @@ jobs:
267272
- "3.9"
268273
- "3.10"
269274
- "3.11"
275+
- "3.12"
270276
steps:
271277
- uses: actions/checkout@v4
272278
- uses: actions/setup-python@v4
273279
with:
274280
python-version: ${{ matrix.python }}
281+
- run: |
282+
python -m pip install --upgrade pip
283+
pip install --upgrade setuptools
284+
if: ${{ matrix.os }} == 'ubuntu-latest' && ${{ matrix.python }} == '3.12'
275285
- run: make init
276286
- run: pytest -vv tests/integration/workflows/python_pip
277287

@@ -291,6 +301,7 @@ jobs:
291301
- "3.9"
292302
- "3.10"
293303
- "3.11"
304+
- "3.12"
294305
steps:
295306
- uses: actions/checkout@v4
296307
- uses: actions/setup-python@v4
@@ -321,6 +332,7 @@ jobs:
321332
- "3.9"
322333
- "3.10"
323334
- "3.11"
335+
- "3.12"
324336
steps:
325337
- uses: actions/checkout@v4
326338
- uses: actions/setup-python@v4

aws_lambda_builders/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@
55
# Changing version will trigger a new release!
66
# Please make the version change as the last step of your development.
77

8-
__version__ = "1.41.0"
8+
__version__ = "1.42.0"
99
RPC_PROTOCOL_VERSION = "0.3"

aws_lambda_builders/validator.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,13 @@
2020
"python3.9": [ARM64, X86_64],
2121
"python3.10": [ARM64, X86_64],
2222
"python3.11": [ARM64, X86_64],
23+
"python3.12": [ARM64, X86_64],
2324
"ruby2.7": [ARM64, X86_64],
2425
"ruby3.2": [ARM64, X86_64],
2526
"java8": [ARM64, X86_64],
2627
"java11": [ARM64, X86_64],
2728
"java17": [ARM64, X86_64],
29+
"java21": [ARM64, X86_64],
2830
"go1.x": [ARM64, X86_64],
2931
"dotnet6": [ARM64, X86_64],
3032
"provided": [ARM64, X86_64],

aws_lambda_builders/workflows/python_pip/DESIGN.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ def build_dependencies(artifacts_dir_path,
4949
5050
:type runtime: str
5151
:param runtime: Python version to build dependencies for. This can
52-
either be python3.7, python3.8, python3.9, python3.10 or python3.11. These are
52+
either be python3.7, python3.8, python3.9, python3.10, python3.11 or python3.12. These are
5353
currently the only supported values.
5454
5555
:type ui: :class:`lambda_builders.actions.python_pip.utils.UI`

aws_lambda_builders/workflows/python_pip/packager.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ def get_lambda_abi(runtime):
8787
"python3.9": "cp39",
8888
"python3.10": "cp310",
8989
"python3.11": "cp311",
90+
"python3.12": "cp312",
9091
}
9192

9293
if runtime not in supported:
@@ -101,7 +102,7 @@ def __init__(self, runtime, osutils=None, dependency_builder=None, architecture=
101102
102103
:type runtime: str
103104
:param runtime: Python version to build dependencies for. This can
104-
either be python3.7, python3.8, python3.9, python3.10 or python3.11. These are currently the
105+
either be python3.7, python3.8, python3.9, python3.10, python3.11 or python3.12. These are currently the
105106
only supported values.
106107
107108
:type osutils: :class:`lambda_builders.utils.OSUtils`

setup.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ def read_version():
6363
"Programming Language :: Python :: 3.9",
6464
"Programming Language :: Python :: 3.10",
6565
"Programming Language :: Python :: 3.11",
66+
"Programming Language :: Python :: 3.12",
6667
"Topic :: Internet",
6768
"Topic :: Software Development :: Build Tools",
6869
"Topic :: Utilities",

tests/integration/workflows/java_gradle/test_java_gradle.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
["java8"],
2525
["java11"],
2626
["java17"],
27+
["java21"],
2728
],
2829
)
2930
class TestJavaGradle(TestCase):
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
allprojects {
2+
repositories {
3+
mavenCentral()
4+
}
5+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
plugins {
2+
id 'java'
3+
}
4+
5+
repositories {
6+
mavenCentral()
7+
}
8+
9+
dependencies {
10+
implementation 'software.amazon.awssdk:annotations:2.1.0'
11+
}
12+
13+
java.sourceCompatibility = JavaVersion.VERSION_21
14+
java.targetCompatibility = JavaVersion.VERSION_21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package aws.lambdabuilders;
2+
3+
public class Foo {
4+
public void sayHello() {
5+
System.out.println("Hello world!");
6+
}
7+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
plugins {
2+
id 'java'
3+
}
4+
5+
repositories {
6+
mavenCentral()
7+
}
8+
9+
dependencies {
10+
implementation 'software.amazon.awssdk:annotations:2.1.0'
11+
implementation project(':common')
12+
}
13+
14+
java.sourceCompatibility = JavaVersion.VERSION_21
15+
java.targetCompatibility = JavaVersion.VERSION_21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package aws.lambdabuilders;
2+
3+
public class Lambda1_Main {
4+
public static void main(String[] args) {
5+
System.out.println("Hello AWS Lambda Builders!");
6+
}
7+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
plugins {
2+
id 'java'
3+
}
4+
5+
repositories {
6+
mavenCentral()
7+
}
8+
9+
dependencies {
10+
implementation 'software.amazon.awssdk:annotations:2.1.0'
11+
}
12+
13+
java.sourceCompatibility = JavaVersion.VERSION_21
14+
java.targetCompatibility = JavaVersion.VERSION_21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package aws.lambdabuilders;
2+
3+
public class Lambda2_Main {
4+
public static void main(String[] args) {
5+
System.out.println("Hello AWS Lambda Builders!");
6+
}
7+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
rootProject.name = 'multi-build'
2+
include 'lambda1', 'lambda2', 'common'
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
allprojects {
2+
repositories {
3+
mavenCentral()
4+
}
5+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
plugins {
2+
id 'java'
3+
}
4+
5+
repositories {
6+
mavenCentral()
7+
}
8+
9+
dependencies {
10+
implementation 'software.amazon.awssdk:annotations:2.1.0'
11+
}
12+
13+
java.sourceCompatibility = JavaVersion.VERSION_21
14+
java.targetCompatibility = JavaVersion.VERSION_21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package aws.lambdabuilders;
2+
3+
public class Lambda1_Main {
4+
public static void main(String[] args) {
5+
System.out.println("Hello AWS Lambda Builders!");
6+
}
7+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
plugins {
2+
id 'java'
3+
}
4+
5+
repositories {
6+
mavenCentral()
7+
}
8+
9+
dependencies {
10+
implementation 'software.amazon.awssdk:annotations:2.1.0'
11+
}
12+
13+
java.sourceCompatibility = JavaVersion.VERSION_21
14+
java.targetCompatibility = JavaVersion.VERSION_21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package aws.lambdabuilders;
2+
3+
public class Lambda2_Main {
4+
public static void main(String[] args) {
5+
System.out.println("Hello AWS Lambda Builders!");
6+
}
7+
}
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
rootProject.name = 'multi-build'
2+
include 'lambda1', 'lambda2'

tests/integration/workflows/java_gradle/testdata/single-build/java17/layer/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ dependencies {
1818
group = 'aws.lambdabuilders'
1919
version = '1.0'
2020
description = 'common-layer-gradle'
21-
java.sourceCompatibility = JavaVersion.VERSION_11
22-
java.targetCompatibility = JavaVersion.VERSION_11
21+
java.sourceCompatibility = JavaVersion.VERSION_17
22+
java.targetCompatibility = JavaVersion.VERSION_17
2323

2424
build.finalizedBy publishToMavenLocal
2525

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
plugins {
2+
id 'java'
3+
id 'java-library'
4+
id 'maven-publish'
5+
}
6+
7+
repositories {
8+
mavenLocal()
9+
maven {
10+
url = uri('https://repo.maven.apache.org/maven2/')
11+
}
12+
}
13+
14+
dependencies {
15+
api 'com.amazonaws:aws-lambda-java-core:1.2.0'
16+
}
17+
18+
group = 'aws.lambdabuilders'
19+
version = '1.0'
20+
description = 'common-layer-gradle'
21+
java.sourceCompatibility = JavaVersion.VERSION_21
22+
java.targetCompatibility = JavaVersion.VERSION_21
23+
24+
build.finalizedBy publishToMavenLocal
25+
26+
publishing {
27+
publications {
28+
maven(MavenPublication) {
29+
from(components.java)
30+
}
31+
}
32+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
rootProject.name = 'common-layer-gradle'
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package aws.lambdabuilders;
2+
3+
import com.amazonaws.services.lambda.runtime.LambdaLogger;
4+
5+
public class CommonCode {
6+
7+
public static void doSomethingOnLayer(final LambdaLogger logger, final String s) {
8+
logger.log("Doing something on layer" + s);
9+
}
10+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
plugins {
2+
id 'java'
3+
}
4+
5+
repositories {
6+
mavenCentral()
7+
}
8+
9+
dependencies {
10+
implementation 'software.amazon.awssdk:does-not-exist:1.2.3'
11+
}
12+
13+
java.sourceCompatibility = JavaVersion.VERSION_21
14+
java.targetCompatibility = JavaVersion.VERSION_21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package aws.lambdabuilders;
2+
3+
public class Main {
4+
public static void main(String[] args) {
5+
System.out.println("Hello AWS Lambda Builders!");
6+
}
7+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
plugins {
2+
id 'java'
3+
}
4+
5+
repositories {
6+
mavenCentral()
7+
}
8+
9+
dependencies {
10+
implementation 'software.amazon.awssdk:annotations:2.1.0'
11+
}
12+
13+
java.sourceCompatibility = JavaVersion.VERSION_21
14+
java.targetCompatibility = JavaVersion.VERSION_21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
distributionBase=GRADLE_USER_HOME
2+
distributionPath=wrapper/dists
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
4+
zipStoreBase=GRADLE_USER_HOME
5+
zipStorePath=wrapper/dists

0 commit comments

Comments
 (0)