Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

4
  • 1
    If you can use the UV package manager, the scripts can declare dependencies via a magic comment. These dependencies may be loaded from PyPI, but you can also specify Git dependencies or packages in the same repository. See: docs.astral.sh/uv/guides/scripts Commented Sep 17, 2024 at 7:54
  • This is something that Python finds horrifically difficult. Commented Sep 17, 2024 at 9:39
  • @amon Thanks. I will check whether uv is available, although it seems that it may need access to repos from production servers which would not be possible. Currently we use scp to push one script to a temporary area on a server, so I'd be looking to package first, then deploy the package, so it needs no dependencies on the target server. Not sure if that's something that uv can do, but great if it can. Commented Sep 17, 2024 at 10:13
  • 2
    Monorepo tooling may be helpful for this. I've recently started using Pants (pantsbuild.org) which has pretty good Python support. On top of general code management/testing support, you can build PEX files which are just executable files as a self-contained set of python code. you could distribute each utility as an individual executable that can just be placed and run anywhere. Commented Sep 17, 2024 at 11:05