Skip to content

feat: temurin21.zip (Java JDK binary) is committed to the repository root β€” a 100MB+ binary has no place in version control and causes every clone to download it unnecessarilyΒ #881

Description

@divyanshim27

πŸ› Problem Statement

The file temurin21.zip is visible in the Debugra repository file tree. Eclipse Temurin 21 is a JDK distribution β€” a binary package that is hundreds of megabytes in size. Committing a JDK zip to a web application repository:

  1. Inflates clone size by 100MB+ for every contributor, CI runner, and deployment pipeline that clones the repo
  2. Is never actually needed by contributors β€” Debugra's Java execution is handled via the Wandbox API (documented in the README: "Wandbox API (free, serverless)"), not a locally installed JDK
  3. Puts a proprietary/redistributed binary in a MIT-licensed repo β€” distributing JDK binaries has specific licensing requirements that must be verified

Fix Required

# Step 1: Remove from git tracking
git rm --cached temurin21.zip

# Step 2: Add to .gitignore
echo "*.zip" >> .gitignore
echo "temurin21.zip" >> .gitignore

# Step 3: Remove from git history (important β€” the binary is in history)
git filter-repo --path temurin21.zip --invert-paths
# OR use BFG Repo-Cleaner:
# java -jar bfg.jar --delete-files temurin21.zip

# Step 4: Force push (coordinate with maintainer)
git push origin main --force

If temurin21.zip was needed for a specific CI purpose (unlikely given Wandbox), document that purpose in docker_guide.md and download it dynamically in the relevant workflow rather than committing it.

Files to Modify

File Change
temurin21.zip Remove from git tracking and history
.gitignore Add *.zip and binary file patterns

Suggested labels: bug, chore, good first issue, level: beginner

I would like to work on this. Could you please assign it to me?

Metadata

Metadata

Assignees

No one assigned

    Labels

    gssocOfficial GSSoC '26 issue tagtype:bugVulnerability or logical bug fixestype:designTactile visual design and UI alignmentstype:docsDocumentation and guide upgradestype:featureNew functional feature additionstype:refactorCode refactoring and cleanliness updates

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions