Skip to content

upgrade zlib-rs to version 0.5.0 #482

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

Merged
merged 1 commit into from
Apr 2, 2025

Conversation

folkertdev
Copy link
Contributor

With this release, by default zlib-rs no longer exports C symbols, and hence can be used in projects that do, via some other route, include those symbols (e.g. via libz-sys in openssl).

Copy link
Member

@Byron Byron left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot! This feels like a big step for improving usability.

Also, it feels magical to me as I always thought that flate2 would use the exported C symbols to get access to the required functions.
But obviously I have no clue how flate2 actually works 😅.

@Byron Byron merged commit 98c98c8 into rust-lang:main Apr 2, 2025
14 checks passed
@Byron
Copy link
Member

Byron commented Apr 2, 2025

Here is the new release: https://github.com/rust-lang/flate2-rs/releases/tag/1.1.1

@folkertdev
Copy link
Contributor Author

Nice, thanks!

Also, it feels magical to me as I always thought that flate2 would use the exported C symbols to get access to the required functions.

That's how e.g. libz-sys works. flate2 just uses normal rust name resolution to call other rust functions.

There are cases where other code depends on the symbols being exported (e.g. this is what's happening with openssl), but that is extremely rare, and should really only happen when you also include a C dependency that needs the symbols. We can still do that, it's just not the default any more.

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

Successfully merging this pull request may close these issues.

2 participants