Download Latest Version v3.8.0 source code.tar.gz (590.5 kB)
Email in envelope

Get an email when there's a new version of pyinfra

Home / v3.6
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-01-05 2.0 kB
v3.6 source code.tar.gz 2026-01-05 509.0 kB
v3.6 source code.zip 2026-01-05 1.1 MB
Totals: 3 Items   1.6 MB 0

First 2026 release - Happy New Year all! Thank you to all contributors. One big highlight is new metadata spec for plugins, this is the start of better discovery and documentation generation for third party facts and operations:

  • add metadata spec for pyinfra plugins (@rod7760)

New and updated operations/facts:

  • operations: add _temp_dir global argument for configuring temp directory (@wowi42)
  • operations: add files.copy operation (@EricDriussi)
  • operations.crontab: fix modification not properly relying on the cron_name parameter (@information-redacted)
  • operations.docker.container: add support for setting labels (@spookyvision)
  • operations: add import statements on at least one example of every operation (@mkinney)
  • operations.docker.image: make operation idempotent (@DonDebonair)
  • operations.files.template: allow custom jinja2 template loaders (@DaRasch)
  • operations.files.block/connectors.util: use correct temporary directory (@morrison12)
  • operations.util.packaging: allow empty package list in ensure_packages (@schenker)
  • operations: fix tmpdir to properly use all the POSIX environment variables (@wowi42)
  • facts.files.FileContents: improve docstring (@adonm)
  • facts.apt.update: fix computation of cache_time when host is not UTC (@philippemilink)
  • facts: add FactProcessError to log, not explode, issues processing facts (@NichtJens)
  • facts.npm: check directory exists before cd-ing (wowi42)

Connectors:

  • connectors.docker: add platform and architecture option via connector data (@JP-Ellis)
  • connectors: close stdin after writing any input
  • connectors.ssh: add workaround for paramiko no session error (@dfaerch)

CLI:

  • cli: change color of "No changes" to cyan
  • cli: add option --same-sudo-password (@philippemilink)

Docs/meta:

  • docs: replace python -m with uv run -m (@JP-Ellis)
  • docs: fix URLs in API documentation (@kelno)
  • docs/connectors: document command wrapping and parameter filtering best practices (@elazar)
  • tests: freeze date for fact tests
Source: README.md, updated 2026-01-05