A Python package wrapping stormpci.h via PyBind11 for interfacing with StormPCI and reading binary files
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Henry Schreiner fc12654bf8
feat: use pyproject.toml instead (#64)
5 years ago
.github feat: use pyproject.toml instead (#64) 5 years ago
conda.recipe feat: support setup helpers (#60) 5 years ago
docs typo (#38) 6 years ago
src feat: support setup helpers (#60) 5 years ago
tests Configure tests on Travis and AppVeyor 9 years ago
.appveyor.yml feat: use pyproject.toml instead (#64) 5 years ago
.gitignore feat: support setup helpers (#60) 5 years ago
.travis.yml feat: use pyproject.toml instead (#64) 5 years ago
LICENSE Example project built with pybind11 9 years ago
README.md feat: support setup helpers (#60) 5 years ago
pyproject.toml feat: use pyproject.toml instead (#64) 5 years ago
setup.py feat: use pyproject.toml instead (#64) 5 years ago

README.md

python_example

Gitter

CI status
Linux/macOS Travis Travis-CI
MSVC 2015 AppVeyor
conda.recipe Conda Actions Status
pip builds Pip Actions Status
cibuildwheel Wheels Actions Status

An example project built with pybind11.

Installation

On Unix (Linux, OS X)

  • clone this repository
  • pip install ./python_example

On Windows (Requires Visual Studio 2015)

  • For Python 3.5+:

    • clone this repository
    • pip install ./python_example
  • For Python 2.7:

    Pybind11 requires a C++11 compliant compiler (i.e. Visual Studio 2015 on Windows). Running a regular pip install command will detect the version of the compiler used to build Python and attempt to build the extension with it. We must force the use of Visual Studio 2015.

    • clone this repository
    • "%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" x64
    • set DISTUTILS_USE_SDK=1
    • set MSSdk=1
    • pip install ./python_example

    Note that this requires the user building python_example to have registry edition rights on the machine, to be able to run the vcvarsall.bat script.

CI Examples

There are examples for CI in .github/workflows. A simple way to produces binary "wheels" for all platforms is illustrated in the "wheels.yml" file, using cibuildwheel. You can also see a basic recipe for building and testing in pip.yml, and conda.yml has an example of a conda recipe build.

Windows Python 2.7 runtime requirements

On Windows, the Visual C++ 2015 redistributable packages are a runtime requirement for this project if you build for Python 2.7 (newer versions of Python include this redistributable). It can be found here.

Building the documentation

Documentation for the example project is generated using Sphinx. Sphinx has the ability to automatically inspect the signatures and documentation strings in the extension module to generate beautiful documentation in a variety formats. The following command generates HTML-based reference documentation; for other formats please refer to the Sphinx manual:

  • cd python_example/docs
  • make html

License

pybind11 is provided under a BSD-style license that can be found in the LICENSE file. By using, distributing, or contributing to this project, you agree to the terms and conditions of this license.

Test call

import python_example
python_example.add(1, 2)