Fwiw, took a quick run at building and testing Node.js against the 3.x beta.
It was API compatible enough to build. The DH_, ECDH_, HMAC_, etc. deprecations make sense, will look at those. My assumption is that EVP versions of these exist in openssl 1.1.1, and that if we switch our openssl 1.1.1 code to using the EVP APIs, that that cod will then work unchanged when we update to openssl 3.x? ERR_func_error_string, what is its replacement? I didn't see it mentioned in the wiki, but its marked deprecated. Tests didn't go so well. Minor changes in error strings are to be expected, but more than that changed. I haven't looked at these yet other than scan the output, we might be relying on internals, but just for anyone curious, here's the test output: https://gist.github.com/sam-github/5a3b3775029efb3d31109d7e6e390f85