circuitpython/tools
Rami Ali b7fa63c7ce tools: Add gen-cpydiff.py to generate docs differences.
This patch introduces the a small framework to track differences between
uPy and CPython.  The framework consists of:

- A set of "tests" which test for an individual feature that differs between
  uPy and CPy.  Each test is like a normal uPy test in the test suite, but
  has a special comment at the start with some meta-data: a category (eg
  syntax, core language), a human-readable description of the difference, a
  cause, and a workaround.  Following the meta-data there is a short code
  snippet which demonstrates the difference.  See tests/cpydiff directory
  for the initial set of tests.

- A program (this patch) which runs all the tests (on uPy and CPy) and
  generates nicely-formated .rst documenting the differences.

- Integration into the docs build so that everything is automatic, and the
  differences appear in a way that is easy for users to read/reference (see
  latter commits).

The idea with using this new framework is:

- When a new difference is found it's easy to write a short test for it,
  along with a description, and add it to the existing ones.  It's also easy
  for contributors to submit tests for differences they find.

- When something is no longer different the tool will give an error and
  difference can be removed (or promoted to a proper feature test).
2017-02-20 17:14:34 +11:00
..
tinytest tools: check-in errordeveloper/tinytest@eb2dbc858f 2014-05-08 01:41:21 +03:00
.gitattributes micropython-upip: Mark as binary file and re-commit. 2015-06-06 23:09:23 +03:00
.gitignore tools: check-in errordeveloper/tinytest@eb2dbc858f 2014-05-08 01:41:21 +03:00
bootstrap_upip.sh bootstrap_upip.sh: Allow to install into a path given by argument. 2015-05-29 22:35:45 +03:00
build-stm-latest.sh tools: Add STM32F4DISC and ESPRUINO_PICO to stmhal build script. 2015-04-21 13:16:41 +00:00
cc1 tools: Add C middle-processor to make builtin tables proper hash tables. 2015-12-31 00:24:33 +00:00
check_code_size.sh tools/check_code_size.sh: Code size validation script for CI. 2016-10-25 11:43:55 +03:00
codestats.sh tools: Add codestats.sh to compute code statistics such as size, speed. 2015-06-03 15:38:43 +00:00
dfu.py Change dfu.py to be Python 2/3 compatible 2014-01-03 08:51:02 +02:00
file2h.py tools: Fix up pybcdc.inf generation: new lines and hex digits. 2014-04-16 11:45:52 +01:00
gen-changelog.sh Rename "Micro Python" to "MicroPython" in REPL, help, readme's and misc. 2015-10-12 00:06:25 +01:00
gen-cpydiff.py tools: Add gen-cpydiff.py to generate docs differences. 2017-02-20 17:14:34 +11:00
gendoc.py tools: Make gendoc.py able to output RST format. 2014-10-31 01:36:11 +00:00
insert-usb-ids.py stmhal: Fix USB CDC-only mode under Windows. 2015-10-09 00:18:01 +01:00
make-frozen.py tools/make-frozen: Update for latest changes in frozen modules support. 2016-05-21 21:39:27 +03:00
mpy-tool.py py/persistentcode: Bump .mpy version due to change in bytecode. 2017-02-17 00:19:34 +11:00
pyboard.py tools/pyboard.py: Refactor so target is not reset between scripts/cmd. 2016-12-15 11:29:33 +11:00
pydfu.py tools: Fix pydfu.py to work with old and new versions of PyUSB 2015-07-06 09:56:12 -07:00
tinytest-codegen.py qemu-arm: Don't compile tests in "REPL" mode. 2017-01-27 12:35:46 +11:00
upip_utarfile.py tools, unix: Replace upip tarball with just source files. 2016-11-07 18:39:41 +03:00
upip.py tools/upip: Update to 1.1.5. Better and more user-friendly error handling. 2017-02-10 20:18:05 +03:00