Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: azu/dockerfile-pin
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.2.2
Choose a base ref
...
head repository: azu/dockerfile-pin
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v1.3.0
Choose a head ref
  • 2 commits
  • 5 files changed
  • 4 contributors

Commits on Apr 23, 2026

  1. feat: add --min-age flag and -u shorthand for --update (#44)

    ## Summary
    
    - Add `--min-age N` flag to skip images built within the last N days,
    acting as a cooldown period for digest pinning
    - Add `-u` as a shorthand for `--update`
    - Support `min-age` in `.dockerfile-pin.yaml` configuration file
    
    ### How `--min-age` works
    
    Uses the image's OCI config `Created` field to determine build date.
    When active, uses a combined `remote.Image` call to resolve both digest
    and creation time in a single operation (no extra HEAD request).
    
    - `--min-age 0` (default): no filtering
    - `--min-age 7`: skip images built within the last 7 days
    - Images with no creation timestamp (e.g., reproducible builds) are not
    skipped
    
    ### Limitations
    
    - Tags with specific patch versions (e.g., `node:20.11.1`) are rarely
    re-tagged, so `--min-age` has limited effect on them
    - Most useful for floating tags like `mysql:8.0`, `nginx:latest`,
    `ubuntu:24.04` that are periodically updated
    
    ### Example
    
    ```bash
    # Re-resolve digests, but skip images built within the last 7 days
    dockerfile-pin run --write --update --min-age 7
    ```
    
    ```yaml
    # .dockerfile-pin.yaml
    min-age: 7
    ```
    
    ## Test plan
    
    - [x] `go test ./...` passes
    - [x] `go build .` succeeds
    - [x] `dockerfile-pin run -u --min-age 7` skips recently built images
    - [x] `dockerfile-pin run --min-age 0` works as before
    - [x] `dockerfile-pin run --help` shows new flags
    
    ---------
    
    Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
    yusuke-koyoshi and claude authored Apr 23, 2026
    Configuration menu
    Copy the full SHA
    e659e8f View commit details
    Browse the repository at this point in the history
  2. Release v1.3.0 (#45)

    <!-- Release notes generated using configuration in .github/release.yml
    at main -->
    
    ## What's Changed
    ### Features
    * feat: add --min-age flag and -u shorthand for --update by
    @yusuke-koyoshi in #44
    
    ## New Contributors
    * @yusuke-koyoshi made their first contribution in
    #44
    
    **Full Changelog**:
    v1.2.2...v1.3.0
    
    Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
    github-actions[bot] and github-actions[bot] authored Apr 23, 2026
    Configuration menu
    Copy the full SHA
    d59cc8a View commit details
    Browse the repository at this point in the history
Loading