Closed coderedart closed 1 year ago
async-io
is actually zenity backend & ashpd backend, dependency, so that could be moved under xdg feature
oh, does zenity
need async-io
too? I thought it would simply spawn a background thread and block on the commandline result.
It reads stdout asynchronously, but I guess this could just be moved to a blocking thread, performance does not matter for this anyway, async-io was used for that as zenity is only used for xdg-portal backend for now (for messages dialogs) and async-io is a dep of that backend already anyway.
zenity is only used for xdg-portal backend for now (for messages dialogs)
hmm. So, when the next version releases, is it possible to use zenity (for open/save file dialogs) without xdg-portal?
Once zenity backend becomes a thing someday, yes
Removed all the async related deps from gtk backend: https://github.com/PolyMeilex/rfd/pull/141
0.12 published with async deps removed from GTK feature gate
(Feel free to reopen if I missed some)
I would like to preface this by saying that i am ignorant in this area. So, i apologize in advance if i am asking a dumb question.
But is it possible to put all those async dependencies behind feature flags for async dialogs? or do we need those for the blocking operations too (especially on windows/linux)?
with all features disabled, this is the output of
cargo tree
:cry: (over 50 deps, mostly fromasync-io
)And here i have xdg portal feature enabled for linux :sob: :sob: :sob: (over 150 dependencies, mostly from
ashpd
. )gtk is better, but it still adds more than 50 deps. Fortunately, i can already see that we have a zenity/kdialog backend coming soon which won't need any dependencies at all.