Skip to content

Commit generated bindings to repo #48

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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions