https://github.com/jruby/jruby/blob/master/lib/ruby/shared/krypt.rb contains require_relative, so it is not 1.8-compatible. I haven't looked at the code in detail, so I am not sure how reliant krypt is on 1.9 features.
If we can't bend it to fit, we should postpone incorporating it until we drop the 1.8 support, or devise a means to disable krypt in the 1.8 mode.
It seems it would be trivial to have it raise if we are in 1.8 mode. Since krypt is required for us to run rails 4, I don't think we should pull this out even if we can never make it run in 1.8 mode?
With that said I have not looked at what 1.9 bits are in this and how easy it would be to make it work in 1.8 :)
Make openssl load in 1.8 mode but not load krypt (see GH #516 on poss…
…ibly making it load in 1.8 mode)
I added the bits to make krypt not load if not 1.9. I ran some 1.8/openssl tests and things still seem to work so kyrpt appears to be supplementary. Since the main reason for krypt seems to Rails 4 which only runs on 1.9+, I am inclined to think this is enough work and we can close this. If someone does want this behavior for 1.8 then they can do the extra work with relative_require and any other 1.9isms and make it work.