aws-lambda-builders 1.43.0__tar.gz → 1.45.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 (106) hide show
  1. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/PKG-INFO +16 -2
  2. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/__init__.py +1 -1
  3. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/python_pip/actions.py +9 -2
  4. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/python_pip/packager.py +19 -12
  5. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/python_pip/utils.py +0 -3
  6. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders.egg-info/PKG-INFO +17 -3
  7. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders.egg-info/requires.txt +1 -1
  8. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/requirements/dev.txt +1 -1
  9. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/LICENSE +0 -0
  10. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/MANIFEST.in +0 -0
  11. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/NOTICE +0 -0
  12. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/README.md +0 -0
  13. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/__main__.py +0 -0
  14. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/actions.py +0 -0
  15. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/architecture.py +0 -0
  16. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/binary_path.py +0 -0
  17. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/builder.py +0 -0
  18. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/exceptions.py +0 -0
  19. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/path_resolver.py +0 -0
  20. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/registry.py +0 -0
  21. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/utils.py +0 -0
  22. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/validator.py +0 -0
  23. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflow.py +0 -0
  24. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/__init__.py +0 -0
  25. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/custom_make/DESIGN.md +0 -0
  26. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/custom_make/__init__.py +0 -0
  27. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/custom_make/actions.py +0 -0
  28. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/custom_make/exceptions.py +0 -0
  29. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/custom_make/make.py +0 -0
  30. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/custom_make/utils.py +0 -0
  31. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/custom_make/validator.py +0 -0
  32. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/custom_make/workflow.py +0 -0
  33. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/dotnet_clipackage/DESIGN.md +0 -0
  34. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/dotnet_clipackage/__init__.py +0 -0
  35. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/dotnet_clipackage/actions.py +0 -0
  36. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/dotnet_clipackage/dotnetcli.py +0 -0
  37. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/dotnet_clipackage/dotnetcli_resolver.py +0 -0
  38. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/dotnet_clipackage/utils.py +0 -0
  39. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/dotnet_clipackage/workflow.py +0 -0
  40. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/go_modules/DESIGN.md +0 -0
  41. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/go_modules/__init__.py +0 -0
  42. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/go_modules/actions.py +0 -0
  43. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/go_modules/builder.py +0 -0
  44. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/go_modules/utils.py +0 -0
  45. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/go_modules/validator.py +0 -0
  46. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/go_modules/workflow.py +0 -0
  47. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java/__init__.py +0 -0
  48. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java/actions.py +0 -0
  49. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java/utils.py +0 -0
  50. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_gradle/DESIGN.md +0 -0
  51. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_gradle/__init__.py +0 -0
  52. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_gradle/actions.py +0 -0
  53. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_gradle/gradle.py +0 -0
  54. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_gradle/gradle_resolver.py +0 -0
  55. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_gradle/gradle_validator.py +0 -0
  56. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_gradle/resources/lambda-build-init.gradle +0 -0
  57. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_gradle/workflow.py +0 -0
  58. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_maven/DESIGN.md +0 -0
  59. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_maven/__init__.py +0 -0
  60. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_maven/actions.py +0 -0
  61. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_maven/maven.py +0 -0
  62. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_maven/maven_resolver.py +0 -0
  63. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_maven/maven_validator.py +0 -0
  64. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/java_maven/workflow.py +0 -0
  65. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm/DESIGN.md +0 -0
  66. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm/__init__.py +0 -0
  67. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm/actions.py +0 -0
  68. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm/exceptions.py +0 -0
  69. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm/npm.py +0 -0
  70. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm/utils.py +0 -0
  71. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm/workflow.py +0 -0
  72. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/DESIGN.md +0 -0
  73. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/__init__.py +0 -0
  74. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/actions.py +0 -0
  75. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/esbuild.py +0 -0
  76. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/exceptions.py +0 -0
  77. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/nodejs_npm_esbuild/workflow.py +0 -0
  78. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/python_pip/DESIGN.md +0 -0
  79. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/python_pip/__init__.py +0 -0
  80. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/python_pip/compat.py +0 -0
  81. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/python_pip/exceptions.py +0 -0
  82. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/python_pip/validator.py +0 -0
  83. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/python_pip/workflow.py +0 -0
  84. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/ruby_bundler/DESIGN.md +0 -0
  85. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/ruby_bundler/__init__.py +0 -0
  86. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/ruby_bundler/actions.py +0 -0
  87. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/ruby_bundler/bundler.py +0 -0
  88. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/ruby_bundler/utils.py +0 -0
  89. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/ruby_bundler/workflow.py +0 -0
  90. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/rust_cargo/DESIGN.md +0 -0
  91. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/rust_cargo/__init__.py +0 -0
  92. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/rust_cargo/actions.py +0 -0
  93. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/rust_cargo/cargo_lambda.py +0 -0
  94. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/rust_cargo/exceptions.py +0 -0
  95. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/rust_cargo/feature_flag.py +0 -0
  96. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/rust_cargo/utils.py +0 -0
  97. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders/workflows/rust_cargo/workflow.py +0 -0
  98. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders.egg-info/SOURCES.txt +0 -0
  99. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders.egg-info/dependency_links.txt +0 -0
  100. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders.egg-info/entry_points.txt +0 -0
  101. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/aws_lambda_builders.egg-info/top_level.txt +0 -0
  102. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/pyproject.toml +0 -0
  103. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/requirements/base.txt +0 -0
  104. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/requirements/python_pip.txt +0 -0
  105. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/setup.cfg +0 -0
  106. {aws_lambda_builders-1.43.0 → aws_lambda_builders-1.45.0}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: aws_lambda_builders
3
- Version: 1.43.0
3
+ Version: 1.45.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
@@ -25,9 +25,23 @@ Classifier: Topic :: Internet
25
25
  Classifier: Topic :: Software Development :: Build Tools
26
26
  Classifier: Topic :: Utilities
27
27
  Requires-Python: >=3.7
28
- Provides-Extra: dev
29
28
  License-File: LICENSE
30
29
  License-File: NOTICE
30
+ Requires-Dist: setuptools
31
+ Requires-Dist: wheel
32
+ 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"
37
+ 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
+ Requires-Dist: pytest>=6.1.1; extra == "dev"
40
+ Requires-Dist: parameterized==0.9.0; extra == "dev"
41
+ 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"
31
45
 
32
46
  ## Lambda Builders
33
47
 
@@ -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.43.0"
8
+ __version__ = "1.45.0"
9
9
  RPC_PROTOCOL_VERSION = "0.3"
@@ -49,11 +49,18 @@ class PythonPipBuildAction(BaseAction):
49
49
  pip_runner = PipRunner(python_exe=python_with_pip, pip=pip)
50
50
 
51
51
  dependency_builder = DependencyBuilder(
52
- osutils=self._os_utils, pip_runner=pip_runner, runtime=self.runtime, architecture=self.architecture
52
+ osutils=self._os_utils,
53
+ python_exe=python_with_pip,
54
+ pip_runner=pip_runner,
55
+ runtime=self.runtime,
56
+ architecture=self.architecture,
53
57
  )
54
58
 
55
59
  package_builder = PythonPipDependencyBuilder(
56
- osutils=self._os_utils, runtime=self.runtime, dependency_builder=dependency_builder
60
+ osutils=self._os_utils,
61
+ runtime=self.runtime,
62
+ python_exe=python_with_pip,
63
+ dependency_builder=dependency_builder,
57
64
  )
58
65
  try:
59
66
  target_artifact_dir = self.artifacts_dir
@@ -5,7 +5,6 @@ Installs packages using PIP
5
5
  import logging
6
6
  import re
7
7
  import subprocess
8
- import sys
9
8
  from email.parser import FeedParser
10
9
  from typing import Tuple
11
10
 
@@ -97,7 +96,7 @@ def get_lambda_abi(runtime):
97
96
 
98
97
 
99
98
  class PythonPipDependencyBuilder(object):
100
- def __init__(self, runtime, osutils=None, dependency_builder=None, architecture=X86_64):
99
+ def __init__(self, runtime, python_exe, osutils=None, dependency_builder=None, architecture=X86_64):
101
100
  """Initialize a PythonPipDependencyBuilder.
102
101
 
103
102
  :type runtime: str
@@ -122,7 +121,7 @@ class PythonPipDependencyBuilder(object):
122
121
  self.osutils = OSUtils()
123
122
 
124
123
  if dependency_builder is None:
125
- dependency_builder = DependencyBuilder(self.osutils, runtime, architecture=architecture)
124
+ dependency_builder = DependencyBuilder(self.osutils, python_exe, runtime, architecture=architecture)
126
125
  self._dependency_builder = dependency_builder
127
126
 
128
127
  def build_dependencies(self, artifacts_dir_path, scratch_dir_path, requirements_path, ui=None, config=None):
@@ -211,7 +210,7 @@ class DependencyBuilder(object):
211
210
  # Unlikely to hit this case.
212
211
  _DEFAULT_GLIBC = (2, 17)
213
212
 
214
- def __init__(self, osutils, runtime, pip_runner=None, architecture=X86_64):
213
+ def __init__(self, osutils, runtime, python_exe, pip_runner=None, architecture=X86_64):
215
214
  """Initialize a DependencyBuilder.
216
215
 
217
216
  :type osutils: :class:`lambda_builders.utils.OSUtils`
@@ -229,8 +228,9 @@ class DependencyBuilder(object):
229
228
  :param architecture: Architecture to build for.
230
229
  """
231
230
  self._osutils = osutils
231
+ self.python_exe = python_exe
232
232
  if pip_runner is None:
233
- pip_runner = PipRunner(python_exe=None, pip=SubprocessPip(osutils))
233
+ pip_runner = PipRunner(python_exe=python_exe, pip=SubprocessPip(osutils))
234
234
  self._pip = pip_runner
235
235
  self.runtime = runtime
236
236
  self.architecture = architecture
@@ -364,7 +364,10 @@ class DependencyBuilder(object):
364
364
  # which will serve as the primary list of dependencies needed to deploy
365
365
  # successfully.
366
366
  self._pip.download_all_dependencies(requirements_filename, directory)
367
- deps = {Package(directory, filename) for filename in self._osutils.get_directory_contents(directory)}
367
+ deps = {
368
+ Package(directory, filename, self.python_exe)
369
+ for filename in self._osutils.get_directory_contents(directory)
370
+ }
368
371
  LOG.debug("Full dependency closure: %s", deps)
369
372
  return deps
370
373
 
@@ -383,7 +386,7 @@ class DependencyBuilder(object):
383
386
 
384
387
  def _categorize_wheel_files(self, directory):
385
388
  final_wheels = [
386
- Package(directory, filename)
389
+ Package(directory, filename, self.python_exe)
387
390
  for filename in self._osutils.get_directory_contents(directory)
388
391
  if filename.endswith(".whl")
389
392
  ]
@@ -506,13 +509,14 @@ class DependencyBuilder(object):
506
509
  class Package(object):
507
510
  """A class to represent a package downloaded but not yet installed."""
508
511
 
509
- def __init__(self, directory, filename, osutils=None):
512
+ def __init__(self, directory, filename, python_exe, osutils=None):
510
513
  self.dist_type = "wheel" if filename.endswith(".whl") else "sdist"
511
514
  self._directory = directory
512
515
  self.filename = filename
513
516
  if osutils is None:
514
517
  osutils = OSUtils()
515
518
  self._osutils = osutils
519
+ self.python_exe = python_exe
516
520
  self._name, self._version = self._calculate_name_and_version()
517
521
 
518
522
  @property
@@ -553,7 +557,7 @@ class Package(object):
553
557
  # {platform tag}.whl
554
558
  name, version = self.filename.split("-")[:2]
555
559
  else:
556
- info_fetcher = SDistMetadataFetcher(osutils=self._osutils)
560
+ info_fetcher = SDistMetadataFetcher(self.python_exe, osutils=self._osutils)
557
561
  sdist_path = self._osutils.joinpath(self._directory, self.filename)
558
562
  name, version = info_fetcher.get_package_name_and_version(sdist_path)
559
563
  normalized_name = self._normalize_name(name)
@@ -572,10 +576,11 @@ class SDistMetadataFetcher(object):
572
576
  "exec(compile(code, __file__, 'exec'))"
573
577
  )
574
578
 
575
- def __init__(self, osutils=None):
579
+ def __init__(self, python_exe, osutils=None):
576
580
  if osutils is None:
577
581
  osutils = OSUtils()
578
582
  self._osutils = osutils
583
+ self.python_exe = python_exe
579
584
 
580
585
  def _parse_pkg_info_file(self, filepath):
581
586
  # The PKG-INFO generated by the egg-info command is in an email feed
@@ -590,7 +595,7 @@ class SDistMetadataFetcher(object):
590
595
  setup_py = self._osutils.joinpath(package_dir, "setup.py")
591
596
  script = self._SETUPTOOLS_SHIM % setup_py
592
597
 
593
- cmd = [sys.executable, "-c", script, "--no-user-cfg", "egg_info", "--egg-base", "egg-info"]
598
+ cmd = [self.python_exe, "-c", script, "--no-user-cfg", "egg_info", "--egg-base", "egg-info"]
594
599
  egg_info_dir = self._osutils.joinpath(package_dir, "egg-info")
595
600
  self._osutils.makedirs(egg_info_dir)
596
601
  p = subprocess.Popen(
@@ -767,12 +772,14 @@ class PipRunner(object):
767
772
  main_args = [command] + args
768
773
  LOG.debug("calling pip %s", " ".join(main_args))
769
774
  rc, out, err = self._wrapped_pip.main(main_args, env_vars=env_vars, shim=shim)
775
+ LOG.debug("pip stdout: %s", out)
776
+ LOG.debug("pip stderr: %s", err)
770
777
  return rc, out, err
771
778
 
772
779
  def build_wheel(self, wheel, directory, compile_c=True):
773
780
  """Build an sdist into a wheel file."""
774
781
  arguments = ["--no-deps", "--wheel-dir", directory, wheel]
775
- env_vars = self._osutils.environ()
782
+ env_vars = self._osutils.original_environ()
776
783
  shim = ""
777
784
  if not compile_c:
778
785
  env_vars.update(pip_no_compile_c_env_vars)
@@ -16,9 +16,6 @@ EXPERIMENTAL_FLAG_BUILD_PERFORMANCE = "experimentalBuildPerformance"
16
16
 
17
17
 
18
18
  class OSUtils(object):
19
- def environ(self):
20
- return os.environ
21
-
22
19
  def original_environ(self):
23
20
  # https://pyinstaller.readthedocs.io/en/stable/runtime-information.html#ld-library-path-libpath-considerations
24
21
  env = dict(os.environ)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
- Name: aws-lambda-builders
3
- Version: 1.43.0
2
+ Name: aws_lambda_builders
3
+ Version: 1.45.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
@@ -25,9 +25,23 @@ Classifier: Topic :: Internet
25
25
  Classifier: Topic :: Software Development :: Build Tools
26
26
  Classifier: Topic :: Utilities
27
27
  Requires-Python: >=3.7
28
- Provides-Extra: dev
29
28
  License-File: LICENSE
30
29
  License-File: NOTICE
30
+ Requires-Dist: setuptools
31
+ Requires-Dist: wheel
32
+ 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"
37
+ 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
+ Requires-Dist: pytest>=6.1.1; extra == "dev"
40
+ Requires-Dist: parameterized==0.9.0; extra == "dev"
41
+ 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"
31
45
 
32
46
  ## Lambda Builders
33
47
 
@@ -6,7 +6,7 @@ pytest-cov==4.1.0
6
6
  pytest>=6.1.1
7
7
  parameterized==0.9.0
8
8
  pyelftools~=0.30
9
- ruff==0.1.5
9
+ ruff==0.1.7
10
10
 
11
11
  [dev:python_version < "3.8"]
12
12
  coverage==7.2.7
@@ -14,4 +14,4 @@ pyelftools~=0.30 # Used to verify the generated Go binary architecture in integr
14
14
  # formatter
15
15
  black==22.6.0; python_version < "3.8"
16
16
  black==23.11.0; python_version >= "3.8"
17
- ruff==0.1.5
17
+ ruff==0.1.7