Skip to content

Conversation

@thomas-zahner
Copy link
Member

Eventually closes #1721

This is a draft not yet quite ready to be merged.

@thomas-zahner
Copy link
Member Author

@mre If we see that this PR works in CI and on different machines for users, do you agree that it makes sense to fully get rid of the OpenSSL approach? Or do you think we should keep it and only change the default?

@mre
Copy link
Member

mre commented Nov 24, 2025

TBH, for now I would keep it and change the default. At least for one version. Then we can tell people to switch back to OpenSSL if there are any problems. We could mention that in the release-notes. On the other side, I'm flexible here. That's just what I would do, but we can also go all-in on rustls. 😆 Worst case, we release a patch version with the OpenSSL option available again. So whatever you believe is the best tradeoff between simplicity and user experience.

@thomas-zahner
Copy link
Member Author

This unfortunately is blocked by reacherhq/check-if-email-exists#1625. The problem is that the latest version of check-if-email-exists on crates.io uses openSSL without an option to use ruslts.

@kemingy
Copy link
Contributor

kemingy commented Nov 27, 2025

I just found that the check-if-email-exists is dual licensed under AGPL-3 or Reacher Commercial license.

But it's enabled by default for lychee CLI:

default = ["native-tls", "email-check"]

As far as I know, it's not compatible with the Apache2 + MIT license.

Maybe we need to open another issue to discuss this. What do you think? @mre

@thomas-zahner
Copy link
Member Author

@kemingy Thanks for pointing it out. This is known since 2022 see #594. Unfortunately, we never really prioritised the issue. But you are right that this is quite problematic and now as it even blocks the transition to rustls I will try to resolve it as soon as possible.

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.

Use rustls by default

3 participants