singleton icon indicating copy to clipboard operation
singleton copied to clipboard

[BUG] [Ruby client] Online mode can't work with lower version of dependencies(faraday,faraday_middleware)

Open linr211 opened this issue 2 years ago • 0 comments

Describe the bug The translation API can't get online translation if use these lower versions of dependency: concurrent-ruby (1.2.0) faraday (0.17.6) faraday_middleware (0.14.0)

Because of this limitation, the client can't be integrated into a product which is using the lower versions of those dependencies.

To Reproduce Steps to reproduce the behavior:

  1. cd ruby-client/singleton/samples
  2. Use singleton-client-test (0.7.7.11) lib in Gemfile and change its dependencies version on Gemfile.lock as: concurrent-ruby (1.2.0) faraday (0.17.6) faraday_middleware (0.14.0)
  3. Change vip_server to a valid value on sgtnclient.yml to enable online mode
  4. run 'bundle exec ruby translation/all.rb'
  5. See error linr-a01:samples linr$ bundle exec ruby translation/all.rb /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/universal-darwin21/rbconfig.rb:230: warning: Insecure world writable dir /usr/local/bin in PATH, mode 040777 /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/universal-darwin21/rbconfig.rb:230: warning: Insecure world writable dir /usr/local/bin in PATH, mode 040777 validating config... create log file: './unit_test.log', level: DEBUG WARNING: No adapter was configured for this request WARNING: No adapter was configured for this request #<Thread:0x000000010ea99598@/Users/linr/.rvm/gems/ruby-3.0.0/gems/logging-2.3.1/lib/logging/diagnostic_context.rb:471 run> terminated with exception (report_on_exception is true): /Users/linr/.rvm/gems/ruby-3.0.0/gems/faraday_middleware-0.14.0/lib/faraday_middleware/gzip.rb:40:in block in call': undefined method empty?' for nil:NilClass (NoMethodError) from /Users/linr/.rvm/gems/ruby-3.0.0/gems/faraday-0.17.6/lib/faraday/response.rb:61:in on_complete' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/faraday_middleware-0.14.0/lib/faraday_middleware/gzip.rb:39:in call' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/faraday-0.17.6/lib/faraday/response.rb:8:in call' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/faraday-0.17.6/lib/faraday/response/logger.rb:26:in call' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/faraday-0.17.6/lib/faraday/response.rb:8:in call' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/faraday_middleware-0.14.0/lib/faraday_middleware/response_middleware.rb:31:in call' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/faraday-0.17.6/lib/faraday/rack_builder.rb:143:in build_response' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/faraday-0.17.6/lib/faraday/connection.rb:387:in run_request' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/faraday-0.17.6/lib/faraday/connection.rb:138:in get' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/singleton-client-test-0.7.7.11/lib/sgtn-client/loader/server.rb:66:in query_server' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/singleton-client-test-0.7.7.11/lib/sgtn-client/loader/server.rb:62:in available_components' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/singleton-client-test-0.7.7.11/lib/sgtn-client/loader/server.rb:47:in block in available_bundles' from /Users/linr/.rvm/gems/ruby-3.0.0/gems/logging-2.3.1/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'

Expected behavior The string-based API should be able to get translation from Singleton service.

linr211 avatar Feb 07 '23 13:02 linr211