{"data":{"slug":"pyinfra","name":"pyinfra","tagline":"","homepage":"https://pyinfra.com/","category":{"slug":"config-management","name":"Configuration Management Tools"},"vendor":null,"score":{"composite":51.6,"confidence":0.54,"confidenceBand":"medium","breakdown":{"capabilities":{"value":67.1,"weight":0.083,"present":true,"contribution":5.6},"repo_stars":{"value":71.3,"weight":0.033,"present":true,"contribution":2.4},"integrations":{"value":0,"weight":0.053,"present":false,"contribution":0},"dependent_projects":{"value":22.7,"weight":0.08,"present":true,"contribution":1.8},"dev_activity":{"value":39.5,"weight":0.12,"present":true,"contribution":4.7},"release_cadence":{"value":81.1,"weight":0.067,"present":true,"contribution":5.4},"security_posture":{"value":0,"weight":0.087,"present":false,"contribution":0},"package_downloads":{"value":0,"weight":0.173,"present":false,"contribution":0},"security_score":{"value":0,"weight":0.053,"present":false,"contribution":0},"community_qa_activity":{"value":0,"weight":0.08,"present":false,"contribution":0}},"computedAt":"2026-09-11T16:03:13.722Z","stale":false},"uri":"https://www.vioscale.ai/software/pyinfra","aliases":["pyinfra"],"status":"published","crawlStatus":"ok","indexStatus":"no_facts","nextCrawlAt":null,"categories":[{"slug":"config-management","name":"Configuration Management Tools","isPrimary":true}],"facts":{"features":[{"attribute":"features.capabilities","value":{"model":"push","hosting":"self","language":"Python","idempotent":true,"architecture":"agentless","desired_state":true,"masterless_mode":true,"open_source_core":true},"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}}],"platform":[{"attribute":"platform.support","value":{"cli":true},"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}}],"pricing":[{"attribute":"pricing","value":{"type":"open_source","freeTier":true,"sourceUrl":"https://pyinfra.com/","retrievedAt":"2026-08-13T22:42:42.751Z"},"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}},{"attribute":"pricing.free_tier","value":true,"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}},{"attribute":"pricing.model","value":"commercial","provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.099Z","confidence":0.4}},{"attribute":"pricing.price_level","value":"free","provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}},{"attribute":"pricing.transparent","value":true,"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-03T14:27:52.803Z","confidence":0.6}}],"reliability":[{"attribute":"reliability.status_page","value":true,"provenance":{"source":"https://pyinfra.com/status","sourceType":"vioscale-crawler","retrievedAt":"2026-08-03T14:27:52.803Z","confidence":0.6}}],"deployment":[{"attribute":"deployment.options","value":{"self_hosted":true},"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}}],"description":[{"attribute":"description.long","value":"An infrastructure automation tool written in Python that runs commands over SSH on multiple servers concurrently and idempotently, without needing agents or configuration files.","provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}}],"activity":[{"attribute":"activity.commits_last_30d","value":17,"provenance":{"source":"https://github.com/pyinfra-dev/pyinfra/pulse","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.65}}],"adoption":[{"attribute":"adoption.github_stars","value":5987,"provenance":{"source":"https://github.com/pyinfra-dev/pyinfra","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.9}},{"attribute":"adoption.dependent_repos","value":22,"provenance":{"source":"https://packages.ecosyste.ms/api/v1/packages/lookup?repository_url=https%3A%2F%2Fgithub.com%2Fpyinfra-dev%2Fpyinfra","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.206Z","confidence":0.85}}],"language":[{"attribute":"language.primary","value":"Python","provenance":{"source":"https://github.com/pyinfra-dev/pyinfra","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.9}}],"license":[{"attribute":"license.spdx","value":"MIT","provenance":{"source":"https://github.com/pyinfra-dev/pyinfra","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.95}}],"release":[{"attribute":"release.cadence_days","value":34,"provenance":{"source":"https://github.com/pyinfra-dev/pyinfra/releases","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.7}},{"attribute":"release.history","value":[{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.10.0","date":"2026-07-27T19:51:14Z","type":"stable","version":"v3.10.0"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.9.2","date":"2026-06-07T21:05:58Z","type":"stable","version":"v3.9.2"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.9.1","date":"2026-06-07T20:33:25Z","type":"stable","version":"v3.9.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.9.0","date":"2026-06-07T20:24:16Z","type":"stable","version":"v3.9.0"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.8.0","date":"2026-05-04T12:28:22Z","type":"stable","version":"v3.8.0"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.7","date":"2026-03-12T10:55:41Z","type":"stable","version":"v3.7"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.6.1","date":"2026-02-02T13:47:28Z","type":"stable","version":"v3.6.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.6","date":"2026-01-05T09:58:18Z","type":"stable","version":"v3.6"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.5.1","date":"2025-10-01T16:11:23Z","type":"stable","version":"v3.5.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.5","date":"2025-09-03T10:26:55Z","type":"stable","version":"v3.5"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.4.1","date":"2025-07-14T20:32:01Z","type":"stable","version":"v3.4.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.4","date":"2025-07-09T14:17:56Z","type":"stable","version":"v3.4"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.3.1","date":"2025-04-29T10:58:25Z","type":"stable","version":"v3.3.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.3","date":"2025-04-28T10:55:47Z","type":"stable","version":"v3.3"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.2","date":"2025-01-09T21:33:50Z","type":"stable","version":"v3.2"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.1.1","date":"2024-09-25T21:41:26Z","type":"stable","version":"v3.1.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.1","date":"2024-08-18T12:55:59Z","type":"stable","version":"v3.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.0.2","date":"2024-07-24T19:43:03Z","type":"stable","version":"v3.0.2"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.0.1","date":"2024-07-21T18:34:46Z","type":"stable","version":"v3.0.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.0","date":"2024-07-15T06:16:50Z","type":"stable","version":"v3.0"}],"provenance":{"source":"https://github.com/pyinfra-dev/pyinfra/releases","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.7}}],"security":[{"attribute":"security.vulnerabilities","value":{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=pypi&package_name=pyinfra&per_page=100","last_12m":0,"max_severity":null},"provenance":{"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=pypi&package_name=pyinfra&per_page=100","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.378Z","confidence":0.9}}],"content":[{"attribute":"content.faq","value":[{"answer":"An infrastructure automation tool written in Python that runs commands over SSH on multiple servers concurrently and idempotently, without needing agents or configuration files. It is indexed under Configuration Management Tools.","source":"https://pyinfra.com/","question":"What is pyinfra?","confidence":0.6},{"answer":"pyinfra is open source, so it can be self-hosted and used at no licence cost. It is released under the MIT licence. Pricing changes often, so verify at source before relying on it.","source":"https://pyinfra.com/","question":"Is pyinfra free to use?","confidence":0.6},{"answer":"pyinfra supports a command-line interface. Platforms we have not confirmed are simply not listed here rather than ruled out.","source":"https://pyinfra.com/","question":"What platforms does pyinfra support?","confidence":0.6},{"answer":"Yes. pyinfra can be deployed self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://pyinfra.com/","question":"Can pyinfra be self-hosted?","confidence":0.6},{"answer":"Yes. pyinfra is published under the MIT licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/pyinfra-dev/pyinfra","question":"Is pyinfra open source?","confidence":0.95}],"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-09-10T10:20:56.160Z","confidence":0.67}}]},"factList":[{"attribute":"features.capabilities","value":{"model":"push","hosting":"self","language":"Python","idempotent":true,"architecture":"agentless","desired_state":true,"masterless_mode":true,"open_source_core":true},"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}},{"attribute":"platform.support","value":{"cli":true},"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}},{"attribute":"pricing","value":{"type":"open_source","freeTier":true,"sourceUrl":"https://pyinfra.com/","retrievedAt":"2026-08-13T22:42:42.751Z"},"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}},{"attribute":"pricing.free_tier","value":true,"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}},{"attribute":"pricing.model","value":"commercial","provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.099Z","confidence":0.4}},{"attribute":"pricing.price_level","value":"free","provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}},{"attribute":"pricing.transparent","value":true,"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-03T14:27:52.803Z","confidence":0.6}},{"attribute":"reliability.status_page","value":true,"provenance":{"source":"https://pyinfra.com/status","sourceType":"vioscale-crawler","retrievedAt":"2026-08-03T14:27:52.803Z","confidence":0.6}},{"attribute":"deployment.options","value":{"self_hosted":true},"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}},{"attribute":"description.long","value":"An infrastructure automation tool written in Python that runs commands over SSH on multiple servers concurrently and idempotently, without needing agents or configuration files.","provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-08-13T22:42:42.751Z","confidence":0.6}},{"attribute":"activity.commits_last_30d","value":17,"provenance":{"source":"https://github.com/pyinfra-dev/pyinfra/pulse","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.65}},{"attribute":"adoption.github_stars","value":5987,"provenance":{"source":"https://github.com/pyinfra-dev/pyinfra","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.9}},{"attribute":"language.primary","value":"Python","provenance":{"source":"https://github.com/pyinfra-dev/pyinfra","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.9}},{"attribute":"license.spdx","value":"MIT","provenance":{"source":"https://github.com/pyinfra-dev/pyinfra","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.95}},{"attribute":"release.cadence_days","value":34,"provenance":{"source":"https://github.com/pyinfra-dev/pyinfra/releases","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.7}},{"attribute":"adoption.dependent_repos","value":22,"provenance":{"source":"https://packages.ecosyste.ms/api/v1/packages/lookup?repository_url=https%3A%2F%2Fgithub.com%2Fpyinfra-dev%2Fpyinfra","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.206Z","confidence":0.85}},{"attribute":"release.history","value":[{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.10.0","date":"2026-07-27T19:51:14Z","type":"stable","version":"v3.10.0"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.9.2","date":"2026-06-07T21:05:58Z","type":"stable","version":"v3.9.2"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.9.1","date":"2026-06-07T20:33:25Z","type":"stable","version":"v3.9.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.9.0","date":"2026-06-07T20:24:16Z","type":"stable","version":"v3.9.0"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.8.0","date":"2026-05-04T12:28:22Z","type":"stable","version":"v3.8.0"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.7","date":"2026-03-12T10:55:41Z","type":"stable","version":"v3.7"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.6.1","date":"2026-02-02T13:47:28Z","type":"stable","version":"v3.6.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.6","date":"2026-01-05T09:58:18Z","type":"stable","version":"v3.6"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.5.1","date":"2025-10-01T16:11:23Z","type":"stable","version":"v3.5.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.5","date":"2025-09-03T10:26:55Z","type":"stable","version":"v3.5"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.4.1","date":"2025-07-14T20:32:01Z","type":"stable","version":"v3.4.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.4","date":"2025-07-09T14:17:56Z","type":"stable","version":"v3.4"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.3.1","date":"2025-04-29T10:58:25Z","type":"stable","version":"v3.3.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.3","date":"2025-04-28T10:55:47Z","type":"stable","version":"v3.3"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.2","date":"2025-01-09T21:33:50Z","type":"stable","version":"v3.2"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.1.1","date":"2024-09-25T21:41:26Z","type":"stable","version":"v3.1.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.1","date":"2024-08-18T12:55:59Z","type":"stable","version":"v3.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.0.2","date":"2024-07-24T19:43:03Z","type":"stable","version":"v3.0.2"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.0.1","date":"2024-07-21T18:34:46Z","type":"stable","version":"v3.0.1"},{"url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.0","date":"2024-07-15T06:16:50Z","type":"stable","version":"v3.0"}],"provenance":{"source":"https://github.com/pyinfra-dev/pyinfra/releases","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.081Z","confidence":0.7}},{"attribute":"security.vulnerabilities","value":{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=pypi&package_name=pyinfra&per_page=100","last_12m":0,"max_severity":null},"provenance":{"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=pypi&package_name=pyinfra&per_page=100","sourceType":"vioscale-crawler","retrievedAt":"2026-09-11T15:57:40.378Z","confidence":0.9}},{"attribute":"content.faq","value":[{"answer":"An infrastructure automation tool written in Python that runs commands over SSH on multiple servers concurrently and idempotently, without needing agents or configuration files. It is indexed under Configuration Management Tools.","source":"https://pyinfra.com/","question":"What is pyinfra?","confidence":0.6},{"answer":"pyinfra is open source, so it can be self-hosted and used at no licence cost. It is released under the MIT licence. Pricing changes often, so verify at source before relying on it.","source":"https://pyinfra.com/","question":"Is pyinfra free to use?","confidence":0.6},{"answer":"pyinfra supports a command-line interface. Platforms we have not confirmed are simply not listed here rather than ruled out.","source":"https://pyinfra.com/","question":"What platforms does pyinfra support?","confidence":0.6},{"answer":"Yes. pyinfra can be deployed self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://pyinfra.com/","question":"Can pyinfra be self-hosted?","confidence":0.6},{"answer":"Yes. pyinfra is published under the MIT licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/pyinfra-dev/pyinfra","question":"Is pyinfra open source?","confidence":0.95}],"provenance":{"source":"https://pyinfra.com/","sourceType":"vioscale-crawler","retrievedAt":"2026-09-10T10:20:56.160Z","confidence":0.67}}],"faq":[{"answer":"An infrastructure automation tool written in Python that runs commands over SSH on multiple servers concurrently and idempotently, without needing agents or configuration files. It is indexed under Configuration Management Tools.","source":"https://pyinfra.com/","question":"What is pyinfra?","confidence":0.6},{"answer":"pyinfra is open source, so it can be self-hosted and used at no licence cost. It is released under the MIT licence. Pricing changes often, so verify at source before relying on it.","source":"https://pyinfra.com/","question":"Is pyinfra free to use?","confidence":0.6},{"answer":"pyinfra supports a command-line interface. Platforms we have not confirmed are simply not listed here rather than ruled out.","source":"https://pyinfra.com/","question":"What platforms does pyinfra support?","confidence":0.6},{"answer":"Yes. pyinfra can be deployed self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://pyinfra.com/","question":"Can pyinfra be self-hosted?","confidence":0.6},{"answer":"Yes. pyinfra is published under the MIT licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/pyinfra-dev/pyinfra","question":"Is pyinfra open source?","confidence":0.95}],"faqSource":"generated","releaseHistory":[{"version":"v3.10.0","date":"2026-07-27T19:51:14Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.10.0","type":"stable"},{"version":"v3.9.2","date":"2026-06-07T21:05:58Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.9.2","type":"stable"},{"version":"v3.9.1","date":"2026-06-07T20:33:25Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.9.1","type":"stable"},{"version":"v3.9.0","date":"2026-06-07T20:24:16Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.9.0","type":"stable"},{"version":"v3.8.0","date":"2026-05-04T12:28:22Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.8.0","type":"stable"},{"version":"v3.7","date":"2026-03-12T10:55:41Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.7","type":"stable"},{"version":"v3.6.1","date":"2026-02-02T13:47:28Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.6.1","type":"stable"},{"version":"v3.6","date":"2026-01-05T09:58:18Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.6","type":"stable"},{"version":"v3.5.1","date":"2025-10-01T16:11:23Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.5.1","type":"stable"},{"version":"v3.5","date":"2025-09-03T10:26:55Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.5","type":"stable"},{"version":"v3.4.1","date":"2025-07-14T20:32:01Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.4.1","type":"stable"},{"version":"v3.4","date":"2025-07-09T14:17:56Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.4","type":"stable"},{"version":"v3.3.1","date":"2025-04-29T10:58:25Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.3.1","type":"stable"},{"version":"v3.3","date":"2025-04-28T10:55:47Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.3","type":"stable"},{"version":"v3.2","date":"2025-01-09T21:33:50Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.2","type":"stable"},{"version":"v3.1.1","date":"2024-09-25T21:41:26Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.1.1","type":"stable"},{"version":"v3.1","date":"2024-08-18T12:55:59Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.1","type":"stable"},{"version":"v3.0.2","date":"2024-07-24T19:43:03Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.0.2","type":"stable"},{"version":"v3.0.1","date":"2024-07-21T18:34:46Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.0.1","type":"stable"},{"version":"v3.0","date":"2024-07-15T06:16:50Z","url":"https://github.com/pyinfra-dev/pyinfra/releases/tag/v3.0","type":"stable"}],"vulnerabilities":{"count":0,"last12m":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=pypi&package_name=pyinfra&per_page=100"},"claimed":false,"updatedAt":"2026-09-11T16:17:57.733Z","formats":{"json":"https://www.vioscale.ai/api/v1/software/pyinfra","markdown":"https://www.vioscale.ai/software/pyinfra.md","html":"https://www.vioscale.ai/software/pyinfra"}},"meta":{"source":"https://www.vioscale.ai","license":"CC-BY-4.0","generatedAt":"2026-09-21T07:59:31.528Z","disclaimer":"Independent, evidence-based. Every fact carries provenance."}}