Add a basic pyproject.toml to allow building from source distribution#5
Conversation
|
This fails to compile for me; unsure why from first glance. Edit: the warning about outdated lockfile / the patch being ignored seems suspicious Maybe it'd be worth upgrading to a later version so using a patched git source isn't needed? rust-jaeger-python-client/Cargo.toml Lines 29 to 35 in f64f30e (Edit: I also note that the |
|
@reivilibre here's my build output. Are you using a nightly version of rustc? I'm on 1.61.0. |
I've also now tried Rustc 1.61.0; are you building from the sdist? (The name isn't what I would conventionally expect of an sdist — looks like a repository zip if I'm being honest ;)). Note that the sdist doesn't have a |
I think this is the reason why. |
|
@reivilibre aha, I see. It sounds like we should try updating (and pinning) the PyO3 version and subsequently updating the build flags everywhere. Looks like it was originally pinned due to a memory leak, which has presumably now been fixed if the fix was in |
|
Pinning is optional (though perhaps we want to lock & use Cargo.lock if we're so interested in pinned deps these days — maybe not a big deal for our Jaeger reporter, but if we write more bits of Synapse in Rust), but it should be a versioned release (which follows semver by definition) rather than a floating git branch controlled by someone else! :) |
|
Yeah, I think we can move PyO3 back to using proper cargo releases and removing the git stuff. |
|
And I think if we're distributing the source then we should include the |
|
#6 bumps the deps |
Co-authored-by: Erik Johnston <erikj@jki.re>
|
I've simply accepted the suggested change from yourself @erikjohnston. Not sure if there's anything more to do? |
Adds a bare-minimum
pyproject.tomlfile as detailed here to allowpipto build the rust jaeger reporter from source. This allows this package to be installed alongside python interpreters other than CPython (i.e. Pyston).PS: I'm not sure if any other options are necessary, though testing building locally, installing and then running with a local Synapse works.
Version bounds are based on maturin's current version of v0.12.18.