Git Product home page Git Product logo

Comments (9)

mre avatar mre commented on August 11, 2024

Don't have much time to look into this right away, but maybe I can note down some pointers for investigation.

Could be related to rust-lang/cargo#7169 and https://users.rust-lang.org/t/problem-tokyo-0-3-thread-main-panicked-at-not-currently-running-on-the-tokio-runtime-solved/50336/6. Perhaps a combination of it.

How did you install lychee? You could try with cargo install --locked lychee and see if you can reproduce the error.

from lychee.

alebcay avatar alebcay commented on August 11, 2024

I will try that. I installed it with the Homebrew formula I drafted (#59 (comment)). Homebrew's default for install Rust packages does include the --locked flag, though. I also got the same error with the lycheeverse/lychee Docker image, though (in the CI environment).

I will reinstall via cargo on my local environment and attempt to reproduce the issue.

from lychee.

alebcay avatar alebcay commented on August 11, 2024

Reproduced what appears to be the same error after installing with cargo install --locked lychee.

thread 'tokio-runtime-worker' panicked at 'not currently running on a Tokio 0.2.x runtime.', /Users/caleb/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.25/src/runtime/handle.rs:118:28
stack backtrace:
   0:        0x1041e147e - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h3b6ed74a60c4de30
   1:        0x104217c0e - core::fmt::write::h72dd6ddbc116ef3c
   2:        0x1041e086a - std::io::Write::write_fmt::h033803ce14d847cc
   3:        0x1041f5639 - std::panicking::default_hook::{{closure}}::h040276b51a1a4749
   4:        0x1041f535e - std::panicking::default_hook::h2a43ed83163cecb9
   5:        0x1041f5bca - std::panicking::rust_panic_with_hook::h15f3dba6c099e04e
   6:        0x1041e1b35 - std::panicking::begin_panic_handler::{{closure}}::h33fb39231ad9a88d
   7:        0x1041e15f8 - std::sys_common::backtrace::__rust_end_short_backtrace::hd5ec6f84e4df1d34
   8:        0x1041f5743 - _rust_begin_unwind
   9:        0x1042374cf - core::panicking::panic_fmt::h7889f3b8e7c118f7
  10:        0x104236f9a - core::option::expect_failed::h5fe3576924a3bde2
  11:        0x104092434 - tokio::runtime::handle::Handle::current::h216706fcbcf63904
  12:        0x103f6d407 - tokio::runtime::blocking::pool::spawn_blocking::h2d146bcf79ecdf18
  13:        0x103f7c468 - <hyper::client::connect::dns::GaiResolver as tower_service::Service<hyper::client::connect::dns::Name>>::call::h1917ce428ac86be7
  14:        0x103ec6c7d - <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll::hb2097738f721f61c
  15:        0x103eb8bc1 - <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll::h51696f8b25e59603
  16:        0x103ec9411 - <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll::he5d63aa5655e29df
  17:        0x103ec104b - <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll::ha4ee0b75e2c1ddf6
  18:        0x103ee3815 - <hyper::service::oneshot::Oneshot<S,Req> as core::future::future::Future>::poll::h810cd1161d70494b
  19:        0x103ee625b - <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll::ha2e8adb512c51b9d
  20:        0x103ee5a01 - <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll::h883f7705d5f71433
  21:        0x103f063e5 - <futures_util::future::try_future::try_flatten::TryFlatten<Fut,<Fut as futures_core::future::TryFuture>::Ok> as core::future::future::Future>::poll::h25eaf1ecd3d26ed2
  22:        0x103e9b2c7 - <hyper::common::lazy::Lazy<F,R> as core::future::future::Future>::poll::h4e9bf91b2fef42b8
  23:        0x103f43987 - <futures_util::future::select::Select<A,B> as core::future::future::Future>::poll::h3a7910910919877c
  24:        0x103ee4d20 - <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll::h53b48e09d6ab22b4
  25:        0x103f2a5eb - <futures_util::future::future::flatten::Flatten<Fut,<Fut as core::future::future::Future>::Output> as core::future::future::Future>::poll::h112f3ada62b4956d
  26:        0x103ee4ecf - <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll::h68c02630116bd5bd
  27:        0x103f06a5a - <futures_util::future::try_future::try_flatten::TryFlatten<Fut,<Fut as futures_core::future::TryFuture>::Ok> as core::future::future::Future>::poll::hd3640ac557a51af0
  28:        0x103f0f43e - <futures_util::future::poll_fn::PollFn<F> as core::future::future::Future>::poll::h0da954f21a6d4025
  29:        0x103f6eb26 - <hyper::client::ResponseFuture as core::future::future::Future>::poll::haa0ac74ad4f63e0e
  30:        0x103f1d8d4 - <reqwest::async_impl::client::PendingRequest as core::future::future::Future>::poll::h63730e53253e6c12
  31:        0x103f1d7e7 - <reqwest::async_impl::client::Pending as core::future::future::Future>::poll::hb7a88c115a44324d
  32:        0x103e1923d - <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll::hed93742da36222e3
  33:        0x103e28fad - <futures_util::future::try_future::try_flatten::TryFlatten<Fut,<Fut as futures_core::future::TryFuture>::Ok> as core::future::future::Future>::poll::h61c2757e6a613c50
  34:        0x103e18a69 - <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll::ha6d40c3b5e89da23
  35:        0x103e29ae4 - <futures_util::future::try_future::try_flatten::TryFlatten<Fut,<Fut as futures_core::future::TryFuture>::Ok> as core::future::future::Future>::poll::ha8e9b5c5078e85e3
  36:        0x103e2c71e - <futures_util::future::try_future::AndThen<Fut1,Fut2,F> as core::future::future::Future>::poll::hf2a7d032f8d8eab2
  37:        0x103e17986 - <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll::h0fd8e55b735fc89e
  38:        0x103e2c6be - <futures_util::future::try_future::MapOk<Fut,F> as core::future::future::Future>::poll::hfe9236d0094aac22
  39:        0x103c04798 - <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll::he1e2349355930b69
  40:        0x103b3c6e7 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::haa126138ad13af97
  41:        0x103b5f00b - tokio::runtime::task::harness::poll_future::h060ab60627dc058d
  42:        0x103b61edb - tokio::runtime::task::harness::Harness<T,S>::poll::h960027449862b4d4
  43:        0x10409a13f - std::thread::local::LocalKey<T>::with::hbd8f0f9f89bc211b
  44:        0x1040b8ebf - tokio::runtime::thread_pool::worker::Context::run_task::h8b5d67cd7e8bfda7
  45:        0x1040b8093 - tokio::runtime::thread_pool::worker::Context::run::h913dffb5128b81cc
  46:        0x1040af133 - tokio::macros::scoped_tls::ScopedKey<T>::set::h6dd542d8bd47eed3
  47:        0x1040b7b9d - tokio::runtime::thread_pool::worker::run::haa29f637ddc08d7c
  48:        0x1040c2faf - tokio::runtime::task::core::CoreStage<T>::poll::hcf2070e4e5c6638c
  49:        0x1040bea2d - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h521c6231f6c4c98c
  50:        0x1040ba9b9 - tokio::runtime::task::harness::Harness<T,S>::poll::h6308f2f762d85e78
  51:        0x1040ad5eb - std::sys_common::backtrace::__rust_begin_short_backtrace::h168919c8884614da
  52:        0x10409fe85 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h3721ef77e6ac5d88
  53:        0x1041fcf4b - std::sys::unix::thread::Thread::new::thread_start::hed7aa7efa61a9b35
  54:     0x7fff2033e950 - __pthread_start

from lychee.

mre avatar mre commented on August 11, 2024

Don't have much time to look into this right away, but maybe I can note down some pointers for investigation.

Could be related to rust-lang/cargo#7169 and https://users.rust-lang.org/t/problem-tokyo-0-3-thread-main-panicked-at-not-currently-running-on-the-tokio-runtime-solved/50336/6. Perhaps a combination of it.

How did you install lychee? You could try with cargo install --locked lychee and see if you can reproduce the error.

from lychee.

pawroman avatar pawroman commented on August 11, 2024

This is weird because the stacktrace comes from Tokio 0.2.x, while we have 1.x. It would be good to oust the old version.

I have analyzed the dependencies and it seems that the only lib using old reqwest version (which uses Tokio 0.2.x) is check-if-email-exists.

There's an open PR to bump the reqwest version on that lib's repo which should get us rid of Tokio 0.2.x: reacherhq/check-if-email-exists#829

from lychee.

mre avatar mre commented on August 11, 2024

Good shot. In the hope of solving the problem I sent a PR: reacherhq/check-if-email-exists#869. 🤞

from lychee.

mre avatar mre commented on August 11, 2024

New release is currently blocked on async-email/async-smtp#36. Without that we can't bump the version of check-if-email-exists (because async-smtp is a dependency) and that means we cannot publish a new version of lychee. (git repos are not allowed as dependencies for binaries published on crates.io.)

That said, we could create a lychee development branch for now and use that as the source for the lychee action. 🤔 If that's worth the effort largely depends on how long it takes until the upstream changes are merged.

from lychee.

mre avatar mre commented on August 11, 2024

The lastest master branch contains a fix. If you like to give it a try, you can

cargo install https://github.com/lycheeverse/lychee

As soon as the upstream version gets released we'll switch back to crates.io and make a new release ourselves.

from lychee.

mre avatar mre commented on August 11, 2024

Gonna go ahead and close this. Should be fixed in master.

from lychee.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.