aws-lambda-builders 1.45.0__tar.gz → 1.47.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. {aws_lambda_builders-1.45.0/aws_lambda_builders.egg-info → aws_lambda_builders-1.47.0}/PKG-INFO +6 -11
  2. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/__init__.py +1 -1
  3. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/architecture.py +1 -0
  4. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/utils.py +1 -0
  5. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/validator.py +1 -4
  6. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflow.py +1 -0
  7. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/custom_make/actions.py +0 -1
  8. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/custom_make/make.py +1 -2
  9. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/custom_make/utils.py +0 -1
  10. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/dotnet_clipackage/utils.py +1 -0
  11. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/go_modules/builder.py +1 -0
  12. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/go_modules/workflow.py +7 -1
  13. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_gradle/workflow.py +1 -0
  14. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_maven/workflow.py +1 -0
  15. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm/actions.py +0 -5
  16. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm/exceptions.py +0 -1
  17. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm/npm.py +0 -1
  18. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm/utils.py +0 -1
  19. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm/workflow.py +0 -1
  20. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/esbuild.py +1 -0
  21. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/exceptions.py +1 -0
  22. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/workflow.py +0 -1
  23. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/python_pip/DESIGN.md +1 -1
  24. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/python_pip/exceptions.py +1 -0
  25. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/python_pip/packager.py +1 -2
  26. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/python_pip/workflow.py +1 -0
  27. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/ruby_bundler/DESIGN.md +1 -1
  28. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/ruby_bundler/actions.py +0 -1
  29. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/ruby_bundler/utils.py +0 -1
  30. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/rust_cargo/cargo_lambda.py +1 -0
  31. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0/aws_lambda_builders.egg-info}/PKG-INFO +6 -11
  32. aws_lambda_builders-1.47.0/aws_lambda_builders.egg-info/requires.txt +12 -0
  33. aws_lambda_builders-1.47.0/requirements/dev.txt +12 -0
  34. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/setup.py +2 -3
  35. aws_lambda_builders-1.45.0/aws_lambda_builders.egg-info/requires.txt +0 -20
  36. aws_lambda_builders-1.45.0/requirements/dev.txt +0 -17
  37. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/LICENSE +0 -0
  38. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/MANIFEST.in +0 -0
  39. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/NOTICE +0 -0
  40. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/README.md +0 -0
  41. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/__main__.py +0 -0
  42. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/actions.py +0 -0
  43. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/binary_path.py +0 -0
  44. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/builder.py +0 -0
  45. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/exceptions.py +0 -0
  46. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/path_resolver.py +0 -0
  47. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/registry.py +0 -0
  48. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/__init__.py +0 -0
  49. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/custom_make/DESIGN.md +0 -0
  50. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/custom_make/__init__.py +0 -0
  51. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/custom_make/exceptions.py +0 -0
  52. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/custom_make/validator.py +0 -0
  53. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/custom_make/workflow.py +1 -1
  54. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/dotnet_clipackage/DESIGN.md +0 -0
  55. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/dotnet_clipackage/__init__.py +0 -0
  56. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/dotnet_clipackage/actions.py +0 -0
  57. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/dotnet_clipackage/dotnetcli.py +0 -0
  58. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/dotnet_clipackage/dotnetcli_resolver.py +0 -0
  59. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/dotnet_clipackage/workflow.py +1 -1
  60. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/go_modules/DESIGN.md +0 -0
  61. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/go_modules/__init__.py +0 -0
  62. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/go_modules/actions.py +0 -0
  63. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/go_modules/utils.py +0 -0
  64. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/go_modules/validator.py +0 -0
  65. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java/__init__.py +0 -0
  66. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java/actions.py +0 -0
  67. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java/utils.py +0 -0
  68. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_gradle/DESIGN.md +0 -0
  69. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_gradle/__init__.py +0 -0
  70. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_gradle/actions.py +0 -0
  71. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_gradle/gradle.py +0 -0
  72. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_gradle/gradle_resolver.py +0 -0
  73. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_gradle/gradle_validator.py +0 -0
  74. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_gradle/resources/lambda-build-init.gradle +0 -0
  75. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_maven/DESIGN.md +0 -0
  76. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_maven/__init__.py +0 -0
  77. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_maven/actions.py +0 -0
  78. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_maven/maven.py +0 -0
  79. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_maven/maven_resolver.py +0 -0
  80. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/java_maven/maven_validator.py +0 -0
  81. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm/DESIGN.md +0 -0
  82. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm/__init__.py +0 -0
  83. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/DESIGN.md +0 -0
  84. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/__init__.py +0 -0
  85. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/actions.py +1 -1
  86. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/python_pip/__init__.py +0 -0
  87. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/python_pip/actions.py +0 -0
  88. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/python_pip/compat.py +0 -0
  89. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/python_pip/utils.py +0 -0
  90. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/python_pip/validator.py +0 -0
  91. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/ruby_bundler/__init__.py +0 -0
  92. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/ruby_bundler/bundler.py +0 -0
  93. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/ruby_bundler/workflow.py +1 -1
  94. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/rust_cargo/DESIGN.md +0 -0
  95. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/rust_cargo/__init__.py +0 -0
  96. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/rust_cargo/actions.py +0 -0
  97. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/rust_cargo/exceptions.py +0 -0
  98. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/rust_cargo/feature_flag.py +0 -0
  99. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/rust_cargo/utils.py +0 -0
  100. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders/workflows/rust_cargo/workflow.py +0 -0
  101. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders.egg-info/SOURCES.txt +0 -0
  102. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders.egg-info/dependency_links.txt +0 -0
  103. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders.egg-info/entry_points.txt +0 -0
  104. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/aws_lambda_builders.egg-info/top_level.txt +0 -0
  105. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/pyproject.toml +0 -0
  106. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/requirements/base.txt +0 -0
  107. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/requirements/python_pip.txt +0 -0
  108. {aws_lambda_builders-1.45.0 → aws_lambda_builders-1.47.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: aws_lambda_builders
3
- Version: 1.45.0
3
+ Version: 1.47.0
4
4
  Summary: Python library to compile, build & package AWS Lambda functions for several runtimes & frameworks.
5
5
  Home-page: https://github.com/awslabs/aws-lambda-builders
6
6
  Author: Amazon Web Services
@@ -15,7 +15,6 @@ Classifier: Intended Audience :: Information Technology
15
15
  Classifier: License :: OSI Approved :: Apache Software License
16
16
  Classifier: Operating System :: OS Independent
17
17
  Classifier: Programming Language :: Python
18
- Classifier: Programming Language :: Python :: 3.7
19
18
  Classifier: Programming Language :: Python :: 3.8
20
19
  Classifier: Programming Language :: Python :: 3.9
21
20
  Classifier: Programming Language :: Python :: 3.10
@@ -24,24 +23,20 @@ Classifier: Programming Language :: Python :: 3.12
24
23
  Classifier: Topic :: Internet
25
24
  Classifier: Topic :: Software Development :: Build Tools
26
25
  Classifier: Topic :: Utilities
27
- Requires-Python: >=3.7
26
+ Requires-Python: >=3.8
28
27
  License-File: LICENSE
29
28
  License-File: NOTICE
30
29
  Requires-Dist: setuptools
31
30
  Requires-Dist: wheel
32
31
  Provides-Extra: dev
33
- Requires-Dist: coverage==7.2.7; python_version < "3.8" and extra == "dev"
34
- Requires-Dist: coverage==7.3.2; python_version >= "3.8" and extra == "dev"
35
- Requires-Dist: flake8==3.3.0; python_version < "3.8" and extra == "dev"
36
- Requires-Dist: flake8==3.8.4; python_version >= "3.8" and extra == "dev"
32
+ Requires-Dist: coverage==7.4.3; extra == "dev"
33
+ Requires-Dist: flake8==3.8.4; extra == "dev"
37
34
  Requires-Dist: pytest-cov==4.1.0; extra == "dev"
38
- Requires-Dist: isort<5,>=4.2.5; python_version < "3.8" and extra == "dev"
39
35
  Requires-Dist: pytest>=6.1.1; extra == "dev"
40
36
  Requires-Dist: parameterized==0.9.0; extra == "dev"
41
37
  Requires-Dist: pyelftools~=0.30; extra == "dev"
42
- Requires-Dist: black==22.6.0; python_version < "3.8" and extra == "dev"
43
- Requires-Dist: black==23.11.0; python_version >= "3.8" and extra == "dev"
44
- Requires-Dist: ruff==0.1.7; extra == "dev"
38
+ Requires-Dist: black==24.2.0; extra == "dev"
39
+ Requires-Dist: ruff==0.2.2; extra == "dev"
45
40
 
46
41
  ## Lambda Builders
47
42
 
@@ -5,5 +5,5 @@ AWS Lambda Builder Library
5
5
  # Changing version will trigger a new release!
6
6
  # Please make the version change as the last step of your development.
7
7
 
8
- __version__ = "1.45.0"
8
+ __version__ = "1.47.0"
9
9
  RPC_PROTOCOL_VERSION = "0.3"
@@ -1,5 +1,6 @@
1
1
  """
2
2
  Enum for determining type of architectures for Lambda Function.
3
3
  """
4
+
4
5
  X86_64 = "x86_64"
5
6
  ARM64 = "arm64"
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Common utilities for the library
3
3
  """
4
+
4
5
  import locale
5
6
  import logging
6
7
  import os
@@ -10,18 +10,14 @@ from aws_lambda_builders.exceptions import UnsupportedArchitectureError, Unsuppo
10
10
  LOG = logging.getLogger(__name__)
11
11
 
12
12
  SUPPORTED_RUNTIMES = {
13
- "nodejs12.x": [ARM64, X86_64],
14
- "nodejs14.x": [ARM64, X86_64],
15
13
  "nodejs16.x": [ARM64, X86_64],
16
14
  "nodejs18.x": [ARM64, X86_64],
17
15
  "nodejs20.x": [ARM64, X86_64],
18
- "python3.7": [X86_64],
19
16
  "python3.8": [ARM64, X86_64],
20
17
  "python3.9": [ARM64, X86_64],
21
18
  "python3.10": [ARM64, X86_64],
22
19
  "python3.11": [ARM64, X86_64],
23
20
  "python3.12": [ARM64, X86_64],
24
- "ruby2.7": [ARM64, X86_64],
25
21
  "ruby3.2": [ARM64, X86_64],
26
22
  "java8": [ARM64, X86_64],
27
23
  "java11": [ARM64, X86_64],
@@ -29,6 +25,7 @@ SUPPORTED_RUNTIMES = {
29
25
  "java21": [ARM64, X86_64],
30
26
  "go1.x": [ARM64, X86_64],
31
27
  "dotnet6": [ARM64, X86_64],
28
+ "dotnet8": [ARM64, X86_64],
32
29
  "provided": [ARM64, X86_64],
33
30
  }
34
31
 
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Implementation of a base workflow
3
3
  """
4
+
4
5
  import functools
5
6
  import logging
6
7
  import os
@@ -14,7 +14,6 @@ LOG = logging.getLogger(__name__)
14
14
 
15
15
 
16
16
  class CustomMakeAction(BaseAction):
17
-
18
17
  """
19
18
  A Lambda Builder Action that builds and packages a provided runtime project using Make.
20
19
  """
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Wrapper around calling make through a subprocess.
3
3
  """
4
+
4
5
  import io
5
6
  import logging
6
7
  import shutil
@@ -11,7 +12,6 @@ LOG = logging.getLogger(__name__)
11
12
 
12
13
 
13
14
  class MakeExecutionError(Exception):
14
-
15
15
  """
16
16
  Exception raised in case Make execution fails.
17
17
  It will pass on the standard error output from the Make console.
@@ -24,7 +24,6 @@ class MakeExecutionError(Exception):
24
24
 
25
25
 
26
26
  class SubProcessMake(object):
27
-
28
27
  """
29
28
  Wrapper around the Make command line utility, making it
30
29
  easy to consume execution results.
@@ -10,7 +10,6 @@ from aws_lambda_builders.utils import which
10
10
 
11
11
 
12
12
  class OSUtils(object):
13
-
14
13
  """
15
14
  Wrapper around file system functions, to make it easy to
16
15
  unit test actions in memory
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Commonly used utilities
3
3
  """
4
+
4
5
  import logging
5
6
  import os
6
7
  import platform
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Build a Go project using standard Go tooling
3
3
  """
4
+
4
5
  import logging
5
6
  from pathlib import Path
6
7
 
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Go Modules Workflow
3
3
  """
4
+
4
5
  from aws_lambda_builders.workflow import BaseWorkflow, BuildDirectory, BuildInSourceSupport, Capability
5
6
 
6
7
  from .actions import GoModulesBuildAction
@@ -31,7 +32,12 @@ class GoModulesWorkflow(BaseWorkflow):
31
32
  handler = options.get("artifact_executable_name", None)
32
33
  trim_go_path = options.get("trim_go_path", False)
33
34
 
34
- output_path = osutils.joinpath(artifacts_dir, handler)
35
+ # For provided runtimes, the binary must be named "bootstrap"
36
+ output_path = (
37
+ osutils.joinpath(artifacts_dir, handler)
38
+ if runtime != "provided"
39
+ else osutils.joinpath(artifacts_dir, "bootstrap")
40
+ )
35
41
 
36
42
  builder = GoModulesBuilder(
37
43
  osutils,
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Java Gradle Workflow
3
3
  """
4
+
4
5
  import hashlib
5
6
  import os
6
7
 
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Java Maven Workflow
3
3
  """
4
+
4
5
  from aws_lambda_builders.actions import CleanUpAction, CopySourceAction
5
6
  from aws_lambda_builders.workflow import BaseWorkflow, BuildDirectory, BuildInSourceSupport, Capability
6
7
  from aws_lambda_builders.workflows.java.actions import JavaCopyDependenciesAction, JavaMoveDependenciesAction
@@ -13,7 +13,6 @@ LOG = logging.getLogger(__name__)
13
13
 
14
14
 
15
15
  class NodejsNpmPackAction(BaseAction):
16
-
17
16
  """
18
17
  A Lambda Builder Action that packages a Node.js package using NPM to extract the source and remove test resources
19
18
  """
@@ -151,7 +150,6 @@ class NodejsNpmUpdateAction(NodejsNpmInstallOrUpdateBaseAction):
151
150
 
152
151
 
153
152
  class NodejsNpmCIAction(BaseAction):
154
-
155
153
  """
156
154
  A Lambda Builder Action that installs NPM project dependencies
157
155
  using the CI method - which is faster and better reproducible
@@ -201,7 +199,6 @@ class NodejsNpmCIAction(BaseAction):
201
199
 
202
200
 
203
201
  class NodejsNpmrcAndLockfileCopyAction(BaseAction):
204
-
205
202
  """
206
203
  A Lambda Builder Action that copies lockfile and NPM config file .npmrc
207
204
  """
@@ -247,7 +244,6 @@ class NodejsNpmrcAndLockfileCopyAction(BaseAction):
247
244
 
248
245
 
249
246
  class NodejsNpmrcCleanUpAction(BaseAction):
250
-
251
247
  """
252
248
  A Lambda Builder Action that cleans NPM config file .npmrc
253
249
  """
@@ -288,7 +284,6 @@ class NodejsNpmrcCleanUpAction(BaseAction):
288
284
 
289
285
 
290
286
  class NodejsNpmLockFileCleanUpAction(BaseAction):
291
-
292
287
  """
293
288
  A Lambda Builder Action that cleans up garbage lockfile left by 7 in node_modules
294
289
  """
@@ -2,7 +2,6 @@
2
2
  Exceptions for the Node.js workflow
3
3
  """
4
4
 
5
-
6
5
  from aws_lambda_builders.exceptions import LambdaBuilderError
7
6
 
8
7
 
@@ -10,7 +10,6 @@ LOG = logging.getLogger(__name__)
10
10
 
11
11
 
12
12
  class SubprocessNpm(object):
13
-
14
13
  """
15
14
  Wrapper around the NPM command line utility, making it
16
15
  easy to consume execution results.
@@ -10,7 +10,6 @@ import subprocess
10
10
 
11
11
 
12
12
  class OSUtils(object):
13
-
14
13
  """
15
14
  Wrapper around file system functions, to make it easy to
16
15
  unit test actions in memory
@@ -42,7 +42,6 @@ UNSUPPORTED_NPM_VERSION_MESSAGE = (
42
42
 
43
43
 
44
44
  class NodejsNpmWorkflow(BaseWorkflow):
45
-
46
45
  """
47
46
  A Lambda builder workflow that knows how to pack
48
47
  NodeJS projects using NPM.
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Wrapper around calling esbuild through a subprocess.
3
3
  """
4
+
4
5
  import logging
5
6
  from pathlib import Path
6
7
  from typing import Any, Callable, Dict, List, Union
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Esbuild specific exceptions
3
3
  """
4
+
4
5
  from aws_lambda_builders.actions import ActionFailedError
5
6
  from aws_lambda_builders.exceptions import LambdaBuilderError
6
7
 
@@ -30,7 +30,6 @@ LOG = logging.getLogger(__name__)
30
30
 
31
31
 
32
32
  class NodejsNpmEsbuildWorkflow(BaseWorkflow):
33
-
34
33
  """
35
34
  A Lambda builder workflow that uses esbuild to bundle Node.js and transpile TS
36
35
  NodeJS projects using NPM with esbuild.
@@ -49,7 +49,7 @@ def build_dependencies(artifacts_dir_path,
49
49
 
50
50
  :type runtime: str
51
51
  :param runtime: Python version to build dependencies for. This can
52
- either be python3.7, python3.8, python3.9, python3.10, python3.11 or python3.12. These are
52
+ either be python3.8, python3.9, python3.10, python3.11 or python3.12. These are
53
53
  currently the only supported values.
54
54
 
55
55
  :type ui: :class:`lambda_builders.actions.python_pip.utils.UI`
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Python pip specific workflow exceptions.
3
3
  """
4
+
4
5
  from aws_lambda_builders.exceptions import LambdaBuilderError
5
6
 
6
7
 
@@ -81,7 +81,6 @@ class UnsupportedPythonVersion(PackagerError):
81
81
 
82
82
  def get_lambda_abi(runtime):
83
83
  supported = {
84
- "python3.7": "cp37m",
85
84
  "python3.8": "cp38",
86
85
  "python3.9": "cp39",
87
86
  "python3.10": "cp310",
@@ -101,7 +100,7 @@ class PythonPipDependencyBuilder(object):
101
100
 
102
101
  :type runtime: str
103
102
  :param runtime: Python version to build dependencies for. This can
104
- either be python3.7, python3.8, python3.9, python3.10, python3.11 or python3.12. These are currently the
103
+ either be python3.8, python3.9, python3.10, python3.11 or python3.12. These are currently the
105
104
  only supported values.
106
105
 
107
106
  :type osutils: :class:`lambda_builders.utils.OSUtils`
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Python PIP Workflow
3
3
  """
4
+
4
5
  import logging
5
6
 
6
7
  from aws_lambda_builders.actions import CleanUpAction, CopySourceAction, LinkSourceAction
@@ -64,7 +64,7 @@ bundle install --deployment
64
64
 
65
65
  ### sam build --use-container
66
66
 
67
- This command would use some sort of container, such as `public.ecr.aws/sam/build-ruby2.7`.
67
+ This command would use some sort of container, such as `public.ecr.aws/sam/build-ruby3.2`.
68
68
 
69
69
  ```shell
70
70
  # exit with error if vendor/bundle and/or .bundle directory exists and is non-empty
@@ -12,7 +12,6 @@ LOG = logging.getLogger(__name__)
12
12
 
13
13
 
14
14
  class RubyBundlerInstallAction(BaseAction):
15
-
16
15
  """
17
16
  A Lambda Builder Action which runs bundle install in order to build a full Gemfile.lock
18
17
  """
@@ -9,7 +9,6 @@ import subprocess
9
9
 
10
10
 
11
11
  class OSUtils(object):
12
-
13
12
  """
14
13
  Wrapper around file system functions, to make it easy to
15
14
  unit test actions in memory
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Wrapper around calling Cargo Lambda through a subprocess.
3
3
  """
4
+
4
5
  import io
5
6
  import logging
6
7
  import os
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: aws_lambda_builders
3
- Version: 1.45.0
3
+ Version: 1.47.0
4
4
  Summary: Python library to compile, build & package AWS Lambda functions for several runtimes & frameworks.
5
5
  Home-page: https://github.com/awslabs/aws-lambda-builders
6
6
  Author: Amazon Web Services
@@ -15,7 +15,6 @@ Classifier: Intended Audience :: Information Technology
15
15
  Classifier: License :: OSI Approved :: Apache Software License
16
16
  Classifier: Operating System :: OS Independent
17
17
  Classifier: Programming Language :: Python
18
- Classifier: Programming Language :: Python :: 3.7
19
18
  Classifier: Programming Language :: Python :: 3.8
20
19
  Classifier: Programming Language :: Python :: 3.9
21
20
  Classifier: Programming Language :: Python :: 3.10
@@ -24,24 +23,20 @@ Classifier: Programming Language :: Python :: 3.12
24
23
  Classifier: Topic :: Internet
25
24
  Classifier: Topic :: Software Development :: Build Tools
26
25
  Classifier: Topic :: Utilities
27
- Requires-Python: >=3.7
26
+ Requires-Python: >=3.8
28
27
  License-File: LICENSE
29
28
  License-File: NOTICE
30
29
  Requires-Dist: setuptools
31
30
  Requires-Dist: wheel
32
31
  Provides-Extra: dev
33
- Requires-Dist: coverage==7.2.7; python_version < "3.8" and extra == "dev"
34
- Requires-Dist: coverage==7.3.2; python_version >= "3.8" and extra == "dev"
35
- Requires-Dist: flake8==3.3.0; python_version < "3.8" and extra == "dev"
36
- Requires-Dist: flake8==3.8.4; python_version >= "3.8" and extra == "dev"
32
+ Requires-Dist: coverage==7.4.3; extra == "dev"
33
+ Requires-Dist: flake8==3.8.4; extra == "dev"
37
34
  Requires-Dist: pytest-cov==4.1.0; extra == "dev"
38
- Requires-Dist: isort<5,>=4.2.5; python_version < "3.8" and extra == "dev"
39
35
  Requires-Dist: pytest>=6.1.1; extra == "dev"
40
36
  Requires-Dist: parameterized==0.9.0; extra == "dev"
41
37
  Requires-Dist: pyelftools~=0.30; extra == "dev"
42
- Requires-Dist: black==22.6.0; python_version < "3.8" and extra == "dev"
43
- Requires-Dist: black==23.11.0; python_version >= "3.8" and extra == "dev"
44
- Requires-Dist: ruff==0.1.7; extra == "dev"
38
+ Requires-Dist: black==24.2.0; extra == "dev"
39
+ Requires-Dist: ruff==0.2.2; extra == "dev"
45
40
 
46
41
  ## Lambda Builders
47
42
 
@@ -0,0 +1,12 @@
1
+ setuptools
2
+ wheel
3
+
4
+ [dev]
5
+ coverage==7.4.3
6
+ flake8==3.8.4
7
+ pytest-cov==4.1.0
8
+ pytest>=6.1.1
9
+ parameterized==0.9.0
10
+ pyelftools~=0.30
11
+ black==24.2.0
12
+ ruff==0.2.2
@@ -0,0 +1,12 @@
1
+ coverage==7.4.3
2
+ flake8==3.8.4
3
+ pytest-cov==4.1.0
4
+
5
+ # Test requirements
6
+ pytest>=6.1.1
7
+ parameterized==0.9.0
8
+ pyelftools~=0.30 # Used to verify the generated Go binary architecture in integration tests (utils.py)
9
+
10
+ # formatter
11
+ black==24.2.0
12
+ ruff==0.2.2
@@ -43,8 +43,8 @@ setup(
43
43
  license="Apache License 2.0",
44
44
  packages=find_packages(exclude=["tests.*", "tests"]),
45
45
  keywords="AWS Lambda Functions Building",
46
- # Support 3.7 or greater
47
- python_requires=(">=3.7"),
46
+ # Support 3.8 or greater
47
+ python_requires=(">=3.8"),
48
48
  entry_points={"console_scripts": ["{}=aws_lambda_builders.__main__:main".format(cmd_name)]},
49
49
  install_requires=read_requirements("base.txt") + read_requirements("python_pip.txt"),
50
50
  extras_require={"dev": read_requirements("dev.txt")},
@@ -58,7 +58,6 @@ setup(
58
58
  "License :: OSI Approved :: Apache Software License",
59
59
  "Operating System :: OS Independent",
60
60
  "Programming Language :: Python",
61
- "Programming Language :: Python :: 3.7",
62
61
  "Programming Language :: Python :: 3.8",
63
62
  "Programming Language :: Python :: 3.9",
64
63
  "Programming Language :: Python :: 3.10",
@@ -1,20 +0,0 @@
1
- setuptools
2
- wheel
3
-
4
- [dev]
5
- pytest-cov==4.1.0
6
- pytest>=6.1.1
7
- parameterized==0.9.0
8
- pyelftools~=0.30
9
- ruff==0.1.7
10
-
11
- [dev:python_version < "3.8"]
12
- coverage==7.2.7
13
- flake8==3.3.0
14
- isort<5,>=4.2.5
15
- black==22.6.0
16
-
17
- [dev:python_version >= "3.8"]
18
- coverage==7.3.2
19
- flake8==3.8.4
20
- black==23.11.0
@@ -1,17 +0,0 @@
1
- coverage==7.2.7; python_version < '3.8'
2
- coverage==7.3.2; python_version >= '3.8'
3
- flake8==3.3.0; python_version < '3.8'
4
- flake8==3.8.4; python_version >= '3.8'
5
- pytest-cov==4.1.0
6
-
7
- isort>=4.2.5,<5; python_version < '3.8'
8
-
9
- # Test requirements
10
- pytest>=6.1.1
11
- parameterized==0.9.0
12
- pyelftools~=0.30 # Used to verify the generated Go binary architecture in integration tests (utils.py)
13
-
14
- # formatter
15
- black==22.6.0; python_version < "3.8"
16
- black==23.11.0; python_version >= "3.8"
17
- ruff==0.1.7
@@ -1,6 +1,7 @@
1
1
  """
2
2
  ProvidedMakeWorkflow
3
3
  """
4
+
4
5
  from aws_lambda_builders.actions import CopySourceAction
5
6
  from aws_lambda_builders.path_resolver import PathResolver
6
7
  from aws_lambda_builders.workflow import BaseWorkflow, BuildDirectory, BuildInSourceSupport, Capability
@@ -13,7 +14,6 @@ from .utils import OSUtils
13
14
 
14
15
 
15
16
  class CustomMakeWorkflow(BaseWorkflow):
16
-
17
17
  """
18
18
  A Lambda builder workflow for provided runtimes based on make.
19
19
  """
@@ -1,6 +1,7 @@
1
1
  """
2
2
  .NET Core CLI Package Workflow
3
3
  """
4
+
4
5
  from aws_lambda_builders.workflow import BaseWorkflow, BuildDirectory, BuildInSourceSupport, Capability
5
6
 
6
7
  from .actions import GlobalToolInstallAction, RunPackageAction
@@ -10,7 +11,6 @@ from .utils import OSUtils
10
11
 
11
12
 
12
13
  class DotnetCliPackageWorkflow(BaseWorkflow):
13
-
14
14
  """
15
15
  A Lambda builder workflow that knows to build and package .NET Core Lambda functions
16
16
  """
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Actions specific to the esbuild bundler
3
3
  """
4
+
4
5
  import logging
5
6
  from typing import Any, Dict
6
7
 
@@ -17,7 +18,6 @@ MINIMUM_VERSION_FOR_EXTERNAL = "0.14.13"
17
18
 
18
19
 
19
20
  class EsbuildBundleAction(BaseAction):
20
-
21
21
  """
22
22
  A Lambda Builder Action that packages a Node.js package using esbuild into a single file
23
23
  optionally transpiling TypeScript
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Ruby Bundler Workflow
3
3
  """
4
+
4
5
  import logging
5
6
 
6
7
  from aws_lambda_builders.actions import CleanUpAction, CopyDependenciesAction, CopySourceAction
@@ -14,7 +15,6 @@ LOG = logging.getLogger(__name__)
14
15
 
15
16
 
16
17
  class RubyBundlerWorkflow(BaseWorkflow):
17
-
18
18
  """
19
19
  A Lambda builder workflow that knows how to build
20
20
  Ruby projects using Bundler.