Skip to content
Ben Davies edited this page Feb 11, 2019 · 5 revisions

Welcome to the liboqs-python wiki!

Py roadmap for future dev:

These issues can go into a release/project later

  • Refactor to project

    • rework into some classes (on dev branch for user eval)
    • context manager for opening the SO (on dev branch for user eval)
    • map interface to the public OQS C interface (on dev branch for user eval)
    • figure out namespaces/naming (instead of oqs.oqs? Pkg/module, ops.pywrap?)
    • support version 3 (working so far)
    • move tests to subdirectories
  • User input

    • Vlad’s comments
    • Anyone else?
  • Virtual environment support

    • pip requirements (any non Py core ones? Test runner like py.test or nose?)
  • Add Travis/CI

    • Needs the binaries on OQS server
    • Unit tests to check failure conditions
    • Unit tests to check KATs??
    • test_not_enabled() are broken as all are enabled and supported
    • run unit tests
    • run examples too
    • add test matrix for 3.x and up
    • run coverage
    • pick a linter
    • run linter for style check/static analysis
  • docs

    • Update docs to make usage clear
    • Also explain what the different types of objs are
    • Explain the OO interface of the API
    • add/expand docstrings
  • example program

    • debug multi-platform problem with ctypes/extra 0 on windows
    • refactor to new interface (partially done, work on dev branch)
  • installer/packaging

    • https://python-packaging-user-guide.readthedocs.io/
    • add installer/setup.py script (queued)
    • version 0.1.0 to start
    • what else for code distribution on PyPI/cheese shop?
      • “Test PyPI“ account needed/register
      • for real cheeseshop? Needs acct on https://pypi.org
    • Freeze for end users? Or are we treating them as developers/use pip?
    • create apt pkg?

Deferred tasks

  • Refactor module level liboqs var so SO load time can be determined (not just on 1st import)
  • Supporting Python2 (requires debugging some examples as Sig tests don't match)
  • NIST branch wrapper? (would need to support the NIST Sig API)
Clone this wiki locally