* [ruby] Not symbolize header param keys to allow the usage of underscore ("_") character
* use lambda to convert header key to a string if underscore is included
* [Ruby] Fix Operation Servers
* user `server_index` instead of `index`
* use nil as default
* add tests
* revert tests
* add tests to custom file
* add test file to ruby-faraday
* [ada] fix use of isBasic condition
* [apex] fix use of isBasic condition
* [asciidoc] fix use of isBasic condition
* [python] fix use of isBasic condition
* [csharp C#] fix use of isBasic condition
* [htmlDocs] fix use of isBasic condition
* [Ruby] fix use of isBasic condition
* [scala] fix use of isBasic condition
* [julia] fix use of isBasic condition
* [Objective-C objc] fix use of isBasic condition
* [GraphQL] fix use of isBasic condition
* [MarkDown] fix use of isBasic condition
As discussed in https://github.com/OpenAPITools/openapi-generator/pull/7415#discussion_r1113274416, it seems unlikely the code was correct.
server_operation_index is a hash table. In Ruby, `hash[key]` will return the value associated with `key`. If key is absent, `nil` is returned. Because that is sometimes undesirable, there is also `hash.fetch(key)`, which raises an error if the key is absent. It also allows you to specify a default to fall back on: `hash.fetch(key, default)` will return `default` if the key is absent.
So, since not all users will specify a 'server per operation' (or at least: I'm not), the old code would usually set `index` to the `server_index`, which is initialized to 0. The subsequent `if index == nil` will usually return false (`0 != nil` in Ruby), after which the `server_url` call on line 177 constructs the url based on the `server_operation_variables` and `operation_server_settings`, assuming we are dealing with the case where a server per operation is configured. The case where the url should be constructed from `scheme`, `host`, etc. is only called if either `server_index` is explicitly set to `nil` or the key `operation` is explicitly associated with the value `nil` in the `server_operation_index` hash table, both of which seem inappropriate.
* allow general purpose faraday connection configuration
* add spec for Configuration#configure_faraday_connection
* run generators
* limit changes to ruby client generated using faraday library
* Enable the ruby client to support refreshing access tokens
- The client can now be configured with an access token getter proc
- The proc overrides the the static access token if it is set
* Run generators
* add isEnumRef to codegen property
* better format
* update R template to use isEnumOrRef
* update powershell template to use isEnumOrRef
* update samples
Faraday 0.16.0 added Faraday::FilePart as an alias to Faraday::UploadIO
and deprecated Faraday::UploadIO. In Faraday 2.0 the deprecated UploadIO
was removed.
Fixes: e12100b033c13b835fc3b3f1de159dc7f4634fc0