{"id":22574845,"url":"https://github.com/thoth-station/prescriptions","last_synced_at":"2025-04-10T16:10:41.358Z","repository":{"id":37013999,"uuid":"348306326","full_name":"thoth-station/prescriptions","owner":"thoth-station","description":"⚕️💊 Prescriptions to heal your applications and application dependencies 💊⚕️","archived":false,"fork":false,"pushed_at":"2023-05-29T21:53:56.000Z","size":58487,"stargazers_count":17,"open_issues_count":6,"forks_count":10,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-24T13:51:23.103Z","etag":null,"topics":["dependency-analysis","dependency-management","hacktoberfest","odbl","python","thoth"],"latest_commit_sha":null,"homepage":"https://thoth-station.ninja/docs/developers/adviser/prescription.html","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thoth-station.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2021-03-16T10:34:43.000Z","updated_at":"2024-06-03T10:10:50.000Z","dependencies_parsed_at":"2023-02-14T08:16:49.473Z","dependency_job_id":"6bbde7a4-2ce1-4dba-9caa-a340abd0d347","html_url":"https://github.com/thoth-station/prescriptions","commit_stats":null,"previous_names":[],"tags_count":29,"template":false,"template_full_name":"thoth-station/template-project","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fprescriptions","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fprescriptions/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fprescriptions/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fprescriptions/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thoth-station","download_url":"https://codeload.github.com/thoth-station/prescriptions/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248250796,"owners_count":21072683,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["dependency-analysis","dependency-management","hacktoberfest","odbl","python","thoth"],"created_at":"2024-12-08T03:08:11.477Z","updated_at":"2025-04-10T16:10:38.687Z","avatar_url":"https://github.com/thoth-station.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Prescriptions for Thoth's adviser\n---------------------------------\n\n⚕️💊⚕️\n----\n\nPrescriptions to heal your applications and application dependencies.\n\nWhy we created prescriptions?\n=============================\n\nWe wanted to create a repository that keeps a database of known issues in\nPython open-source eco-system, as well as suggestions for Python libraries\nand runtime environments they can run in. The database is used in\n`Thoth \u003chttps://thoth-station.ninja/\u003e`__ to resolve high quality Python\nsoftware stacks. The `linked blog post describes prescriptions more in-depth\n\u003chttps://developers.redhat.com/articles/2021/09/22/thoth-prescriptions-resolving-python-dependencies\u003e`_.\n\n  When using OpenShift or Kubernetes, one provides manifest files that state\n  how the desired state of a cluster should look like. Prescriptions might\n  be seen analogous to this - prescriptions provide a way to declaratively\n  state how the desired dependency resolution should look like considering\n  the prescribed rules. Then, it’s up to the reinforcement learning algorithm\n  implemented in `Thoth's adviser \u003chttps://github.com/thoth-station/adviser\u003e`__\n  to find a solution in the form of a lockfile respecting the prescribed rules,\n  requirements for the application and other inputs to the Thoth's cloud\n  resolver.\n\nSee `the linked presentation\n\u003chttps://github.com/thoth-station/talks/blob/master/2021-09-03-devconf-us/thoth_healing_python_applications.pdf\u003e`__\nor `YouTube video \u003chttps://www.youtube.com/watch?v=SQO2yTQ_OD4\u003e`__ for more info.\n\nHow to write a prescription?\n============================\n\nIf you would like to write a prescription for resolver, check the `following\ndocs\n\u003chttps://thoth-station.ninja/docs/developers/adviser/prescription.html\u003e`__.\n\nNeed help with a prescription?\n==============================\n\nIf you spotted an issue in Python dependencies or Python ecosystem, just let us\nknow by openning an issue and we will help you with writing a prescription.\n\nData sources used for automatically generated prescriptions\n===========================================================\n\nCurrently implemented `handlers\n\u003chttps://github.com/thoth-station/prescriptions-refresh-job/tree/master/thoth/prescriptions_refresh/handlers\u003e`_\nin Thoth's weekly cronjob allow to auto-generate prescriptions for the given data:\n\n- CVE present in a package, from the `PyPA advisory-database \u003chttps://github.com/pypa/advisory-database\u003e`_\n- Project maintenance and development practices as evaluated by the `OSSF Security Scorecards \u003chttps://github.com/ossf/scorecard\u003e`_\n- Information on package maintainance obtained via the GitHub API: if the given project is marked as archived, is forked from another project, hosts release notes, its number of maintainers, stars, contributors.\n- The package size, number of downloads, maintainers and last release date from `PyPI \u003chttps://pypi.org/\u003e`_.\n\nRelease Details\n==============================\n\nPrescriptions are released as a blob.\nDuring the tag release session of `thoth-adviser \u003chttps://github.com/thoth-station/adviser\u003e`_,\nthe `s2i process \u003chttps://github.com/thoth-station/adviser/blob/master/.s2i/bin/assemble\u003e`_ clones the prescriptions repo with the latest tag information.\n\nLicensing\n=========\n\nThe prescription database is released under the terms of `GNU Affero General\nPublic License v3.0 or later\n\u003chttps://www.gnu.org/licenses/agpl-3.0.en.html\u003e`__. See the LICENSE file for\nmore info.\n\nCopyright © 2021 AICoE Project `Thoth\n\u003chttps://thoth-station.ninja/\u003e`__; Red Hat Inc.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthoth-station%2Fprescriptions","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthoth-station%2Fprescriptions","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthoth-station%2Fprescriptions/lists"}