eris/packaging/make-readme.py
Andrew Hamilton 36a07813e7 Fix --version and make killpg fire under uv run
--version printed a stale __version__ (2026.7.28); bump it to 2026.8.3
and update the README install tag.

The killpg-on-self guard required eris to be its own process-group
leader, which is false under 'uv run eris' (uv is the leader), so the
fast shutdown never triggered. Also accept getpgrp() == getppid(),
covering the uv-run case while non-tty runs still skip killpg.
2026-08-03 10:44:53 +10:00

56 lines
1.3 KiB
Python
Executable file

import eris.tools as tools
def main():
git_tools = [tools.git_diff, tools.git_blame, tools.git_log]
all_tools = [(["*"], tools.generic_tools() + git_tools)] + tools.TOOLS_FOR_EXTENSIONS
tool_set = set()
extension_set = set()
for extensions, tools_ in all_tools:
tool_set.update(tools_)
extension_set.update(extensions)
print(f"""\
# Eris Codebase Monitor
## Summary
Eris maintains an up to date set of reports for every file in a codebase.
## Installation
#### Debian / Ubuntu / Fedora / Arch / Alpine
[Install](https://docs.astral.sh/uv/getting-started/installation/) uv first if you don't have it.
Use uv to install eris:
```bash
uv tool install --python 3.14 git+https://forgejo.tail556789.ts.net/ahamilton/eris@2026.8.3
```
Then use eris to install all the tools it uses:
```bash
eris --install-all-tools
```
Then to run:
```bash
eris
eris-webserver <project> # Or a simple web interface.
```
## Tools
File types({len(extension_set)-1}) | Tools({len(tool_set)})
----------:| -----""")
for extensions, tools_ in all_tools:
print("%s | %s" % (" ".join("." + extension for extension in extensions),
" • ".join(f"[{tool.__name__}]({tool.url})" for tool in tools_)))
if __name__ == "__main__":
main()