wolf4ood / gremlin-rs

Gremlin Rust
Apache License 2.0
108 stars 30 forks source link

Simplify features, strip dependencies and remove native-tls #184

Closed mlemesle closed 1 year ago

mlemesle commented 1 year ago

Closes #176 and #180

mlemesle commented 1 year ago

Hello !

I've been working on these issues. This is still work in progress, but you can see where the developments are going. Is that what you had in mind ?

Can you please have a look and tell me if I can continue on this path or if those changes are going the wrong way ?

Thanks :)

wolf4ood commented 1 year ago

Hi @mlemesle

thanks for working on this. it seems promising. Just a quick question by switching to async i see that basically we have or will remove the async-std version right?

mlemesle commented 1 year ago

Hey @wolf4ood , thanks for replying !

What I had in mind is to be runtime agnostic. I thought that's what you had in mind as well when you mentioned async and sync features.

Unfortunately, I think this would require a major refactor of the whole connection and client parts.

What do you think?

wolf4ood commented 1 year ago

@mlemesle

the idea was to have to set of feature

-async -sync

with async by default

For the async it would be cool to have runtime agnostic but it's not easy and sometimes requires additional libraries.

We have a couple of options

Option 1

async as base feature like now and activate tokio or async-td

Option2

async

as the only async feature and we will drop async-std

The second one probably it''s more drastic but it will simplify a lot everything. And probably it will also work with async-std but we have to check that

mlemesle commented 1 year ago

I'll see what I can do. Maybe I'll need to ask some questions later, but for now I need to process those informations.

Thanks for your help!

mlemesle commented 1 year ago

Closed in favor of #187