Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ark-ec pulls in full hashbrown without feature gate #812

Open
shamatar opened this issue Mar 26, 2024 · 6 comments · May be fixed by #824 or #825
Open

Ark-ec pulls in full hashbrown without feature gate #812

shamatar opened this issue Mar 26, 2024 · 6 comments · May be fixed by #824 or #825

Comments

@shamatar
Copy link

That eventually pulls things like once_cell that require atomics on some platforms (compare-exchange), and in general HashMap is quite heavy primitive that is still not in alloc of Rust itself

Full hashbrown is pulled in

@weikengchen
Copy link
Member

Let me check how to replace the HashMap in stream_pippenger. (there should be other ways to get no-std hash map).

For the other two, easy.

@weikengchen
Copy link
Member

We can drop once_cell by removing the ahash feature from hashbrown.

@shamatar
Copy link
Author

shamatar commented Apr 6, 2024

I patched it via feature in ec and poly packages, everything works except benchmarks that can not specify features (cargo limitations...). Don't know much about internals of hashbrown to comment on proposed alternative to factor out it's dependency instead

@weikengchen
Copy link
Member

Do you think if once_cell is no longer a dependency, would it still be a problem?

@weikengchen
Copy link
Member

f46193b
Let me know your thoughts. But clearly if I can remove a dependency, it is better.

@shamatar
Copy link
Author

shamatar commented Apr 6, 2024

On once-cell I'll need to check, I'll try to turn it off using hashbrown features in my local copy and build tomorrow

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants