Skip to content

Maintenance spec align 2026 08 12 - #291

Merged
ghukill merged 5 commits into
mainfrom
maintenance-spec-align-2026-08-12
Aug 18, 2026
Merged

ghukill merged 5 commits into
mainfrom
maintenance-spec-align-2026-08-12

Conversation

@ghukill

@ghukill ghukill commented Aug 18, 2026 •

Copy link
Copy Markdown
Contributor

Purpose and background context

This PR migrates this application from pipenv to uv, and aligns with our current python projects specification.

I have intentionally left out the .aws-architecture for this migration pass. Will return to that when time to coorindate with InfraEng.

How can a reviewer manually see the effects of these changes?

1- Build SAM docker image, ensuring a tests/sam/env.json exists per these instructions:

make sam-build

2- Set Dev1 admin credentials in terminal

3- Start a server that handles HTTP lambda requests:

make sam-http-run

4- From a new terminal, issue a POST request that mimics an HTTP request an application like ETD might make:

curl --fail-with-body --silent --show-error \
  -X POST http://localhost:3000/apt \
  -H 'Content-Type: application/json' \
  --data '{
    "action": "create-bagit-zip",
    "challenge_secret": "totally-local-archival-packaging",
    "verbose": true,
    "metadata": {
      "Contact-Name": "Test Contact",
      "External-Identifier": "mabel-test-001"
    },
    "input_files": [
      {
        "uri": "s3://archival-packaging-tool-test-bucket-dev/mabel_hose.jpeg",
        "filepath": "mabel_hose.jpeg"
      }
    ],
    "checksums_to_generate": ["md5", "sha256"],
    "output_zip_s3_uri": "s3://archival-packaging-tool-test-bucket-dev/mabel.zip",
    "compress_zip": true
  }'

Expect successful output like this:

{
  "success": true,
  "error": null,
  "elapsed": 1.3970177090000107,
  "bag": {
    "entries": {
      "data/mabel_hose.jpeg": {
        "sha256": "3b7e62b7d838a02999f7f36e198ea8058eb32670ff4ee34f311bf9e7e2c5839c",
        "md5": "543130eecac609f8aecce9f792f51027"
      },
      "manifest-md5.txt": {
        "sha256": "e818674ab41ccd0d8caaee666dc5193676b5b1d45cb871b96a56d412b3fa0a1a",
        "md5": "59855ca0d26c76bbba7025c3c4b2dba0"
      },
      "bag-info.txt": {
        "sha256": "0ebdd38c6cb760b005592552738c1143ee04e8394ef4b22c031b9217339da8ba",
        "md5": "37194c291cc666ffe638fccb22de2816"
      },
      "bagit.txt": {
        "sha256": "e91f941be5973ff71f1dccbdd1a32d598881893a7f21be516aca743da38b1689",
        "md5": "9e5ad981e0d29adc278f6a294b8c2aca"
      },
      "manifest-sha256.txt": {
        "sha256": "dd5e7553b905f271697cf4581f28decc614169ab8057454ad093a250d086eb1c",
        "md5": "8a9c4e0110e4eaff63d3e5fb409d1d1b"
      }
    }
  }
}

Includes new or updated dependencies?

YES

Changes expectations for external applications?

NO

What are the relevant tickets?

  • None

Code review

  • Code review best practices are documented
    here
    and you are encouraged to have a constructive dialogue with your reviewers
    about their preferences and expectations.

Why these changes are being introduced:

This project was still a pipenv project.  It also had not been aligned with the
relatively new python projects specification: https://github.com/MITLibraries/spec-python-projects.

How this addresses that need:

A full update of the application from pipenv to uv is applied.

At this time, the `.aws-architecture` file has not been created, so this
application continues to default to amd64, and thus fails this part
of the specification.

Side effects of this change:
* None

Relevant ticket(s):
* None
@ghukill
ghukill marked this pull request as ready for review August 18, 2026 13:35
@ghukill
ghukill requested review from a team as code owners August 18, 2026 13:35
@ghukill
ghukill removed the request for review from a team August 18, 2026 13:36

@ehanson8 ehanson8 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works as expected, approved!

@ghukill
ghukill merged commit a8cb727 into main Aug 18, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants