Cross compilation of server fails with async_trait

Open
#56 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
48/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
rust
Domain
build-system

Research direction

Reproduce the server cross-compilation failure with cargo-zigbuild, then inspect the async trait declarations in crates/middleware/src/logseq.rs, crates/middleware/src/ripgrep.rs, and crates/middleware/src/lib.rs. The work is done when the cross-compilation completes without the E0706 errors shown in the report.

Written by the indexing model from the issue text.

Description

Compiling using https://hub.docker.com/r/messense/cargo-zigbuild fails with

error[E0706]: functions in traits cannot be declared `async`
  --> crates/middleware/src/logseq.rs:36:5
   |
36 |     async fn build_knowledge_graph(&self, resource: impl Read) -> Result<Thesaurus>;
   |     -----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     `async` because of this
   |
   = note: `async` trait functions are not currently supported
   = note: consider using the `async-trait` crate: https://crates.io/crates/async-trait
   = note: see issue #91611 <https://github.com/rust-lang/rust/issues/91611> for more information

error[E0706]: functions in traits cannot be declared `async`
  --> crates/middleware/src/logseq.rs:45:5
   |
45 |       async fn index(
   |       ^----
   |       |
   |  _____`async` because of this
   | |
46 | |         &mut self,
47 | |         needle: String,
48 | |         haystack: String,
49 | |     ) -> Result<AHashMap<String, Article>> {
   | |__________________________________________^
   |
   = note: `async` trait functions are not currently supported
   = note: consider using the `async-trait` crate: https://crates.io/crates/async-trait
   = note: see issue #91611 <https://github.com/rust-lang/rust/issues/91611> for more information

error[E0706]: functions in traits cannot be declared `async`
  --> crates/middleware/src/ripgrep.rs:37:5
   |
37 |       async fn index(
   |       ^----
   |       |
   |  _____`async` because of this
   | |
38 | |         &mut self,
39 | |         needle: String,
40 | |         haystack: String,
41 | |     ) -> Result<AHashMap<String, Article>> {
   | |__________________________________________^
   |
   = note: `async` trait functions are not currently supported
   = note: consider using the `async-trait` crate: https://crates.io/crates/async-trait
   = note: see issue #91611 <https://github.com/rust-lang/rust/issues/91611> for more information

error[E0706]: functions in traits cannot be declared `async`
   --> crates/middleware/src/lib.rs:145:5
    |
145 |       async fn index(
    |       ^----
    |       |
    |  _____`async` because of this
    | |
146 | |         &mut self,
147 | |         needle: String,
148 | |         haystack: String,
149 | |     ) -> Result<AHashMap<String, Article>>;
    | |___________________________________________^
    |
    = note: `async` trait functions are not currently supported
    = note: consider using the `async-trait` crate: https://crates.io/crates/async-trait
    = note: see issue #91611 <https://github.com/rust-lang/rust/issues/91611> for more information

For more information about this error, try `rustc --explain E0706`.
error: could not compile `terraphim_middleware` (lib) due to 4 previous errors

Dominant language
Rust
Stars
62
Forks
5
Avg merge
2h 27m
Merged PRs (30d)
1

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from terraphim/terraphim-ai

All issues in terraphim/terraphim-ai

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.