samvera / ldp

Linked Data Platform.rb client
Other
16 stars 15 forks source link

Support Ruby 3.0.3 #131

Closed jrgriffiniii closed 3 weeks ago

jrgriffiniii commented 2 years ago

Derived from samvera/maintenance#77

jrgriffiniii commented 2 years ago

https://github.com/samvera/ldp/pull/135#issuecomment-1005935000 must be addressed before this can be completed.

jrgriffiniii commented 2 years ago

Ldp::Client#head is somehow creating resources against the rdf-ldp server, but I am otherwise progressing with this upgrade.

jrgriffiniii commented 2 years ago

Unfortunately, supporting Rails 6.0.z releases may well require that support for Ruby 2.5.z is dropped.

Bundler could not find compatible versions for gem "nokogiri":
  In Gemfile:
    rails (~> 6.0.0) was resolved to 6.0.4.7, which depends on
      actiontext (= 6.0.4.7) was resolved to 6.0.4.7, which depends on
        nokogiri (>= 1.8.5)

    ldp was resolved to 1.0.3, which depends on
      nokogiri (< 1.13, >= 1.12.5)

Trying to upgrade nokogiri, however, drops Ruby 2.5 support: https://rubygems.org/gems/nokogiri/versions/1.13.0

jrgriffiniii commented 2 years ago

https://github.com/samvera/ldp/pull/136/commits/ced442e13b9dc3bef57b27d481f0c3325d51562d starts to finally advance this towards a better resolution. I am afraid that I needed to either replace the Faraday stubs outright with RSpec or default to lamprey from rdf/ldp.

jrgriffiniii commented 2 years ago

https://github.com/samvera/ldp/compare/allow-ruby-3.0?expand=1 only has 5 integration tests failing for this solution.

jrgriffiniii commented 2 years ago

I have discovered a few new bugs with this, but this has required me to test against a containerized deployment of fcrepo4: https://github.com/samvera/ldp/compare/allow-ruby-3.0-wip?expand=1

There are some outlying WebMock stubs triggering errors, but hopefully resolving this should require minimal effort.

jrgriffiniii commented 2 years ago

a444773bc8aa75b4dc375c8d063ccb2908cd4ab9 should see this properly updated and passing now. I will see about squashing this, and updating (or deprecating) https://github.com/samvera/ldp/pull/145

jrgriffiniii commented 2 years ago

https://github.com/samvera/ldp/pull/146/commits/b84e860be7c449a9c816f35808a873b5d8ec9e96 has this passing within my local development, however I still need to ensure that fcrepo4 is accessible for CircleCI.

jrgriffiniii commented 3 weeks ago

Deprecated with https://github.com/samvera/maintenance/issues/164