amazonka Haskell libraries might not work out of the box
The amazonka
family of libraries (along with the gogol
family of libraries) are an awesome piece of engineering, and a phenomenal contribution to the Haskell community by Brendan Hay. Unfortunately they are falling behind the APIs of Amazon (or Google).
For example, earlier when we were using serverless-haskell
, we were forced to upgrade from the node-8.x
runtime of AWS Lambda (which was depricated) to node-10.x
. However, there is no NODEJS10_x
constructor in the Runtime
sum-type exposed by amazonka-lambda-1.6.1
(the latest version at the time of writing this document). So, even serverless-haskell
was helpless as it internally depends on this library itself!
Similarly, when we wanted to move to a custom runtime, we were hit by the same problem again. The runtime is called “provided
” in AWS parlance, and is missing from the same Runtime
sum-type.
Fortunately, we were not the only ones facing this issue and there was PR #543 (unmerged at the time of writing this), which solved this problem for us. We had to create an unofficial fork of the library, which is what is deployed in production today.
Aside: In my opinion, amazonka
and gogol
are “foundational” libraries and should have some sort of funding associated to ensure continued development and maintenance.