test_ok1/py/doc/apigen/assumptions.txt

41 lines
1.5 KiB
Plaintext

Automatic API generation assumptions
====================================
This document tries to document what assumptions/needs are essential
for automatical generation of API based on unittests.
XXX This document overlaps a little bit with api-docs.txt, but still
a purpose is slightly different.
* We use debugger hook to trace certain function calls/returns. Basically
we install global tracing function at point where we call test and we
catch all the calls to functions which are needed by us.
* API is explicitely fixed (the formats of input should differ, ie. pylib
uses py.__pkg__, while pypy would have some explicit text files/source files
which define API of certain functionallity)
* Unittests used for doc generation are fixed per API (for pylib it's very
easy - we just specify directory, or collect all the data which py.test
gathers).
* We have to agree on some format for __doc__ specification. ReST seems
obvious for ReST backend, while different backends might reinterpret it
or even leave it as is.
* The events about seen stuff (like FunctionCall(args)) goes to flexible
enough object to support possibly any backend.
* We can use pypy annotation type system to track most-general type
of call, or better steal it as much as possible and define some
on our own. (Like usually it's better to track interface for some
object which was really used, than least basic superclass of arguments
that went inside).
Milestone 1:
------------
Date is set till sprint in Duesseldorf.