Skip to content
  • Rami Ali's avatar
    tools: Add gen-cpydiff.py to generate docs differences. · b7fa63c7
    Rami Ali authored
    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).
    b7fa63c7