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

[Bug]: broken build of 1.4.0 using rust 1.75 #2882

Open
remicollet opened this issue Oct 9, 2024 · 7 comments
Open

[Bug]: broken build of 1.4.0 using rust 1.75 #2882

remicollet opened this issue Oct 9, 2024 · 7 comments
Labels
🐛 bug Something isn't working

Comments

@remicollet
Copy link
Contributor

Bug report

Using rust 1.75 in RHEL 8.10 and 9.4 results in build failure

error[E0658]: use of unstable library feature 'result_option_inspect'
   --> libdatadog/sidecar/src/service/sidecar_server.rs:918:18
    |
918 |                 .inspect(|f| f.send_owned(actions));
    |                  ^^^^^^^
    |
    = note: see issue #91345 <https://github.com/rust-lang/rust/issues/91345> for more information
    = help: add `#![feature(result_option_inspect)]` to the crate attributes to enable

PHP version

irrelevant

Tracer or profiler version

1.4.0

Installed extensions

irrelevant

Output of phpinfo()

No response

Upgrading from

No response

@remicollet remicollet added the 🐛 bug Something isn't working label Oct 9, 2024
@remicollet
Copy link
Contributor Author

remicollet commented Oct 9, 2024

Notice: build OK with rust 1.81 in Fedora or 1.79 in CentOS Stream 9

For memory
https://rpms.remirepo.net/rpmphp/zoom.php?rpm=rust

@remicollet
Copy link
Contributor Author

Could be related to PR #2876

@morrisonlevi
Copy link
Collaborator

PR 2876 hasn't merged, so that's not why v1.4.0 has an issue. libdatadog bumped to 1.76 because of an issue with crates it depends on for a new feature.

If I'm understanding the specific build failure, we can probably fix this and release 1.4.1. The sidecar feature doesn't need 1.76 as far as I can tell, we can rewrite the problematic code for a 1.75 compatible build. It's a different crate that needed to bump the version to 1.76.

@morrisonlevi
Copy link
Collaborator

@remicollet , are you comfortable with us pointing to that URL of RPM builds in our documentation on what versions are acceptable to bump to? Something like:

When bumping the Rust version, make sure that the version is less than or equal to latest Alpine Linux version, and also the latest RHEL 8.x and 9.x releases (not stream).

@remicollet
Copy link
Contributor Author

@remicollet , are you comfortable with us pointing to that URL of RPM builds in our documentation on what versions are acceptable to bump to? Something like:

No problem, this is publicly open

@remicollet
Copy link
Contributor Author

we can rewrite the problematic code for a 1.75 compatible build.

And of course, I can quickly test a patch proposal

@bwoebi
Copy link
Collaborator

bwoebi commented Oct 9, 2024

We actually require 1.76, because there was a codepath on an older rust version, which led to a crash due to a compiler bug :-(

So, 1.75 may be made to work, but it will crash with some functionality.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐛 bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants