Replies: 18 comments 42 replies
|
Exactly, still not ok, feel free use this discussion to help you with smol compilation issues. I want to add compio back as async runtime option before 0.1.0 and rework middleware. |
|
Of course : |
|
Oh, my bad, as a test, please remove http1 or http2 from deboa features
list.
I need to improve this function to set default http protocol.
Atenciosamente (Graciously),
Rogério Pereira Araújo
Em seg., 16 de mar. de 2026 às 06:43, Max ***@***.***>
escreveu:
… I've already made this test, same problem.
When I execute a dependencies tree with cargo tree, I see tokio is still a
dependency of deboa :
rlauncher v25.11.0 (C:\Dev\rust\rlauncher)
├── deboa v0.1.0-beta.6
│ ├── async-executor v1.13.3
│ │ ├── async-task v4.7.1
│ │ ├── concurrent-queue v2.5.0
│ │ │ └── crossbeam-utils v0.8.21
│ │ ├── fastrand v2.3.0
│ │ ├── futures-lite v2.6.0
│ │ │ ├── fastrand v2.3.0
│ │ │ ├── futures-core v0.3.32
│ │ │ ├── futures-io v0.3.32
│ │ │ ├── parking v2.2.1
│ │ │ └── pin-project-lite v0.2.17
│ │ ├── pin-project-lite v0.2.17
│ │ └── slab v0.4.10
│ ├── async-std-resolver v0.23.2
│ │ ├── async-std v1.13.2
│ │ │ ├── async-channel v1.9.0
│ │ │ │ ├── concurrent-queue v2.5.0 (*)
│ │ │ │ ├── event-listener v2.5.3
│ │ │ │ └── futures-core v0.3.32
│ │ │ ├── async-global-executor v2.4.1
│ │ │ │ ├── async-channel v2.3.1
│ │ │ │ │ ├── concurrent-queue v2.5.0 (*)
│ │ │ │ │ ├── event-listener-strategy v0.5.4
│ │ │ │ │ │ ├── event-listener v5.4.0
│ │ │ │ │ │ │ ├── concurrent-queue v2.5.0 (*)
│ │ │ │ │ │ │ ├── parking v2.2.1
│ │ │ │ │ │ │ └── pin-project-lite v0.2.17
│ │ │ │ │ │ └── pin-project-lite v0.2.17
│ │ │ │ │ ├── futures-core v0.3.32
│ │ │ │ │ └── pin-project-lite v0.2.17
│ │ │ │ ├── async-executor v1.13.3 (*)
│ │ │ │ ├── async-io v2.4.1
│ │ │ │ │ ├── async-lock v3.4.0
│ │ │ │ │ │ ├── event-listener v5.4.0 (*)
│ │ │ │ │ │ ├── event-listener-strategy v0.5.4 (*)
│ │ │ │ │ │ └── pin-project-lite v0.2.17
│ │ │ │ │ ├── cfg-if v1.0.4
│ │ │ │ │ ├── concurrent-queue v2.5.0 (*)
│ │ │ │ │ ├── futures-io v0.3.32
│ │ │ │ │ ├── futures-lite v2.6.0 (*)
│ │ │ │ │ ├── parking v2.2.1
│ │ │ │ │ ├── polling v3.8.0
│ │ │ │ │ │ ├── cfg-if v1.0.4
│ │ │ │ │ │ ├── concurrent-queue v2.5.0 (*)
│ │ │ │ │ │ ├── pin-project-lite v0.2.17
│ │ │ │ │ │ ├── tracing v0.1.41
│ │ │ │ │ │ │ ├── log v0.4.29
│ │ │ │ │ │ │ │ └── value-bag v1.12.0
│ │ │ │ │ │ │ ├── pin-project-lite v0.2.17
│ │ │ │ │ │ │ ├── tracing-attributes v0.1.30 (proc-macro)
│ │ │ │ │ │ │ │ ├── proc-macro2 v1.0.95 (*)
│ │ │ │ │ │ │ │ ├── quote v1.0.40 (*)
│ │ │ │ │ │ │ │ └── syn v2.0.104 (*)
│ │ │ │ │ │ │ └── tracing-core v0.1.34
│ │ │ │ │ │ │ └── once_cell v1.21.3
│ │ │ │ │ │ │ ├── critical-section v1.2.0
│ │ │ │ │ │ │ └── portable-atomic v1.11.1
│ │ │ │ │ │ │ └── critical-section v1.2.0
│ │ │ │ │ │ └── windows-sys v0.59.0
│ │ │ │ │ │ └── windows-targets v0.52.6
│ │ │ │ │ │ └── windows_x86_64_msvc v0.52.6
│ │ │ │ │ ├── rustix v1.0.7
│ │ │ │ │ │ ├── bitflags v2.9.1
│ │ │ │ │ │ │ └── serde v1.0.228
│ │ │ │ │ │ │ ├── serde_core v1.0.228
│ │ │ │ │ │ │ └── serde_derive v1.0.228 (proc-macro)
│ │ │ │ │ │ │ ├── proc-macro2 v1.0.95 (*)
│ │ │ │ │ │ │ ├── quote v1.0.40 (*)
│ │ │ │ │ │ │ └── syn v2.0.104 (*)
│ │ │ │ │ │ ├── errno v0.3.13
│ │ │ │ │ │ │ └── windows-sys v0.60.2
│ │ │ │ │ │ │ └── windows-targets v0.53.2
│ │ │ │ │ │ │ └── windows_x86_64_msvc v0.53.0
│ │ │ │ │ │ └── windows-sys v0.59.0 (*)
│ │ │ │ │ ├── slab v0.4.10
│ │ │ │ │ ├── tracing v0.1.41 (*)
│ │ │ │ │ └── windows-sys v0.59.0 (*)
│ │ │ │ ├── async-lock v3.4.0 (*)
│ │ │ │ ├── blocking v1.6.1
│ │ │ │ │ ├── async-channel v2.3.1 (*)
│ │ │ │ │ ├── async-task v4.7.1
│ │ │ │ │ ├── futures-io v0.3.32
│ │ │ │ │ ├── futures-lite v2.6.0 (*)
│ │ │ │ │ └── piper v0.2.4
│ │ │ │ │ ├── atomic-waker v1.1.2
│ │ │ │ │ ├── fastrand v2.3.0
│ │ │ │ │ └── futures-io v0.3.32
│ │ │ │ ├── futures-lite v2.6.0 (*)
│ │ │ │ └── once_cell v1.21.3 (*)
│ │ │ ├── async-io v2.4.1 (*)
│ │ │ ├── async-lock v3.4.0 (*)
│ │ │ ├── async-process v2.3.1
│ │ │ │ ├── async-channel v2.3.1 (*)
│ │ │ │ ├── async-io v2.4.1 (*)
│ │ │ │ ├── async-lock v3.4.0 (*)
│ │ │ │ ├── async-task v4.7.1
│ │ │ │ ├── blocking v1.6.1 (*)
│ │ │ │ ├── cfg-if v1.0.4
│ │ │ │ ├── event-listener v5.4.0 (*)
│ │ │ │ ├── futures-lite v2.6.0 (*)
│ │ │ │ └── tracing v0.1.41 (*)
│ │ │ ├── crossbeam-utils v0.8.21
│ │ │ ├── futures-core v0.3.32
│ │ │ ├── futures-io v0.3.32
│ │ │ ├── futures-lite v2.6.0 (*)
│ │ │ ├── kv-log-macro v1.0.7
│ │ │ │ └── log v0.4.29 (*)
│ │ │ ├── log v0.4.29 (*)
│ │ │ ├── memchr v2.7.5
│ │ │ ├── once_cell v1.21.3 (*)
│ │ │ ├── pin-project-lite v0.2.17
│ │ │ ├── pin-utils v0.1.0
│ │ │ └── slab v0.4.10
│ │ ├── async-trait v0.1.89 (proc-macro) (*)
│ │ ├── futures-io v0.3.32
│ │ ├── futures-util v0.3.32
│ │ │ ├── futures-channel v0.3.32
│ │ │ │ ├── futures-core v0.3.32
│ │ │ │ └── futures-sink v0.3.32
│ │ │ ├── futures-core v0.3.32
│ │ │ ├── futures-io v0.3.32
│ │ │ ├── futures-macro v0.3.32 (proc-macro)
│ │ │ │ ├── proc-macro2 v1.0.95 (*)
│ │ │ │ ├── quote v1.0.40 (*)
│ │ │ │ └── syn v2.0.104 (*)
│ │ │ ├── futures-sink v0.3.32
│ │ │ ├── futures-task v0.3.32
│ │ │ ├── memchr v2.7.5
│ │ │ ├── pin-project-lite v0.2.17
│ │ │ └── slab v0.4.10
│ │ ├── pin-utils v0.1.0
│ │ ├── socket2 v0.5.10
│ │ │ └── windows-sys v0.52.0
│ │ │ └── windows-targets v0.52.6 (*)
│ │ └── trust-dns-resolver v0.23.2
│ │ ├── cfg-if v1.0.4
│ │ ├── futures-util v0.3.32 (*)
│ │ ├── ipconfig v0.3.2
│ │ │ ├── socket2 v0.5.10 (*)
│ │ │ ├── widestring v1.2.1
│ │ │ ├── windows-sys v0.48.0
│ │ │ │ └── windows-targets v0.48.5
│ │ │ │ └── windows_x86_64_msvc v0.48.5
│ │ │ └── winreg v0.50.0
│ │ │ ├── cfg-if v1.0.4
│ │ │ └── windows-sys v0.48.0 (*)
│ │ ├── lru-cache v0.1.2
│ │ │ └── linked-hash-map v0.5.6
│ │ ├── once_cell v1.21.3 (*)
│ │ ├── parking_lot v0.12.5
│ │ │ ├── lock_api v0.4.14
│ │ │ │ └── scopeguard v1.2.0
│ │ │ └── parking_lot_core v0.9.12
│ │ │ ├── cfg-if v1.0.4
│ │ │ ├── smallvec v1.15.1
│ │ │ └── windows-link v0.2.1
│ │ ├── rand v0.8.5
│ │ │ ├── rand_chacha v0.3.1
│ │ │ │ ├── ppv-lite86 v0.2.21
│ │ │ │ │ └── zerocopy v0.8.26
│ │ │ │ └── rand_core v0.6.4
│ │ │ │ └── getrandom v0.2.16
│ │ │ │ └── cfg-if v1.0.4
│ │ │ └── rand_core v0.6.4 (*)
│ │ ├── resolv-conf v0.7.6
│ │ ├── smallvec v1.15.1
│ │ ├── thiserror v1.0.69
│ │ │ └── thiserror-impl v1.0.69 (proc-macro)
│ │ │ ├── proc-macro2 v1.0.95 (*)
│ │ │ ├── quote v1.0.40 (*)
│ │ │ └── syn v2.0.104 (*)
│ │ ├── tokio v1.49.0
│ │ │ ├── bytes v1.11.1
│ │ │ ├── mio v1.0.4
│ │ │ │ └── windows-sys v0.59.0 (*)
│ │ │ ├── pin-project-lite v0.2.17
│ │ │ ├── socket2 v0.6.0
│ │ │ │ └── windows-sys v0.59.0 (*)
│ │ │ ├── tokio-macros v2.6.0 (proc-macro)
│ │ │ │ ├── proc-macro2 v1.0.95 (*)
│ │ │ │ ├── quote v1.0.40 (*)
│ │ │ │ └── syn v2.0.104 (*)
│ │ │ └── windows-sys v0.61.2
│ │ │ └── windows-link v0.2.1
│ │ ├── tracing v0.1.41 (*)
│ │ └── trust-dns-proto v0.23.2
│ │ ├── async-trait v0.1.89 (proc-macro) (*)
│ │ ├── cfg-if v1.0.4
│ │ ├── data-encoding v2.10.0
│ │ ├── enum-as-inner v0.6.1 (proc-macro)
│ │ │ ├── heck v0.5.0
│ │ │ ├── proc-macro2 v1.0.95 (*)
│ │ │ ├── quote v1.0.40 (*)
│ │ │ └── syn v2.0.104 (*)
│ │ ├── futures-channel v0.3.32 (*)
│ │ ├── futures-io v0.3.32
│ │ ├── futures-util v0.3.32 (*)
│ │ ├── idna v0.4.0
│ │ │ ├── unicode-bidi v0.3.18
│ │ │ └── unicode-normalization v0.1.25
│ │ │ └── tinyvec v1.9.0
│ │ │ └── tinyvec_macros v0.1.1
│ │ ├── ipnet v2.12.0
│ │ ├── once_cell v1.21.3 (*)
│ │ ├── rand v0.8.5 (*)
│ │ ├── smallvec v1.15.1
│ │ ├── thiserror v1.0.69 (*)
│ │ ├── tinyvec v1.9.0 (*)
│ │ ├── tokio v1.49.0 (*)
│ │ ├── tracing v0.1.41 (*)
│ │ └── url v2.5.8
│ │ ├── form_urlencoded v1.2.2
│ │ │ └── percent-encoding v2.3.2
│ │ ├── idna v1.1.0
│ │ │ ├── idna_adapter v1.2.1
│ │ │ │ ├── icu_normalizer v2.0.0
│ │ │ │ │ ├── displaydoc v0.2.5 (proc-macro)
│ │ │ │ │ │ ├── proc-macro2 v1.0.95 (*)
│ │ │ │ │ │ ├── quote v1.0.40 (*)
│ │ │ │ │ │ └── syn v2.0.104 (*)
│ │ │ │ │ ├── icu_collections v2.0.0
│ │ │ │ │ │ ├── displaydoc v0.2.5 (proc-macro) (*)
│ │ │ │ │ │ ├── potential_utf v0.1.2
│ │ │ │ │ │ │ └── zerovec v0.11.5
│ │ │ │ │ │ │ ├── yoke v0.8.0
│ │ │ │ │ │ │ │ ├── stable_deref_trait v1.2.0
│ │ │ │ │ │ │ │ ├── yoke-derive v0.8.0 (proc-macro)
│ │ │ │ │ │ │ │ │ ├── proc-macro2 v1.0.95 (*)
│ │ │ │ │ │ │ │ │ ├── quote v1.0.40 (*)
│ │ │ │ │ │ │ │ │ ├── syn v2.0.104 (*)
│ │ │ │ │ │ │ │ │ └── synstructure v0.13.2
│ │ │ │ │ │ │ │ │ ├── proc-macro2 v1.0.95 (*)
│ │ │ │ │ │ │ │ │ ├── quote v1.0.40 (*)
│ │ │ │ │ │ │ │ │ └── syn v2.0.104 (*)
│ │ │ │ │ │ │ │ └── zerofrom v0.1.6
│ │ │ │ │ │ │ │ └── zerofrom-derive v0.1.6 (proc-macro)
│ │ │ │ │ │ │ │ ├── proc-macro2 v1.0.95 (*)
│ │ │ │ │ │ │ │ ├── quote v1.0.40 (*)
│ │ │ │ │ │ │ │ ├── syn v2.0.104 (*)
│ │ │ │ │ │ │ │ └── synstructure v0.13.2 (*)
│ │ │ │ │ │ │ ├── zerofrom v0.1.6 (*)
│ │ │ │ │ │ │ └── zerovec-derive v0.11.1 (proc-macro)
│ │ │ │ │ │ │ ├── proc-macro2 v1.0.95 (*)
│ │ │ │ │ │ │ ├── quote v1.0.40 (*)
│ │ │ │ │ │ │ └── syn v2.0.104 (*)
│ │ │ │ │ │ ├── yoke v0.8.0 (*)
│ │ │ │ │ │ ├── zerofrom v0.1.6 (*)
│ │ │ │ │ │ └── zerovec v0.11.5 (*)
│ │ │ │ │ ├── icu_normalizer_data v2.0.0
│ │ │ │ │ ├── icu_provider v2.0.0
│ │ │ │ │ │ ├── displaydoc v0.2.5 (proc-macro) (*)
│ │ │ │ │ │ ├── icu_locale_core v2.1.1
│ │ │ │ │ │ │ ├── displaydoc v0.2.5 (proc-macro) (*)
│ │ │ │ │ │ │ ├── litemap v0.8.0
│ │ │ │ │ │ │ ├── tinystr v0.8.1
│ │ │ │ │ │ │ │ ├── displaydoc v0.2.5 (proc-macro) (*)
│ │ │ │ │ │ │ │ └── zerovec v0.11.5 (*)
│ │ │ │ │ │ │ ├── writeable v0.6.2
│ │ │ │ │ │ │ └── zerovec v0.11.5 (*)
│ │ │ │ │ │ ├── stable_deref_trait v1.2.0
│ │ │ │ │ │ ├── tinystr v0.8.1 (*)
│ │ │ │ │ │ ├── writeable v0.6.2
│ │ │ │ │ │ ├── yoke v0.8.0 (*)
│ │ │ │ │ │ ├── zerofrom v0.1.6 (*)
│ │ │ │ │ │ ├── zerotrie v0.2.2
│ │ │ │ │ │ │ ├── displaydoc v0.2.5 (proc-macro) (*)
│ │ │ │ │ │ │ ├── yoke v0.8.0 (*)
│ │ │ │ │ │ │ └── zerofrom v0.1.6 (*)
│ │ │ │ │ │ └── zerovec v0.11.5 (*)
│ │ │ │ │ ├── smallvec v1.15.1
│ │ │ │ │ └── zerovec v0.11.5 (*)
│ │ │ │ └── icu_properties v2.0.1
│ │ │ │ ├── displaydoc v0.2.5 (proc-macro) (*)
│ │ │ │ ├── icu_collections v2.0.0 (*)
│ │ │ │ ├── icu_locale_core v2.1.1 (*)
│ │ │ │ ├── icu_properties_data v2.0.1
│ │ │ │ ├── icu_provider v2.0.0 (*)
│ │ │ │ ├── potential_utf v0.1.2 (*)
│ │ │ │ ├── zerotrie v0.2.2 (*)
│ │ │ │ └── zerovec v0.11.5 (*)
│ │ │ ├── smallvec v1.15.1
│ │ │ └── utf8_iter v1.0.4
│ │ └── percent-encoding v2.3.2
├── deboa-extras v0.0.8
...
—
Reply to this email directly, view it on GitHub
<#171 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AABT5FZU2SD5S7GXPSKBL4L4Q7EEHAVCNFSM6AAAAACWQ2LW3WVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTMMJVGU4TKMA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
|
Same issue, even without httpX features : The dependency tree is the same, still tokio |
|
Ok, give a minute, will reproduce here and push a fix, if needed.
Atenciosamente (Graciously),
Rogério Pereira Araújo
Em seg., 16 de mar. de 2026 às 07:02, Max ***@***.***>
escreveu:
… Same issue, even without httpX features :
deboa-extras = { version = "0.0.8", default-features = false, features= [ "smol-rt" ] }
deboa = { version = "0.1.0-beta.6", default-features = false, features = ["smol-rt"] }
The dependency tree is the same, still tokio
—
Reply to this email directly, view it on GitHub
<#171 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AABT5F73OGOBIFUJZBJH7HD4Q7GLVAVCNFSM6AAAAACWQ2LW3WVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTMMJVGYZTAMA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
|
@max3163 going to release another beta release for rt-gate fixing the issue. Please try version 0.1.5 |
|
That’s weird, I didn’t get this during compilation here, are you enabling
specific feature flags in deboa-extras? Which ones?
Em ter., 17 de mar. de 2026 às 05:42, Max ***@***.***>
escreveu:
… I don't understand why, but I still have the same issue :
Compiling deboa-extras v0.0.9-beta.4
error[E0432]: unresolved import `http`
--> C:\Users\\.cargo\registry\src\94fdbcbb893d7844\deboa-extras-0.0.9-beta.4\src\catcher\encoding.rs:9:5
|
9 | use http::{header, HeaderValue};
| ^^^^ help: a similar path exists: `crate::http`
|
= note: `use` statements changed in Rust 2018; read more at <https://doc.rust-lang.org/edition-guide/rust-2018/module-system/path-clarity.html>
For more information about this error, try `rustc --explain E0432`.
error: could not compile `deboa-extras` (lib) due to 1 previous error
warning: build failed, waiting for other jobs to finish...
—
Reply to this email directly, view it on GitHub
<#171 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AABT5FZ5FYSEWADMGN6PPYD4REFW7AVCNFSM6AAAAACWQ2LW3WVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTMMJXGQYTSNQ>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
|
I'm not an expert in compilation in rust, but the goal of my project is to create an executable with a minimal size. That's why I use your lib and smol framework. Is it normal ? |
|
Strange, I can't download this version : error: the crate |
|
Actually, I'm trying to migrate my project to deboa in order to minimize the bin size ( no more tokio, full smol and less base code in mind ) but it's not the case in reality. The bin size is about 2Mo bigger ! 4.9Mo with reqwest and 6.5Mo with deboa.
With deboa.beta11 of course profile compile is the same. |
|
With rewquest, I don't see any reference to rustls, even if my build can download https ressource. Is it normal for deboa ? |
|
Let me investigate and add some tests too.
Em sex., 20 de mar. de 2026 às 16:01, Max ***@***.***>
escreveu:
… When I use native-tls, deboa no more compile.
error[E0428]: the name `alpn` is defined multiple times
--> C:\Users\.cargo\registry\src\94fdbcbb893d7844\deboa-0.1.0-beta.14\src\lib.rs:101:1
|
84 | pub(crate) fn alpn() -> Vec<Vec<u8>> {
| ------------------------------------ previous definition of the value `alpn` here
...
101 | pub(crate) fn alpn() -> &'static [&'static str] {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `alpn` redefined here
|
= note: `alpn` must be defined only once in the value namespace of this module
error[E0428]: the name `Tls` is defined multiple times
--> C:\Users\.cargo\registry\src\94fdbcbb893d7844\deboa-0.1.0-beta.14\src\rt\smol\stream.rs:27:5
|
23 | Tls(TlsStream<TcpStream>),
| ------------------------- previous definition of the type `Tls` here
...
27 | Tls(Box<TlsStream<TcpStream>>),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Tls` redefined here
|
= note: `Tls` must be defined only once in the type namespace of this enum
and many others errors
—
Reply to this email directly, view it on GitHub
<#171>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AABT5F4KCHUDUJAX4HSJALT4RWIOZAVCNFSM6AAAAACWQ2LW3WVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTMMRTGA4TKNQ>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
|
Can you please share what your Cargo.toml again? |
|
But in short, you can't use tokio-rust-tls and tokio-native-tls together, you can use either one or another. |
|
I'm trying to only use smol and I'm aware that native tls can't be use with rustls. Full error log |
|
I try with last deboa ( beta.15 and extra beta.7 ) with this feature : And now it's again rt-gate which not compile : |



Uh oh!
There was an error while loading. Please reload this page.
I juste want to know, if you have any idea of when you will publish the new 0.1.0 version of deboa ?
Actually I try to test with betaX version but impossible to compile it with smol dependencies ( many error with dependencies of dependencies etc... )
I guess the version isn't still OK ?
All reactions