In Ruby 2.4.2, the OpenSSL library enforces key lengths for the supported ciphers. In particular, the AES 128 cipher requires a key length of 16 bytes. The previous behavior of the library was to silently ignore invalid key lengths, but now an exception is raised. This change limits the key length to 16 bytes.
While getting the Travis CI build to pass, I also dropped support for Ruby 2.1 (EOL April 2017) and Rails 4.0 (EOL January 2015). I also restricted the support of this gem to < 5.1 since 5.1 has breaking changes to the ActiveRecord::Dirty module which this gem relies on.
If dropping support for Ruby 2.1 and Rails 4.0 was too presumptuous of me, please let me know, and I will be happy to revert that change. I ran into difficulties getting the tests to build for the older versions of Rails and Ruby, so I dropped 4.0. Rails 4.1 has also reached EOL, but I left it in since I was able to still run the tests. I thought others may run into this same problem in the future.
I did my best to follow your contribution guidelines, but please let me know if there's anything I missed or forgot to do.
In Ruby 2.4.2, the OpenSSL library enforces key lengths for the supported ciphers. In particular, the AES 128 cipher requires a key length of 16 bytes. The previous behavior of the library was to silently ignore invalid key lengths, but now an exception is raised. This change limits the key length to 16 bytes.
This patch is in use with my project here: https://gitlab.com/norad/api/merge_requests/343
While getting the Travis CI build to pass, I also dropped support for Ruby 2.1 (EOL April 2017) and Rails 4.0 (EOL January 2015). I also restricted the support of this gem to < 5.1 since 5.1 has breaking changes to the ActiveRecord::Dirty module which this gem relies on.
If dropping support for Ruby 2.1 and Rails 4.0 was too presumptuous of me, please let me know, and I will be happy to revert that change. I ran into difficulties getting the tests to build for the older versions of Rails and Ruby, so I dropped 4.0. Rails 4.1 has also reached EOL, but I left it in since I was able to still run the tests. I thought others may run into this same problem in the future.
I did my best to follow your contribution guidelines, but please let me know if there's anything I missed or forgot to do.