arvados-cli fails with ruby versions >= 2.3.7
arvados-cli with ruby 2.3.7 or above, it errors out with the following error message:
Failed to connect to Arvados API server: header field value cannot include CR/LF
#1 Updated by Lucas Di Pentima over 2 years ago
The issue is caused by the fact that newer versions of Ruby don't accept
\n on header fields, and the
google-api-client gem we're using sometimes adds it.
One option is to upgrade the
google-api-client gem to version 0.20.0 or above (see https://github.com/google/google-api-ruby-client/pull/648/commits/ee8c922dbf9cef79284d4b83d16d4d73008a6e8f) but that's isn't trivial because from version 0.9 onwards, this gem significantly changed its way of working, and it's not compatible with our
The other option would be to monkeypatch the
google-api-client gem from our own
#2 Updated by Lucas Di Pentima over 2 years ago
Updates at c0b02133b - branch
Test run: https://ci.curoverse.com/job/developer-run-tests/828/
google-api-client after requiring it on the
#3 Updated by Lucas Di Pentima over 2 years ago
How to test:
1. Build the new
2. With rvm install ruby 2.3.7 or 2.4.4
3. Create a gemset and install the newly created
arvados gem and then install
4. Set up vars to access some arvados instance
5. Execute "
arv user current", it should work without issues.