repro-lambda 0.2.0__tar.gz → 0.2.1__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.
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/.github/workflows/build.yml +4 -7
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/CHANGELOG.md +12 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/PKG-INFO +4 -4
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/README.md +3 -3
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/SETUP.md +2 -2
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/pyproject.toml +1 -1
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/__init__.py +1 -1
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_cli_smoke.py +1 -1
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/uv.lock +1 -1
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/.github/workflows/ci.yml +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/.github/workflows/publish.yml +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/.gitignore +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/.pre-commit-config.yaml +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/LICENSE +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/__main__.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/build.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/catalog.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/cli.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/docker_runner.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/git_guard.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/hasher.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/manifest.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/s3_uploader.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/source_stager.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/verify.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/src/repro_lambda/zip_packager.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/__init__.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/conftest.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/fixtures/sample_nodejs_lambda/handler/index.js +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/fixtures/sample_nodejs_lambda/handler/package-lock.json +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/fixtures/sample_nodejs_lambda/handler/package.json +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/fixtures/sample_nodejs_lambda/lambdas.toml +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/fixtures/sample_python_lambda/handler/app.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/fixtures/sample_python_lambda/handler/requirements.arm64.lock +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/fixtures/sample_python_lambda/handler/requirements.in +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/fixtures/sample_python_lambda/lambdas.toml +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_build_integration.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_build_nodejs.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_catalog.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_cli_build.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_cli_lock.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_docker_runner.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_docker_runner_nodejs.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_e2e_nodejs_lambda.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_e2e_python_lambda.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_git_guard.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_hasher.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_manifest.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_python_byte_compat_regression.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_s3_uploader.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_source_stager.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_verify.py +0 -0
- {repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/test_zip_packager.py +0 -0
|
@@ -9,7 +9,7 @@ on:
|
|
|
9
9
|
description: Path to lambdas.toml in the caller repo.
|
|
10
10
|
repro_lambda_version:
|
|
11
11
|
type: string
|
|
12
|
-
default: "0.2.
|
|
12
|
+
default: "0.2.1"
|
|
13
13
|
description: Pinned repro-lambda PyPI version.
|
|
14
14
|
secrets:
|
|
15
15
|
aws-dev-role-arn:
|
|
@@ -55,9 +55,6 @@ jobs:
|
|
|
55
55
|
- uses: actions/checkout@v4
|
|
56
56
|
- uses: astral-sh/setup-uv@v3
|
|
57
57
|
|
|
58
|
-
- name: Install repro-lambda
|
|
59
|
-
run: uv pip install --system "repro-lambda==${{ inputs.repro_lambda_version }}"
|
|
60
|
-
|
|
61
58
|
- name: Configure AWS credentials (dev)
|
|
62
59
|
uses: aws-actions/configure-aws-credentials@v4
|
|
63
60
|
with:
|
|
@@ -67,11 +64,11 @@ jobs:
|
|
|
67
64
|
- name: Build (dev bucket)
|
|
68
65
|
env:
|
|
69
66
|
REPRO_LAMBDA_BUCKET: dev-ctf-lambda-artifacts
|
|
70
|
-
run: repro-lambda build --manifest "${{ inputs.manifest_path }}"
|
|
67
|
+
run: uvx --from "repro-lambda==${{ inputs.repro_lambda_version }}" repro-lambda build --manifest "${{ inputs.manifest_path }}"
|
|
71
68
|
|
|
72
69
|
- name: Verify reproducible (PR only)
|
|
73
70
|
if: github.event_name == 'pull_request'
|
|
74
|
-
run: repro-lambda build --manifest "${{ inputs.manifest_path }}" --verify --dry-run
|
|
71
|
+
run: uvx --from "repro-lambda==${{ inputs.repro_lambda_version }}" repro-lambda build --manifest "${{ inputs.manifest_path }}" --verify --dry-run
|
|
75
72
|
|
|
76
73
|
- name: Configure AWS credentials (prod)
|
|
77
74
|
if: github.ref == 'refs/heads/master' && secrets.aws-prod-role-arn != ''
|
|
@@ -84,7 +81,7 @@ jobs:
|
|
|
84
81
|
if: github.ref == 'refs/heads/master' && secrets.aws-prod-role-arn != ''
|
|
85
82
|
env:
|
|
86
83
|
REPRO_LAMBDA_BUCKET: prod-ctf-lambda-artifacts
|
|
87
|
-
run: repro-lambda build --manifest "${{ inputs.manifest_path }}"
|
|
84
|
+
run: uvx --from "repro-lambda==${{ inputs.repro_lambda_version }}" repro-lambda build --manifest "${{ inputs.manifest_path }}"
|
|
88
85
|
|
|
89
86
|
- name: Commit catalog drift (master only, dev bot)
|
|
90
87
|
if: github.ref == 'refs/heads/master'
|
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v0.2.1 - 2026-05-27
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
- CI workflow: `uvx --from "repro-lambda==<v>" repro-lambda <args>` replaces `uv pip install --system "repro-lambda==<v>"`. uv 0.11+ deprecates the `uv pip` legacy interface for install/uninstall/sync.
|
|
7
|
+
|
|
8
|
+
### Docs
|
|
9
|
+
- README install instruction switches to `uv tool install repro-lambda` (plus `uvx repro-lambda` ephemeral alternative).
|
|
10
|
+
- SETUP.md examples bumped to `@v0.2.1` / `repro_lambda_version: "0.2.1"`.
|
|
11
|
+
|
|
12
|
+
### Consumer migration
|
|
13
|
+
- Consumer repos must bump their workflow ref to `uses: antonbabenko/repro-lambda/.github/workflows/build.yml@v0.2.1` to receive the uvx-based install. The v0.2.0 workflow ref still works but invokes the deprecated install command.
|
|
14
|
+
|
|
3
15
|
## v0.2.0 - 2026-05-27
|
|
4
16
|
|
|
5
17
|
### Added
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: repro-lambda
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: Build reproducible AWS Lambda packages outside Terraform, optimized for terraform-aws-lambda by serverless.tf.
|
|
5
5
|
Project-URL: Homepage, https://github.com/antonbabenko/repro-lambda
|
|
6
6
|
Project-URL: Repository, https://github.com/antonbabenko/repro-lambda
|
|
@@ -54,10 +54,10 @@ See `docs/` for full design.
|
|
|
54
54
|
|
|
55
55
|
## Release
|
|
56
56
|
|
|
57
|
-
Releases are tag-driven. To cut v0.
|
|
57
|
+
Releases are tag-driven. To cut v0.2.1:
|
|
58
58
|
|
|
59
|
-
git tag v0.
|
|
60
|
-
git push origin v0.
|
|
59
|
+
git tag v0.2.1
|
|
60
|
+
git push origin v0.2.1
|
|
61
61
|
|
|
62
62
|
The `publish.yml` workflow uses PyPI Trusted Publishing (OIDC) — no PyPI token
|
|
63
63
|
needed in repo secrets. Configure once via PyPI's "Publishing" panel:
|
|
@@ -22,10 +22,10 @@ See `docs/` for full design.
|
|
|
22
22
|
|
|
23
23
|
## Release
|
|
24
24
|
|
|
25
|
-
Releases are tag-driven. To cut v0.
|
|
25
|
+
Releases are tag-driven. To cut v0.2.1:
|
|
26
26
|
|
|
27
|
-
git tag v0.
|
|
28
|
-
git push origin v0.
|
|
27
|
+
git tag v0.2.1
|
|
28
|
+
git push origin v0.2.1
|
|
29
29
|
|
|
30
30
|
The `publish.yml` workflow uses PyPI Trusted Publishing (OIDC) — no PyPI token
|
|
31
31
|
needed in repo secrets. Configure once via PyPI's "Publishing" panel:
|
|
@@ -260,10 +260,10 @@ on:
|
|
|
260
260
|
|
|
261
261
|
jobs:
|
|
262
262
|
build:
|
|
263
|
-
uses: antonbabenko/repro-lambda/.github/workflows/build.yml@v0.1
|
|
263
|
+
uses: antonbabenko/repro-lambda/.github/workflows/build.yml@v0.2.1
|
|
264
264
|
with:
|
|
265
265
|
manifest_path: lambdas.toml
|
|
266
|
-
repro_lambda_version: "0.1
|
|
266
|
+
repro_lambda_version: "0.2.1"
|
|
267
267
|
secrets:
|
|
268
268
|
aws-dev-role-arn: ${{ secrets.AWS_DEV_ROLE_ARN }}
|
|
269
269
|
aws-prod-role-arn: ${{ secrets.AWS_PROD_ROLE_ARN }}
|
|
@@ -8,7 +8,7 @@ runner = CliRunner()
|
|
|
8
8
|
def test_cli_version_shows_package_version():
|
|
9
9
|
result = runner.invoke(app, ["--version"])
|
|
10
10
|
assert result.exit_code == 0
|
|
11
|
-
assert "0.2.
|
|
11
|
+
assert "0.2.1" in result.stdout
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
def test_cli_build_subcommand_exists():
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/fixtures/sample_nodejs_lambda/handler/index.js
RENAMED
|
File without changes
|
|
File without changes
|
{repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/fixtures/sample_nodejs_lambda/handler/package.json
RENAMED
|
File without changes
|
|
File without changes
|
{repro_lambda-0.2.0 → repro_lambda-0.2.1}/tests/fixtures/sample_python_lambda/handler/app.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|