vmware / vmware/singleton

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

Open
#2,079 0 comments 0 reactions 1 assignee View on GitHub

Nobody has claimed this yet.

area/ruby-client kind/bug priority/low
Dominant language
Java
Stars
72
Forks
69
Avg merge
23h 32m
Merged PRs (30d)
4

Description

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.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.