Compile everything with a one-liner
1st July 2004
The other day, we noticed that the .py files in our main mod_python application at work did not have corresponding compiled .pyc files. mod_python runs as the unprivileged apache user, which on our server doesn’t have the required permissions to write the compiled .pyc files in to the directories in which our code lives.
A bit of digging came up with the compileall module, which provides functions for byte-compiling Python files in bulk. We invoked it using the following shell one-liner, executed at the upper most directory of our code tree:
python2.3 -c "import compileall; compileall.compile_dir('.')"
Executed as root, the result was a full set of .pyc bytecode files.
More recent articles
- Weeknotes: Embeddings, more embeddings and Datasette Cloud - 17th September 2023
- Build an image search engine with llm-clip, chat with models with llm chat - 12th September 2023
- LLM now provides tools for working with embeddings - 4th September 2023
- Datasette 1.0a4 and 1.0a5, plus weeknotes - 30th August 2023
- Making Large Language Models work for you - 27th August 2023
- Datasette Cloud, Datasette 1.0a3, llm-mlc and more - 16th August 2023
- How I make annotated presentations - 6th August 2023
- Weeknotes: Plugins for LLM, sqlite-utils and Datasette - 5th August 2023
- Catching up on the weird world of LLMs - 3rd August 2023
- Run Llama 2 on your own Mac using LLM and Homebrew - 1st August 2023