Skip to content

Conversation

@NormB
Copy link
Owner

@NormB NormB commented Dec 27, 2025

Summary

This PR addresses several code quality and best practice issues identified during project analysis.

Changes

Critical Fixes:

  • Go version: Changed from 1.24.0 (unreleased) to 1.23 (stable LTS)
  • FastAPI HEALTHCHECK: Added Docker HEALTHCHECK directive for container self-healing
  • Duplicate dependency: Removed duplicate httpx==0.28.1 from fastapi/requirements.txt

Build Optimizations:

  • Added .dockerignore files to all 6 reference apps:

    • fastapi/ - Python patterns
    • fastapi-api-first/ - Python patterns
    • golang/ - Go patterns
    • nodejs/ - Node.js patterns
    • typescript-api-first/ - TypeScript/Node.js patterns
    • rust/ - Rust patterns

    This reduces Docker build context size and speeds up builds.

Reproducible Builds:

  • Removed Cargo.lock from .gitignore - Rust binary crates should commit Cargo.lock for reproducible builds
  • Added existing Cargo.lock to version control

Test plan

  • CI checks pass (linting, security scans)
  • Docker builds still work for reference apps
  • Go app compiles with Go 1.23

- Fix Go version: 1.24.0 → 1.23 (use stable release)
- Add HEALTHCHECK to FastAPI Dockerfile for container self-healing
- Remove duplicate httpx dependency from fastapi/requirements.txt
- Add .dockerignore files to all reference apps (reduces image size)
- Remove Cargo.lock from .gitignore (enables reproducible Rust builds)
- Track Cargo.lock for rust reference app
golang.org/x/net@v0.47.0 requires go >= 1.24.0
@NormB NormB merged commit 32550fe into main Dec 27, 2025
30 checks passed
@NormB NormB deleted the fix/project-improvements branch December 27, 2025 18:55
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