Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.10.0
-
None
-
docker ubuntu-xenial (ruby 2.3.1)
Description
I don't know much about ruby. Anybody who can assist is welcome to do so! I tried to update us to rspec 2.99.x to prepare for rspec 3 and got a lot of errors. We should be running the latest versions of test tools in thrift.gemspec. Also note the apache license in the gemspec is not quite right...
Pending: Client Thrift::Client should increment the sequence id when sending messages # it seems sequence ids are completely ignored right now # ./spec/client_spec.rb:55 Failures: 1) BinaryProtocolAccelerated it should behave like a binary protocol should write a byte Failure/Error: @trans.rspec_verify NoMethodError: undefined method `rspec_verify' for #<Thrift::MemoryBufferTransport:0x00000000869c28> Shared Example Group: "a binary protocol" called from ./spec/binary_protocol_accelerated_spec.rb:28 # ./spec/binary_protocol_spec_shared.rb:112:in `block (2 levels) in <top (required)>' 2) BinaryProtocol it should behave like a binary protocol should write a byte Failure/Error: @trans.rspec_verify NoMethodError: undefined method `rspec_verify' for #<Thrift::MemoryBufferTransport:0x000000022165b8> Shared Example Group: "a binary protocol" called from ./spec/binary_protocol_spec.rb:25 # ./spec/binary_protocol_spec_shared.rb:112:in `block (2 levels) in <top (required)>' Deprecation Warnings: -------------------------------------------------------------------------------- The semantics of `RSpec::Core::Pending#pending` are changing in RSpec 3. In RSpec 2.x, it caused the example to be skipped. In RSpec 3, the rest of the example will still be run but is expected to fail, and will be marked as a failure (rather than as pending) if the example passes. Any passed block will no longer be executed. This feature is being removed since it was semantically inconsistent, and the behaviour it offered is being made available with the other ways of marking an example pending. To keep the same skip semantics, change `pending` to `skip`. Otherwise, if you want the new RSpec 3 behavior, you can safely ignore this warning and continue to upgrade to RSpec 3 without addressing it. Called from /thrift/src/lib/rb/spec/client_spec.rb:56:in `block (3 levels) in <top (required)>'. -------------------------------------------------------------------------------- `and_return { value }` is deprecated. Use `and_return(value)` or an implementation block without `and_return` instead. Called from /thrift/src/lib/rb/spec/client_spec.rb:79:in `block (3 levels) in <top (required)>'. `and_return { value }` is deprecated. Use `and_return(value)` or an implementation block without `and_return` instead. Called from /thrift/src/lib/rb/spec/http_client_spec.rb:38:in `block (3 levels) in <top (required)>'. `and_return { value }` is deprecated. Use `and_return(value)` or an implementation block without `and_return` instead. Called from /thrift/src/lib/rb/spec/http_client_spec.rb:41:in `block (5 levels) in <top (required)>'. Too many uses of deprecated '`and_return { value }`'. Pass `--deprecation-out` or set `config.deprecation_stream` to a file for full output. `be_false` is deprecated. Use `be_falsey` (for Ruby's conditional semantics) or `be false` (for exact `== false` equality) instead. Called from /thrift/src/lib/rb/spec/base_transport_spec.rb:279:in `block (3 levels) in <top (required)>'. `be_false` is deprecated. Use `be_falsey` (for Ruby's conditional semantics) or `be false` (for exact `== false` equality) instead. Called from /thrift/src/lib/rb/spec/struct_spec.rb:63:in `block (3 levels) in <top (required)>'. `be_false` is deprecated. Use `be_falsey` (for Ruby's conditional semantics) or `be false` (for exact `== false` equality) instead. Called from /thrift/src/lib/rb/spec/struct_spec.rb:83:in `block (3 levels) in <top (required)>'. Too many uses of deprecated '`be_false`'. Pass `--deprecation-out` or set `config.deprecation_stream` to a file for full output. `be_true` is deprecated. Use `be_truthy` (for Ruby's conditional semantics) or `be true` (for exact `== true` equality) instead. Called from /thrift/src/lib/rb/spec/base_transport_spec.rb:44:in `block (4 levels) in <top (required)>'. `be_true` is deprecated. Use `be_truthy` (for Ruby's conditional semantics) or `be true` (for exact `== true` equality) instead. Called from /thrift/src/lib/rb/spec/base_transport_spec.rb:56:in `block (4 levels) in <top (required)>'. `be_true` is deprecated. Use `be_truthy` (for Ruby's conditional semantics) or `be true` (for exact `== true` equality) instead. Called from /thrift/src/lib/rb/spec/base_transport_spec.rb:273:in `block (3 levels) in <top (required)>'. Too many uses of deprecated '`be_true`'. Pass `--deprecation-out` or set `config.deprecation_stream` to a file for full output. `expect { }.not_to raise_error(SpecificErrorClass)` is deprecated. Use `expect { }.not_to raise_error` (with no args) instead. Called from /thrift/src/lib/rb/spec/struct_spec.rb:234:in `block (3 levels) in <top (required)>'. `expect { }.not_to raise_error(SpecificErrorClass)` is deprecated. Use `expect { }.not_to raise_error` (with no args) instead. Called from /thrift/src/lib/rb/spec/struct_spec.rb:245:in `block (3 levels) in <top (required)>'. `expect { }.not_to raise_error(SpecificErrorClass)` is deprecated. Use `expect { }.not_to raise_error` (with no args) instead. Called from /thrift/src/lib/rb/spec/types_spec.rb:43:in `block (3 levels) in <top (required)>'. Too many uses of deprecated '`expect { }.not_to raise_error(SpecificErrorClass)`'. Pass `--deprecation-out` or set `config.deprecation_stream` to a file for full output. `expect { }.not_to raise_error(SpecificErrorClass, message)` is deprecated. Use `expect { }.not_to raise_error` (with no args) instead. Called from /thrift/src/lib/rb/spec/union_spec.rb:137:in `block (3 levels) in <top (required)>'. `expect { }.not_to raise_error(SpecificErrorClass, message)` is deprecated. Use `expect { }.not_to raise_error` (with no args) instead. Called from /thrift/src/lib/rb/spec/union_spec.rb:146:in `block (3 levels) in <top (required)>'. any_number_of_times is deprecated. Use stub instead. Called from /thrift/src/lib/rb/spec/socket_spec_shared.rb:101:in `block (2 levels) in <top (required)>'. mock is deprecated. Use double instead. Called from /thrift/src/lib/rb/spec/base_protocol_spec.rb:25:in `block (2 levels) in <top (required)>'. mock is deprecated. Use double instead. Called from /thrift/src/lib/rb/spec/base_protocol_spec.rb:58:in `block (3 levels) in <top (required)>'. mock is deprecated. Use double instead. Called from /thrift/src/lib/rb/spec/base_protocol_spec.rb:83:in `block (3 levels) in <top (required)>'. Too many uses of deprecated 'mock'. Pass `--deprecation-out` or set `config.deprecation_stream` to a file for full output. stub is deprecated. Use double instead. Called from /thrift/src/lib/rb/spec/client_spec.rb:51:in `block (3 levels) in <top (required)>'. stub is deprecated. Use double instead. Called from /thrift/src/lib/rb/spec/client_spec.rb:73:in `block (3 levels) in <top (required)>'. stub! is deprecated. Use stub instead. Called from /thrift/src/lib/rb/spec/base_transport_spec.rb:109:in `block (3 levels) in <top (required)>'. stub! is deprecated. Use stub instead. Called from /thrift/src/lib/rb/spec/base_transport_spec.rb:216:in `block (3 levels) in <top (required)>'. stub! is deprecated. Use stub instead. Called from /thrift/src/lib/rb/spec/base_transport_spec.rb:235:in `block (3 levels) in <top (required)>'. Too many uses of deprecated 'stub!'. Pass `--deprecation-out` or set `config.deprecation_stream` to a file for full output. If you need more of the backtrace for any of these deprecations to identify where to make the necessary changes, you can configure `config.raise_errors_for_deprecations!`, and it will turn the deprecation warnings into errors, giving you the full backtrace. 205 deprecation warnings total Finished in 4.28 seconds 411 examples, 2 failures, 1 pending Failed examples: rspec ./spec/binary_protocol_spec_shared.rb:105 # BinaryProtocolAccelerated it should behave like a binary protocol should write a byte rspec ./spec/binary_protocol_spec_shared.rb:105 # BinaryProtocol it should behave like a binary protocol should write a byte /usr/bin/ruby2.3 -S rspec ./spec/base_protocol_spec.rb ./spec/base_transport_spec.rb ./spec/binary_protocol_accelerated_spec.rb ./spec/binary_protocol_spec.rb ./spec/bytes_spec.rb ./spec/client_spec.rb ./spec/compact_protocol_spec.rb ./spec/exception_spec.rb ./spec/flat_spec.rb ./spec/http_client_spec.rb ./spec/json_protocol_spec.rb ./spec/namespaced_spec.rb ./spec/nonblocking_server_spec.rb ./spec/processor_spec.rb ./spec/serializer_spec.rb ./spec/server_socket_spec.rb ./spec/server_spec.rb ./spec/socket_spec.rb ./spec/ssl_socket_spec.rb ./spec/struct_nested_containers_spec.rb ./spec/struct_spec.rb ./spec/thin_http_server_spec.rb ./spec/types_spec.rb ./spec/union_spec.rb ./spec/unix_socket_spec.rb --color --format d failed Makefile:652: recipe for target 'check-local' failed make[1]: *** [check-local] Error 1 make[1]: Leaving directory '/thrift/src/lib/rb' Makefile:512: recipe for target 'check-am' failed make: *** [check-am] Error 2
I tried this:
jking@ubuntu:~/thrift/github/thrift/lib/rb$ git diff HEAD diff --git a/lib/rb/thrift.gemspec b/lib/rb/thrift.gemspec index 166a93f2..f936e529 100644 --- a/lib/rb/thrift.gemspec +++ b/lib/rb/thrift.gemspec @@ -9,7 +9,7 @@ Gem::Specification.new do |s| s.homepage = 'http://thrift.apache.org' s.summary = %q{Ruby bindings for Apache Thrift} s.description = %q{Ruby bindings for the Apache Thrift RPC system} - s.license = 'Apache 2.0' + s.license = 'Apache-2.0' s.extensions = ['ext/extconf.rb'] s.has_rdoc = true @@ -28,10 +28,10 @@ Gem::Specification.new do |s| s.require_paths = %w[lib ext] - s.add_development_dependency 'rspec', ['~> 2.10.0', '< 2.14.0'] - s.add_development_dependency "rack", "~> 1.5" - s.add_development_dependency "rack-test", "~> 0.6" - s.add_development_dependency "thin", "~> 1.5" - s.add_development_dependency "bundler", "~> 1" + s.add_development_dependency 'rspec', '~> 2.14.0' + s.add_development_dependency "rack", "~> 2.0.3" + s.add_development_dependency "rack-test", "~> 0.7" + s.add_development_dependency "thin", "~> 1.7.2" + s.add_development_dependency "bundler", "~> 1.15.4" s.add_development_dependency 'rake', '~> 10.5' end
Attachments
Issue Links
- links to