Using `ic-cdk-timers = "0.5.1"` for the first time

I got error as I ran my dfx deploy user_canister

error: linking with `rust-lld` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/Users/ahmed/.rustup/toolchains/nightly-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/bin:/Users/ahmed/.rustup/toolchains/nightly-aarch64-apple-darwin/lib/rustlib/aarch64-apple-darwin/bin/self-contained:/Users/ahmed/Library/Android/sdk/platform-tools:/Users/ahmed/Library/Android/sdk/emulator:
....
....
error: could not compile `user_canister` (lib) due to 1 previous error; 75 warnings emitted
Error: Failed while trying to deploy canisters.
Caused by: Failed while trying to deploy canisters.
  Failed to build all canisters.
    Failed while trying to build all canisters.
      The build step failed for canister 'bkyz2-fmaaa-aaaaa-qaaaq-cai' (user_canister) with an embedded error: Failed to build Rust canister 'user_canister'.: Failed to compile the rust package: user_canister

here is my code trying timers · aliscie/odoc@263205f · GitHub

any ideas ?
I already tried

  1. cargo clean and rustup update
  2. rustup toolchain install nightly-aarch64-apple-darwin
  3. dfx self update

rm Cargo.lock
rm -rf target
cargo build