`sqlx` requires linking against OpenSSL twice:
- `sqlx-macros` needs to link against OpenSSL as a shared libary for use
at compile time.
- `sqlx` needs to link against OpenSSL a static library for use at
runtime.
You can find the details here:
https://github.com/launchbadge/sqlx/issues/670https://github.com/sfackler/rust-openssl/issues/1337
We go with the fix proposed by @sfackler, and add a test program that we
can use to verify everything works correctly.
We remove a few `OPENSSL`-related variables that were added 4 years ago,
and that no longer appear to be needed.
I've tweaked this so that we can easily update our dependencies in the
future.
Note that we're still using PostgreSQL 11 and we should probably start
testing everything with 12.
It turns out that some popular libaries still have problems with OpenSSL
1.1, particularly `postgres` 0.15. So we'll build two sets of images
now.
We also explain the new image tagging scheme, and fix a bug wher the
test script didn't test the newly built image.
We update our base image to Ubuntu 18.04, and update all of our
dependencies to the latest released versions. This includes:
- gcc-multilib-arm-linux-gnueabihf (latest distro version)
- mdbook 0.2.1 (0.2.3 is out, but there's no binary build)
- OpenSSL 1.1.1b
- libpq 11.2