Skip to content

Commit generated bindings to repo #48

@notmgsk

Description

@notmgsk

We would like to make the Python UX as easy as possible. One issue we will have is with pyQuil: we want uses to be able to use pyQuil with or without libquil available. If libquil is installed on their system and they want to use it -- awesome. But if libquil is not available on their system, they should still be able to pip install pyquil without issue.

The problem arises in this situation:

  • user runs pip install pyquil
  • pyquil depends on qcs-sdk-python
  • qcs-sdk-python will need to be compiled with libquil support (as there is no way to configure this with the Python package system)
  • qcs-sdk-python will look for libquil.h in order to generate its bindings

If the user has not installed libquil, the final step will fail.

One way I see around this is to remove the need to generate the bindings at compile time, by having them stored in the libquil-sys repo. We have done this in other projects: in build.rs support a feature flag which turns on the binding generator if they need to be regenerated. Otherwise, the bindings are loading from the repo (with include_file!()).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions