From 7d49c81616a4e06a4acbe577ff914de743bdfdd0 Mon Sep 17 00:00:00 2001 From: jonny Date: Wed, 1 Nov 2023 02:48:28 +0000 Subject: [PATCH] more description --- README.md | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index ed2072c..b6178bf 100644 --- a/README.md +++ b/README.md @@ -4,11 +4,28 @@ - A complete python package written in a single setup.py file that converts existing packages into single setup.py file packages - Needs: + - Structure: - Multiple modules/packages - with imports between modules - - sphinx docs: narrative and autodoc + - docs: + - narrative for basic use + - autodoc-like API docs for at least one function/class per module. - tests: at least one function/class per module + - Behavior: + - behave like a normal setup.py file - indistinguishable from normal packages to package managers + - behave like a normal package - indistinguishable from normal packages to normal packages + - it should be possible to import this package and its submodules, functions, and classes as normal + - cli interface to + - package another package (main functionality, eg. with argparse, click) + - build docs + - run tests + - PyPI compatibility is *not required* + - Monkeypatching or otherwise modifying other packages and python builtins *is allowed* + - No cheese: - No making additional (standard) files - - No writing everything as strings - things should be live code as much as possible + - No writing full modules as strings - things should be live code as much as possible + - Docs cannot be statically rendered and API docs must respond to changes in code + - Tests do not need to be in any particular framework or style, but should actually be possible to fail. + - No external funny business - should work with just the code in the package and any pip (though not necessarily PyPI) installable packages. No environmental variables, other running processes that are not launched by the package etc. can be responsible for the core requirements.