Skip to content
Arthit Suriyawongkul edited this page Jul 23, 2021 · 3 revisions

Welcome to the nlpo3 wiki!

The migration to new name 'nlpo3' and new build workflow is almost complete.

Directory structures and package naming

  • Rust main lib

    • project directory: (root)
    • package name in Cargo.toml: nlpo3
    • distribution name on Crates.io: nlpo3
    • To use: add "nlpo3" as dependency
  • Python binding

    • project directory: nlpo3-python
    • package name in Cargo.toml: nlpo3-python
    • distribution name on PyPI: nlpo3
    • To use: import nlpo3
  • Node.js binding

    • project directory: nlpo3-nodejs
    • package name in Cargo.toml: nlpo3-nodejs
    • distribution name on npmjs.com: nlpo3
    • To use: for now, after build, copy nlpo3 directory to Node project

Python build wheel workflow

  • GitHub Actions: .github/workflows/build-python-wheels.yml
    • with helper scripts in: build_tools/github/
  • To start the build process:
    • make changes in nlpo3-python directory AND put "[cd build]" in commit message when push or make pull request
    • or it can be start manually in Actions menu
  • To start the build process AND publish the wheels to PyPI:
    • create release in GitHub
    • if the entire build is successful, wheels will be automatically published to PyPI using PYPI_API_TOKEN
  • Currently disabled PyPy37 builds as it sometimes fails on Windows and Linux
Clone this wiki locally