{"bomFormat":"CycloneDX","specVersion":"1.5","version":1,"serialNumber":"urn:uuid:bb4266f7-3e34-48be-a87f-ad466e66a499","metadata":{"timestamp":"2026-06-25T08:42:21Z","tools":[{"vendor":"Ecosystems","name":"Ecosystems SBOM Generator"}],"component":{"type":"application","name":"python/python-docs-zh-tw"}},"components":[{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/ci.yml"}]},{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/deploy-gh-page.yml"}]},{"type":"library","name":"JamesIves/github-pages-deploy-action","version":"3.7.1","purl":"pkg:githubactions/JamesIves/github-pages-deploy-action","properties":[{"name":"filePath","value":".github/workflows/deploy-gh-page.yml"}]},{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/py312-sync-cpython.yml"}]},{"type":"library","name":"tibdex/github-app-token","version":"v1","purl":"pkg:githubactions/tibdex/github-app-token","properties":[{"name":"filePath","value":".github/workflows/py312-sync-cpython.yml"}]},{"type":"library","name":"peter-evans/create-pull-request","version":"v3","purl":"pkg:githubactions/peter-evans/create-pull-request","properties":[{"name":"filePath","value":".github/workflows/py312-sync-cpython.yml"}]},{"type":"library","name":"certifi","version":"2023.7.22","purl":"pkg:pypi/certifi","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"chardet","version":"3.0.4","purl":"pkg:pypi/chardet","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"googletrans","version":"3.1.0a0","purl":"pkg:pypi/googletrans","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"h11","version":"0.9.0","purl":"pkg:pypi/h11","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"h2","version":"3.2.0","purl":"pkg:pypi/h2","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"hpack","version":"3.0.0","purl":"pkg:pypi/hpack","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"hstspreload","version":"2023.1.1","purl":"pkg:pypi/hstspreload","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"httpcore","version":"0.9.1","purl":"pkg:pypi/httpcore","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"httpx","version":"0.13.3","purl":"pkg:pypi/httpx","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"hyperframe","version":"5.2.0","purl":"pkg:pypi/hyperframe","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"idna","version":"2.10","purl":"pkg:pypi/idna","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"lxml","version":"4.9.3","purl":"pkg:pypi/lxml","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"polib","version":"1.1.1","purl":"pkg:pypi/polib","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"rfc3986","version":"1.5.0","purl":"pkg:pypi/rfc3986","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"sniffio","version":"1.3.0","purl":"pkg:pypi/sniffio","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"translate-toolkit","version":"3.8.1","purl":"pkg:pypi/translate-toolkit","properties":[{"name":"filePath","value":".scripts/poetry.lock"}]},{"type":"library","name":"python","version":"^3.10","purl":"pkg:pypi/python","properties":[{"name":"filePath","value":".scripts/pyproject.toml"}]},{"type":"library","name":"polib","version":"1.1.1","purl":"pkg:pypi/polib","properties":[{"name":"filePath","value":".scripts/pyproject.toml"}]},{"type":"library","name":"googletrans","version":"3.1.0a0","purl":"pkg:pypi/googletrans","properties":[{"name":"filePath","value":".scripts/pyproject.toml"}]},{"type":"library","name":"translate-toolkit","version":"3.8.1","purl":"pkg:pypi/translate-toolkit","properties":[{"name":"filePath","value":".scripts/pyproject.toml"}]},{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/summarize_progress.yml"}]},{"type":"library","name":"abatilo/actions-poetry","version":"v2","purl":"pkg:githubactions/abatilo/actions-poetry","properties":[{"name":"filePath","value":".github/workflows/summarize_progress.yml"}]},{"type":"library","name":"stefanzweifel/git-auto-commit-action","version":"v5","purl":"pkg:githubactions/stefanzweifel/git-auto-commit-action","properties":[{"name":"filePath","value":".github/workflows/summarize_progress.yml"}]}]}