Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explicitly enable object Cargo features #1926

Merged

Commits on Oct 23, 2024

  1. Explicitly enable object Cargo features

    cargo-pgrx only works if we enable a minimal set of Cargo features for
    for the object crate, that we implicitly enable despite having set object
    to be `default-features = false`!
    
    The Cargo feature resolver has unified our "std" feature for object with
    the requested object features of our other dependencies that also depend
    on the object crate. However, these dependencies do so conditionally,
    based on the platform that they are compiling on. This means that if
    other dependencies stop using the object crate, or with less features,
    our enabled Cargo features for object will no longer be the correct set
    to build our own binary!
    
    This also implies some platforms are simply unable to build cargo-pgrx.
    Even if we don't support these platforms explicitly, we have generally
    taken a "smoke 'em if you got 'em" approach for unsupported platforms.
    Thus, enable enough of object's Cargo features to prevent weird problems
    from surfacing in the future through unrelated dependency changes, and
    make the cargo-pgrx build effectively platform-invariant.
    
    Whether it actually works on those platforms is a "them" problem,
    but now they should be able to actually get to debugging it a bit.
    workingjubilee committed Oct 23, 2024
    Configuration menu
    Copy the full SHA
    4ca745a View commit details
    Browse the repository at this point in the history