{"id":18438676,"url":"https://github.com/seapagan/check-yanked-packages","last_synced_at":"2026-02-17T22:32:24.124Z","repository":{"id":245869904,"uuid":"819416101","full_name":"seapagan/check-yanked-packages","owner":"seapagan","description":"This GitHub Action checks for \"yanked\" Python packages in your `poetry.lock` file.","archived":false,"fork":false,"pushed_at":"2024-06-24T19:08:55.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-20T04:46:09.643Z","etag":null,"topics":["github-action","lockfile","package-management","poetry-python","yanked"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/seapagan.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["seapagan"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":null,"custom":null}},"created_at":"2024-06-24T13:09:09.000Z","updated_at":"2024-06-24T19:08:58.000Z","dependencies_parsed_at":"2024-06-24T15:21:26.386Z","dependency_job_id":"c11ddfc4-98e3-433c-a126-8a07aa979ab2","html_url":"https://github.com/seapagan/check-yanked-packages","commit_stats":null,"previous_names":["seapagan/check-yanked-packages"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/seapagan/check-yanked-packages","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seapagan%2Fcheck-yanked-packages","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seapagan%2Fcheck-yanked-packages/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seapagan%2Fcheck-yanked-packages/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seapagan%2Fcheck-yanked-packages/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/seapagan","download_url":"https://codeload.github.com/seapagan/check-yanked-packages/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seapagan%2Fcheck-yanked-packages/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29560811,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-17T21:50:49.831Z","status":"ssl_error","status_checked_at":"2026-02-17T21:46:15.313Z","response_time":100,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["github-action","lockfile","package-management","poetry-python","yanked"],"created_at":"2024-11-06T06:21:05.821Z","updated_at":"2026-02-17T22:32:24.095Z","avatar_url":"https://github.com/seapagan.png","language":null,"funding_links":["https://github.com/sponsors/seapagan"],"categories":[],"sub_categories":[],"readme":"# Check for Yanked Python Packages\n\nThis GitHub Action checks for \"yanked\" Python packages in your `poetry.lock`\nfile. These are packages that have been removed from the Python Package Index\n(PyPI), by the package maintainer, and should not be used.\n\nIt requires that your project uses [poetry](https://python-poetry.org/) for\ndependency management, and that the `poetry.lock` file to be present in the\nrepository.\n\nUnder the hood, this action uses my\n[check-yanked](https://github.com/seapagan/poetry-plugin-check-yanked) plugin\nfor poetry, so check that out for local control over yanked packages.\n\nThe Action will fail if any yanked packages are found in the `poetry.lock` file,\nyou can check the Action logs for more information on which packages are yanked.\n\n- [Check for Yanked Python Packages](#check-for-yanked-python-packages)\n  - [Usage](#usage)\n    - [Standalone](#standalone)\n    - [As part of a larger workflow](#as-part-of-a-larger-workflow)\n  - [Options](#options)\n  - [Changelog](#changelog)\n\n## Usage\n\nTo use this GitHub Action, you can add the following code to your workflow file:\n\n### Standalone\n\n```yaml\nname: Check for Yanked Packages\n\non: [push, pull_request]\n\njobs:\n  check-yanked:\n    runs-on: ubuntu-latest\n\n    steps:\n      - name: Run poetry check-yanked\n        uses: seapagan/check-yanked-packages@v1\n```\n\nNote that you do **not** need to checkout the repository or setup Python, as the\naction will do this for you. However, if you do have these steps in your\nworkflow, the action will not attempt to run them again.\n\n### As part of a larger workflow\n\nIf this action is run as part of a larger workflow, put it after the main\ncheckout and python setup steps. If these are aleady run, the plugin will not\nattempt to checkout the repository again nor setup python.\n\n```yaml\nname: CI\n\non: [push, pull_request]\n\njobs:\n  build:\n    runs-on: ubuntu-latest\n\n    steps:\n      - uses: actions/checkout@v4\n      - uses: actions/setup-python@v5\n        with:\n          python-version: '3.x'\n      - name: Run poetry check-yanked\n        uses: seapagan/check-yanked-packages@v1\n```\n\n## Options\n\nThere are currently two options available for this action:\n\n- `path` - The path to the directory containing the `poetry.lock` file. This\n  defaults to the root of the repository.\n- `python-version` - The version of Python to use when running the action. This\n  defaults to the latest version of Python 3.x available on the runner.\n  - If you are using the `actions/setup-python` action, this will be **ignored**,\n  and the version of Python installed by that will be used instead.\n\nThese are both optional, and can be set in the workflow file like so:\n\n```yaml\n- name: Run poetry check-yanked\n  uses: seapagan/check-yanked-packages@v1\n  with:\n    python-version: '3.10'\n    path: 'path/to/directory'\n```\n\n## Changelog\n\n**v1** - 24th June 2024\n\n- Initial Release\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseapagan%2Fcheck-yanked-packages","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseapagan%2Fcheck-yanked-packages","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseapagan%2Fcheck-yanked-packages/lists"}