[DRE-maint] Bug#917685: ruby-rack: FTBFS: ERROR: Test "ruby2.5" failed.
Lucas Nussbaum
lucas at debian.org
Sat Dec 29 21:42:24 GMT 2018
Source: ruby-rack
Version: 1.6.4-6
Severity: serious
Justification: FTBFS on amd64
Tags: buster sid
Usertags: ftbfs-20181229 ftbfs-buster
Hi,
During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
> /usr/bin/ruby2.5 /usr/bin/gem2deb-test-runner
>
> ┌──────────────────────────────────────────────────────────────────────────────┐
> │ Checking Rubygems dependency resolution on ruby2.5 │
> └──────────────────────────────────────────────────────────────────────────────┘
>
> GEM_PATH=debian/ruby-rack/usr/share/rubygems-integration/all:/var/lib/gems/2.5.0:/usr/lib/x86_64-linux-gnu/rubygems-integration/2.5.0:/usr/share/rubygems-integration/2.5.0:/usr/share/rubygems-integration/all ruby2.5 -e gem\ \"rack\"
>
> ┌──────────────────────────────────────────────────────────────────────────────┐
> │ Run tests for ruby2.5 from debian/ruby-tests.rake │
> └──────────────────────────────────────────────────────────────────────────────┘
>
> RUBYLIB=/<<PKGBUILDDIR>>/debian/ruby-rack/usr/lib/ruby/vendor_ruby:. GEM_PATH=debian/ruby-rack/usr/share/rubygems-integration/all:/var/lib/gems/2.5.0:/usr/lib/x86_64-linux-gnu/rubygems-integration/2.5.0:/usr/share/rubygems-integration/2.5.0:/usr/share/rubygems-integration/all ruby2.5 -S rake -f debian/ruby-tests.rake
> /usr/bin/ruby2.5 /usr/bin/bacon -I./test -w -a
> /usr/lib/ruby/vendor_ruby/bacon.rb:221: warning: shadowing outer local variable - args
> /<<PKGBUILDDIR>>/test/spec_response.rb:138: warning: assigned but unused variable - body
> /<<PKGBUILDDIR>>/test/spec_response.rb:151: warning: assigned but unused variable - status
> /<<PKGBUILDDIR>>/test/spec_response.rb:151: warning: assigned but unused variable - header
> /<<PKGBUILDDIR>>/test/spec_deflater.rb:331: warning: shadowing outer local variable - body
> Rack::Response
> - should have sensible default values
> - can be written to [ERROR: NameError]
> - can set and read headers
> - can override the initial Content-Type with a different case [ERROR: NameError]
> - can set cookies
> - can set cookies with the same name for multiple domains
> - formats the Cookie expiration date accordingly to RFC 6265
> - can set secure cookies
> - can set http only cookies
> - can set http only cookies with :http_only
> - can set prefers :httponly for http only cookie setting when :httponly and :http_only provided
> - can delete cookies
> - can delete cookies with the same name from multiple domains
> - can delete cookies with the same name with different paths
> - can do redirects
> - has a useful constructor [ERROR: NameError]
> - has a constructor that can take a block [ERROR: NameError]
> - doesn't return invalid responses [ERROR: NameError]
> - knows if it's empty [ERROR: NameError]
> - should provide access to the HTTP status
> - should provide access to the HTTP headers [ERROR: NameError]
> - does not add or change Content-Length when #finish()ing
> - updates Content-Length when body appended to using #write [ERROR: NameError]
> - calls close on #body
> - calls close on #body when 204, 205, or 304 [ERROR: NameError]
> - wraps the body from #to_ary to prevent infinite loops
>
> Rack::Deflater
> - should be able to deflate bodies that respond to each
> - should flush deflated chunks to the client as they become ready
> - should be able to deflate String bodies
> - should be able to gzip bodies that respond to each
> - should flush gzipped chunks to the client as they become ready
> - should be able to fallback to no deflation
> - should be able to skip when there is no response entity body
> - should handle the lack of an acceptable encoding
> - should handle gzip response with Last-Modified header
> - should do nothing when no-transform Cache-Control directive present
> - should do nothing when Content-Encoding already present
> - should deflate when Content-Encoding is identity
> - should deflate if content-type matches :include
> - should deflate if content-type is included it :include
> - should not deflate if content-type is not set but given in :include
> - should not deflate if content-type do not match :include
> - should deflate response if :if lambda evaluates to true
> - should not deflate if :if lambda evaluates to false
> - should check for Content-Length via :if
>
> Rack::MockRequest
> - should return a MockResponse
> - should be able to only return the environment
> - should return an environment with a path
> - should provide sensible defaults
> - should allow GET/POST/PUT/DELETE/HEAD
> - should set content length
> - should allow posting
> - should use all parts of an URL
> - should set SSL port and HTTP flag on when using https
> - should prepend slash to uri path
> - should properly convert method name to an uppercase string
> - should accept params and build query string for GET requests
> - should accept raw input in params for GET requests
> - should accept params and build url encoded params for POST requests
> - should accept raw input in params for POST requests
> - should accept params and build multipart encoded params for POST requests
> - should behave valid according to the Rack spec
> - should call close on the original body object
>
> Rack::MockResponse
> - should provide access to the HTTP status
> - should provide access to the HTTP headers
> - should provide access to the HTTP body
> - should provide access to the Rack errors
> - should allow calling body.close afterwards
> - should optionally make Rack errors fatal
>
> Rack::BodyProxy
> - should call each on the wrapped body
> - should call close on the wrapped body
> - should only call close on the wrapped body if it responds to close
> - should call the passed block on close
> - should call the passed block on close even if there is an exception
> - should allow multiple arguments in respond_to?
> - should not respond to :to_ary
> - should not close more than one time
> - should be closed when the callback is triggered
> - should provide an #each method
>
> Rack::ShowStatus
> - should provide a default status message
> - should let the app provide additional information
> - should escape error
> - should not replace existing messages
> - should pass on original headers
> - should replace existing messages if there is detail
>
> Rack::Request
> - should wrap the rack variables
> - should figure out the correct host
> - should figure out the correct port
> - should figure out the correct host with port
> - should parse the query string
> - should not truncate query strings containing semi-colons #543 only in POST
> - should use semi-colons as separators for query strings in GET
> - should limit the keys from the GET query string
> - should limit the key size per nested params hash
> - should not unify GET and POST when calling params
> - should raise if input params has invalid %-encoding
> - should raise if rack.input is missing
> - should parse POST data when method is POST and no Content-Type given
> - should limit the keys from the POST form data
> - should parse POST data with explicit content type regardless of method
> - should not parse POST data when media type is not form-data
> - should parse POST data on PUT when media type is form-data
> - should rewind input after parsing POST data
> - should clean up Safari's ajax POST body
> - should get value by key from params with #[]
> - should set value to key on params with #[]=
> - should return values for the keys in the order given from values_at
> - should extract referrer correctly
> - should extract user agent correctly
> - should treat missing content type as nil
> - should treat empty content type as nil
> - should return nil media type for empty content type
> - should cache, but invalidates the cache
> - should figure out if called via XHR
> - should ssl detection
> - should prevent scheme abuse
> - should parse cookies
> - should always return the same hash object
> - should modify the cookies hash in place
> - should not modify the params hash in place
> - should modify params hash if param is in GET
> - should modify params hash if param is in POST
> - should modify params hash, even if param didn't exist before
> - should modify params hash by changing only GET
> - should modify params hash by changing only POST
> - should modify params hash, even if param is defined in both POST and GET
> - should allow deleting from params hash if param is in GET
> - should allow deleting from params hash if param is in POST
> - should pass through non-uri escaped cookies as-is
> - should parse cookies according to RFC 2109
> - should parse cookies with quotes
> - should provide setters
> - should provide the original env
> - should restore the base URL
> - should restore the URL
> - should restore the full path
> - should handle multiple media type parameters
> - should parse with junk before boundry
> - should not infinite loop with a malformed HTTP request
> - should parse multipart form data
> - should MultipartPartLimitError when request has too many multipart parts if limit set
> - should parse big multipart form data
> - should record tempfiles from multipart form data in env[rack.tempfiles]
> - should detect invalid multipart form data
> - should consistently raise EOFError on bad multipart form data
> - should correctly parse the part name from Content-Id header
> - should not try to interpret binary as utf8
> - should work around buggy 1.8.* Tempfile equality
> - should use form_hash when form_input is a Tempfile
> - should conform to the Rack spec
> - should parse Accept-Encoding correctly
> - should parse Accept-Language correctly
> - should provide ip information
> - should deals with proxies
> - should not allow IP spoofing via Client-IP and X-Forwarded-For headers
> - should regard local addresses as proxies
> - should allow subclass request to be instantiated after parent request
> - should allow parent request to be instantiated after subclass request
> - should raise TypeError every time if request parameters are broken
> - should not strip '32' => '+' => ' ' escaped character from parameters when accessed as string
> - should not strip '33' => '%21' => '!' escaped character from parameters when accessed as string
> - should not strip '34' => '%22' => '"' escaped character from parameters when accessed as string
> - should not strip '35' => '%23' => '#' escaped character from parameters when accessed as string
> - should not strip '36' => '%24' => '$' escaped character from parameters when accessed as string
> - should not strip '37' => '%25' => '%' escaped character from parameters when accessed as string
> - should not strip '38' => '%26' => '&' escaped character from parameters when accessed as string
> - should not strip '39' => '%27' => ''' escaped character from parameters when accessed as string
> - should not strip '40' => '%28' => '(' escaped character from parameters when accessed as string
> - should not strip '41' => '%29' => ')' escaped character from parameters when accessed as string
> - should not strip '42' => '%2A' => '*' escaped character from parameters when accessed as string
> - should not strip '43' => '%2B' => '+' escaped character from parameters when accessed as string
> - should not strip '44' => '%2C' => ',' escaped character from parameters when accessed as string
> - should not strip '45' => '-' => '-' escaped character from parameters when accessed as string
> - should not strip '46' => '.' => '.' escaped character from parameters when accessed as string
> - should not strip '47' => '%2F' => '/' escaped character from parameters when accessed as string
> - should not strip '48' => '0' => '0' escaped character from parameters when accessed as string
> - should not strip '49' => '1' => '1' escaped character from parameters when accessed as string
> - should not strip '50' => '2' => '2' escaped character from parameters when accessed as string
> - should not strip '51' => '3' => '3' escaped character from parameters when accessed as string
> - should not strip '52' => '4' => '4' escaped character from parameters when accessed as string
> - should not strip '53' => '5' => '5' escaped character from parameters when accessed as string
> - should not strip '54' => '6' => '6' escaped character from parameters when accessed as string
> - should not strip '55' => '7' => '7' escaped character from parameters when accessed as string
> - should not strip '56' => '8' => '8' escaped character from parameters when accessed as string
> - should not strip '57' => '9' => '9' escaped character from parameters when accessed as string
> - should not strip '58' => '%3A' => ':' escaped character from parameters when accessed as string
> - should not strip '59' => '%3B' => ';' escaped character from parameters when accessed as string
> - should not strip '60' => '%3C' => '<' escaped character from parameters when accessed as string
> - should not strip '61' => '%3D' => '=' escaped character from parameters when accessed as string
> - should not strip '62' => '%3E' => '>' escaped character from parameters when accessed as string
> - should not strip '63' => '%3F' => '?' escaped character from parameters when accessed as string
> - should not strip '64' => '%40' => '@' escaped character from parameters when accessed as string
> - should not strip '65' => 'A' => 'A' escaped character from parameters when accessed as string
> - should not strip '66' => 'B' => 'B' escaped character from parameters when accessed as string
> - should not strip '67' => 'C' => 'C' escaped character from parameters when accessed as string
> - should not strip '68' => 'D' => 'D' escaped character from parameters when accessed as string
> - should not strip '69' => 'E' => 'E' escaped character from parameters when accessed as string
> - should not strip '70' => 'F' => 'F' escaped character from parameters when accessed as string
> - should not strip '71' => 'G' => 'G' escaped character from parameters when accessed as string
> - should not strip '72' => 'H' => 'H' escaped character from parameters when accessed as string
> - should not strip '73' => 'I' => 'I' escaped character from parameters when accessed as string
> - should not strip '74' => 'J' => 'J' escaped character from parameters when accessed as string
> - should not strip '75' => 'K' => 'K' escaped character from parameters when accessed as string
> - should not strip '76' => 'L' => 'L' escaped character from parameters when accessed as string
> - should not strip '77' => 'M' => 'M' escaped character from parameters when accessed as string
> - should not strip '78' => 'N' => 'N' escaped character from parameters when accessed as string
> - should not strip '79' => 'O' => 'O' escaped character from parameters when accessed as string
> - should not strip '80' => 'P' => 'P' escaped character from parameters when accessed as string
> - should not strip '81' => 'Q' => 'Q' escaped character from parameters when accessed as string
> - should not strip '82' => 'R' => 'R' escaped character from parameters when accessed as string
> - should not strip '83' => 'S' => 'S' escaped character from parameters when accessed as string
> - should not strip '84' => 'T' => 'T' escaped character from parameters when accessed as string
> - should not strip '85' => 'U' => 'U' escaped character from parameters when accessed as string
> - should not strip '86' => 'V' => 'V' escaped character from parameters when accessed as string
> - should not strip '87' => 'W' => 'W' escaped character from parameters when accessed as string
> - should not strip '88' => 'X' => 'X' escaped character from parameters when accessed as string
> - should not strip '89' => 'Y' => 'Y' escaped character from parameters when accessed as string
> - should not strip '90' => 'Z' => 'Z' escaped character from parameters when accessed as string
> - should not strip '91' => '%5B' => '[' escaped character from parameters when accessed as string
> - should not strip '92' => '%5C' => '\' escaped character from parameters when accessed as string
> - should not strip '93' => '%5D' => ']' escaped character from parameters when accessed as string
> - should not strip '94' => '%5E' => '^' escaped character from parameters when accessed as string
> - should not strip '95' => '_' => '_' escaped character from parameters when accessed as string
> - should not strip '96' => '%60' => '`' escaped character from parameters when accessed as string
> - should not strip '97' => 'a' => 'a' escaped character from parameters when accessed as string
> - should not strip '98' => 'b' => 'b' escaped character from parameters when accessed as string
> - should not strip '99' => 'c' => 'c' escaped character from parameters when accessed as string
> - should not strip '100' => 'd' => 'd' escaped character from parameters when accessed as string
> - should not strip '101' => 'e' => 'e' escaped character from parameters when accessed as string
> - should not strip '102' => 'f' => 'f' escaped character from parameters when accessed as string
> - should not strip '103' => 'g' => 'g' escaped character from parameters when accessed as string
> - should not strip '104' => 'h' => 'h' escaped character from parameters when accessed as string
> - should not strip '105' => 'i' => 'i' escaped character from parameters when accessed as string
> - should not strip '106' => 'j' => 'j' escaped character from parameters when accessed as string
> - should not strip '107' => 'k' => 'k' escaped character from parameters when accessed as string
> - should not strip '108' => 'l' => 'l' escaped character from parameters when accessed as string
> - should not strip '109' => 'm' => 'm' escaped character from parameters when accessed as string
> - should not strip '110' => 'n' => 'n' escaped character from parameters when accessed as string
> - should not strip '111' => 'o' => 'o' escaped character from parameters when accessed as string
> - should not strip '112' => 'p' => 'p' escaped character from parameters when accessed as string
> - should not strip '113' => 'q' => 'q' escaped character from parameters when accessed as string
> - should not strip '114' => 'r' => 'r' escaped character from parameters when accessed as string
> - should not strip '115' => 's' => 's' escaped character from parameters when accessed as string/<<PKGBUILDDIR>>/test/spec_commonlogger.rb:68: warning: method redefined; discarding old now
> /<<PKGBUILDDIR>>/test/spec_commonlogger.rb:63: warning: previous definition of now was here
> [2018-12-29 12:41:49] INFO WEBrick 1.4.2
> [2018-12-29 12:41:49] INFO ruby 2.5.3 (2018-10-18) [x86_64-linux-gnu]
> [2018-12-29 12:41:49] INFO WEBrick::HTTPServer#start: pid=31802 port=46491
> [2018-12-29 12:41:49] INFO going to shutdown ...
> 127.0.0.1 - - [29/Dec/2018:12:41:49 UTC] "GET / HTTP/1.1" 200 7
> - -> /
> [2018-12-29 12:41:49] INFO WEBrick::HTTPServer#start done.
>
> - should not strip '116' => 't' => 't' escaped character from parameters when accessed as string
> - should not strip '117' => 'u' => 'u' escaped character from parameters when accessed as string
> - should not strip '118' => 'v' => 'v' escaped character from parameters when accessed as string
> - should not strip '119' => 'w' => 'w' escaped character from parameters when accessed as string
> - should not strip '120' => 'x' => 'x' escaped character from parameters when accessed as string
> - should not strip '121' => 'y' => 'y' escaped character from parameters when accessed as string
> - should not strip '122' => 'z' => 'z' escaped character from parameters when accessed as string
> - should not strip '123' => '%7B' => '{' escaped character from parameters when accessed as string
> - should not strip '124' => '%7C' => '|' escaped character from parameters when accessed as string
> - should not strip '125' => '%7D' => '}' escaped character from parameters when accessed as string
>
> Rack::CommonLogger
> - should log to rack.errors by default
> - should log to anything with +write+
> - should work with standartd library logger
> - should log - content length if header is missing
> - should log - content length if header is zero
> - should log in common log format
>
> Rack::Static
> - serves files
> - 404s if url root is known but it can't find the file
> - calls down the chain if url root is not known
> - calls index file when requesting root in the given folder
> - doesn't call index file if :index option was omitted
> - serves hidden files
> - calls down the chain if the URI is not specified
> - supports serving fixed cache-control (legacy option)
> - supports header rule :all
> - supports header rule :fonts
> - supports file extension header rules provided as an Array
> - supports folder rules provided as a String
> - supports folder header rules provided as a String not starting with a slash
> - supports flexible header rules provided as Regexp
> - prioritizes header rules over fixed cache-control setting (legacy option)
>
> Rack::Server
> - overrides :config if :app is passed in
> - should prefer to use :builder when it is passed in
> - should allow subclasses to override middleware
> - should allow subclasses to override default middleware
> - should only provide default middleware for development and deployment environments
> - should always return an empty array for unknown environments
> - should not include Rack::Lint in deployment environment
> - should not include Rack::ShowExceptions in deployment environment
> - should include Rack::TempfileReaper in deployment environment
> - should support CGI
> - should be quiet if said so
> - should use a full path to the pidfile
> - should run a server
> - should check pid file presence and running process
> - should check pid file presence and dead processSkipping Rack::Session::Memcache tests (Memcache is required). `gem install memcache-client` and try again.
>
> - should check pid file presence and exited process
> - should check pid file presence and not owned process
> - should not write pid file when it is created after check
> - should inform the user about existing pidfiles with running processes
>
> Rack::Handler::CGI
> Skipping Rack::Handler::CGI tests (lighttpd is required). Install lighttpd and try again.
> /usr/lib/ruby/vendor_ruby/daemons/application.rb:337: warning: mismatched indentations at 'end' with 'def' at 326
> /usr/lib/ruby/vendor_ruby/daemons/application_group.rb:80: warning: assigned but unused variable - pid
> Rack::File
> - should serve files
> - should set Last-Modified header
> - should return 304 if file isn't modified since last serve
> - should return the file if it's modified since last serve
> - should serve files with URL encoded filenames
> - should allow safe directory traversal
> - should not allow unsafe directory traversal
> - should allow files with .. in their name
> - should not allow unsafe directory traversal with encoded periods
> - should allow safe directory traversal with encoded periods
> - should 404 if it can't find the file
> - should detect SystemCallErrors
> - should return bodies that respond to #to_path
> - should return correct byte range in body
> - should return error for unsatisfiable byte range
> - should support custom http headers
> - should support not add custom http headers if none are supplied
> - should only support GET, HEAD, and OPTIONS requests
> - should set Allow correctly for OPTIONS requests
> - should set Content-Length correctly for HEAD requests
> - should default to a mime type of text/plain
> - should allow the default mime type to be set
> - should not set Content-Type if the mime type is not set
> Rack::Directory
> - should serve directory indices
> - should pass to app if file found
> - should serve uri with URL encoded filenames
> - should not allow directory traversal
> - should 404 if it can't find the file
> - should uri escape path parts
> - should correctly escape script name
> Rack::Auth::Basic
> - should challenge correctly when no credentials are specified
> - should rechallenge if incorrect credentials are specified
> - should return application output if correct credentials are specified
> - should return 400 Bad Request if different auth scheme used
> - should return 400 Bad Request for a malformed authorization header
> - takes realm as optional constructor arg
> Rack::ShowExceptions
> - catches exceptions
> - responds with HTML only to requests accepting HTML
> - handles exceptions without a backtrace
> Rack::Cascade
> - should dispatch onward on 404 and 405 by default
> - should dispatch onward on whatever is passed
> - should return 404 if empty
> - should append new app
> - should close the body on cascade
> Rack::Auth::Digest::MD5
> - should challenge when no credentials are specified
> - should return application output if correct credentials given
> - should return application output if correct credentials given (hashed passwords)
> - should rechallenge if incorrect username given
> - should rechallenge if incorrect password given
> - should rechallenge if incorrect user and blank password given
> - should not rechallenge if nonce is not stale
> - should rechallenge with stale parameter if nonce is stale
> - should return 400 Bad Request if incorrect qop given
> - should return 400 Bad Request if incorrect uri given
> - should return 400 Bad Request if different auth scheme used
> - should not require credentials for unprotected path
> - should challenge when no credentials are specified for protected path
> - should return application output if correct credentials given for protected path
> - should return application output when used with a query string and path as uri
> - should return application output when used with a query string and fullpath as uri
> - should return application output if correct credentials given for POST
> - should return application output if correct credentials given for PUT (using method override of POST)
> - takes realm as optional constructor arg
> Rack::Logger
> - should conform to Rack::Lint
> Rack::Handler::Thin
> /usr/lib/ruby/vendor_ruby/thin/server.rb:107: warning: constant ::Fixnum is deprecated
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/backends/base.rb:117: warning: instance variable @running not initialized
> /usr/lib/ruby/vendor_ruby/thin/backends/base.rb:117: warning: instance variable @running not initialized
> /usr/lib/ruby/vendor_ruby/thin/backends/base.rb:117: warning: instance variable @running not initialized
> /usr/lib/ruby/vendor_ruby/thin/backends/base.rb:117: warning: instance variable @running not initialized
> /usr/lib/ruby/vendor_ruby/thin/backends/base.rb:117: warning: instance variable @running not initialized
> /usr/lib/ruby/vendor_ruby/thin/backends/base.rb:117: warning: instance variable @running not initialized
> /usr/lib/ruby/vendor_ruby/thin/backends/base.rb:117: warning: instance variable @running not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> /usr/lib/ruby/vendor_ruby/thin/logging.rb:103: warning: instance variable @trace_logger not initialized
> Skipping Rack::Handler::FastCGI tests (FCGI is required). `gem install fcgi` and try again.
> /<<PKGBUILDDIR>>/test/spec_utils.rb:84: warning: Object#timeout is deprecated, use Timeout.timeout instead.
> Skipping Rack::Handler::Mongrel tests (Mongrel is required). `gem install mongrel` and try again.
> - should respond
> - should be a Thin
> - should have rack headers
> - should have CGI headers on GET
> - should have CGI headers on POST
> - should support HTTP auth
> - should set status
> - should set tag for server
> Rack::Lock
> Proxy
> - should delegate each
> - should delegate to_path
> - should not delegate to_path if body does not implement it
> - should call super on close
> - should not unlock until body is closed
> - should return value from app
> - should call synchronize on lock
> - should unlock if the app raises
> - should unlock if the app throws
> - should set multithread flag to false
> - should reset original multithread flag when exiting lock
> Rack::Runtime
> - sets X-Runtime is none is set
> - doesn't set the X-Runtime if it is already set
> - should allow a suffix to be set
> - should allow multiple timers to be set
> Rack::Lint
> - should pass valid request
> - should notice fatal errors
> - should notice environment errors
> - should notice input errors
> - should notice error errors
> - should notice status errors
> - should notice header errors
> - should notice content-type errors
> - should notice content-length errors
> - should notice body errors
> - should notice input handling errors
> - should notice error handling errors
> - should notice HEAD errors
> - should pass valid read calls
> Rack::Lint::InputWrapper
> - should delegate :rewind to underlying IO object
> Rack::Chunked
> - should chunk responses with no Content-Length
> - should chunks empty bodies properly
> - should chunks encoded bodies properly
> - should not modify response when Content-Length header present
> - should not modify response when client is HTTP/1.0
> - should not modify response when client is ancient, pre-HTTP/1.0
> - should not modify response when Transfer-Encoding header already present
> - should not modify response when status code is 100
> - should not modify response when status code is 204
> - should not modify response when status code is 205
> - should not modify response when status code is 304
> Rack::Handler
> - has registered default handlers
> - should raise LoadError if handler doesn't exist
> - should get unregistered, but already required, handler by name
> - should register custom handler
> - should not need registration for properly coded handlers even if not already required
> - should allow autoloaded handlers to be registered properly while being loaded
> Rack::ContentLength
> - should set Content-Length on Array bodies if none is set
> - should not set Content-Length on variable length bodies
> - should not change Content-Length if it is already set
> - should not set Content-Length on 304 responses
> - should not set Content-Length when Transfer-Encoding is chunked
> - should close bodies that need to be closed
> - should support single-execute bodies
> Rack::Utils
> - should round trip binary data
> - should escape correctly
> - should escape correctly for multibyte characters
> - should escape objects that responds to to_s
> - should escape non-UTF8 strings
> - should not hang on escaping long strings that end in % (http://redmine.ruby-lang.org/issues/5149)
> - should escape path spaces with %20
> - should unescape correctly
> - should parse query strings correctly
> - should not create infinite loops with cycle structures
> - should raise an exception if the params are too deep
> - should raise an exception if the params are too deep
> - should parse nested query strings correctly
> - should build query strings correctly
> - should build nested query strings correctly
> - should parse query strings that have a non-existent value
> - should build query strings without = with non-existent values
> - should parse q-values
> - should select best quality match
> - should escape html entities [&><'"/]
> - should escape html entities even on MRI when it's bugged
> - should escape html entities in unicode strings
> - should figure out which encodings are acceptable
> - should return the bytesize of String
> - should should perform constant time string comparison
> - should return status code for integer
> - should return status code for string
> - should return status code for symbol
> - should return rfc2822 format from rfc2822 helper
> - should return rfc2109 format from rfc2109 helper
> - should clean directory traversal
> - should clean unsafe directory traversal to safe path
> - should not clean directory traversal with encoded periods
> - should clean slash only paths
> Rack::Utils byte_range
> - should ignore missing or syntactically invalid byte ranges
> - should parse simple byte ranges
> - should parse several byte ranges
> - should truncate byte ranges
> - should ignore unsatisfiable byte ranges
> - should handle byte ranges of empty files
> Rack::Utils::HeaderHash
> - should retain header case
> - should check existence of keys case insensitively
> - should merge case-insensitively
> - should overwrite case insensitively and assume the new key's case
> - should be converted to real Hash
> - should convert Array values to Strings when converting to Hash
> - should replace hashes correctly
> - should be able to delete the given key case-sensitively
> - should be able to delete the given key case-insensitively
> - should return the deleted value when #delete is called on an existing key
> - should return nil when #delete is called on a non-existant key
> - should avoid unnecessary object creation if possible
> - should convert Array values to Strings when responding to #each
> - should not create headers out of thin air
> Rack::Utils::Context
> - should set context correctly
> - should alter app on recontexting
> - should run different apps
> Rack::MethodOverride
> - should not affect GET requests
> - should modify REQUEST_METHOD for POST requests when _method parameter is set
> - should modify REQUEST_METHOD for POST requests when X-HTTP-Method-Override is set
> - should not modify REQUEST_METHOD if the method is unknown
> - should not modify REQUEST_METHOD when _method is nil
> - should store the original REQUEST_METHOD prior to overriding
> - should not modify REQUEST_METHOD when given invalid multipart form data
> - should not modify REQUEST_METHOD for POST requests when the params are unparseable
> Rack::Session::Abstract::ID
> - should use securerandom when available
> - should not use securerandom when unavailable
> - should allow to use another securerandom provider
> Rack::TempfileReaper
> - should do nothing (i.e. not bomb out) without env[rack.tempfiles]
> - should close env[rack.tempfiles] when body is closed
> - should initialize env[rack.tempfiles] when not already present
> - should append env[rack.tempfiles] when already present
> Rack::Config
> - should accept a block that modifies the environment
> Rack::NullLogger
> - should act as a noop logger
> Rack::ConditionalGet
> - should set a 304 status and truncate body when If-Modified-Since hits
> - should set a 304 status and truncate body when If-Modified-Since hits and is higher than current time
> - should set a 304 status and truncate body when If-None-Match hits
> - should not set a 304 status if If-Modified-Since hits but Etag does not
> - should set a 304 status and truncate body when both If-None-Match and If-Modified-Since hits
> - should not affect non-GET/HEAD requests
> - should not affect non-200 requests
> - should not affect requests with malformed HTTP_IF_NONE_MATCH
> Rack::ContentType
> - should set Content-Type to default text/html if none is set
> - should set Content-Type to chosen default if none is set
> - should not change Content-Type if it is already set
> - should detect Content-Type case insensitive
> - should not set Content-Type on 304 responses
> Rack::Builder
> - supports mapping
> - doesn't dupe env even when mapping
> - chains apps by default
> - has implicit #to_app
> - supports blocks on use/<<PKGBUILDDIR>>/lib/rack/rewindable_input.rb:64: warning: instance variable @data not initialized
> /<<PKGBUILDDIR>>/lib/rack/rewindable_input.rb:64: warning: instance variable @data not initialized
> /<<PKGBUILDDIR>>/lib/rack/rewindable_input.rb:64: warning: instance variable @data not initialized
>
> - has explicit #to_app
> - can mix map and run for endpoints
> - accepts middleware-only map blocks
> - yields the generated app to a block for warmup
> - should initialize apps once
> - allows use after run
> - complains about a missing run
> parse_file
> - parses commented options
> - removes __END__ before evaluating app
> - supports multi-line comments
> - requires anything not ending in .ru
> - sets __LINE__ correctly
> new_from_string
> - builds a rack app from string
> Rack::Multipart
> - should return nil if content type is not multipart
> - should parse multipart content when content type present but filename is not
> - should set US_ASCII encoding based on charset
> - should set BINARY encoding on things without content type
> - should set UTF8 encoding on names of things without content type
> - should default text to UTF8
> - should raise RangeError if the key space is exhausted
> - should parse multipart form webkit style
> - should reject insanely long boundaries
> - should parse multipart upload with text file
> - should preserve extension in the created tempfile
> - should parse multipart upload with text file with no name field
> - should parse multipart upload file using custom tempfile class
> - should parse multipart upload with nested parameters
> - should parse multipart upload with binary file
> - should parse multipart upload with empty file
> - should parse multipart upload with filename with semicolons
> - should parse multipart upload with filename with invalid characters
> - should not include file params if no file was selected
> - should parse multipart/mixed
> - should parse multipart/mixed
> - should parse IE multipart upload and clean up filename
> - should parse filename and modification param
> - should parse filename with escaped quotes
> - should parse filename with percent escaped quotes
> - should parse filename with unescaped quotes
> - should parse filename with escaped quotes and modification param
> - should parse filename with unescaped percentage characters
> - should parse filename with unescaped percentage characters that look like partial hex escapes
> - should parse filename with unescaped percentage characters that look like partial hex escapes
> - rewinds input after parsing upload
> - builds multipart body
> - builds nested multipart body
> - can parse fields that end at the end of the buffer
> - builds complete params with the chunk size of 16384 slicing exactly on boundary
> - should not reach a multi-part limit
> - should reach a multipart limit
> - should return nil if no UploadedFiles were used
> - should raise ArgumentError if params is not a Hash
> - can parse fields with a content type
> - should parse multipart upload with no content-length header
> - should parse very long unquoted multipart file names
> - should support mixed case metadata
> Rack::Mime
> - should return the fallback mime-type for files with no extension
> - should always return 'application/octet-stream' for unknown file extensions
> - should return the mime-type for a given extension
> - should support null fallbacks
> - should match exact mimes
> - should match class wildcard mimes
> - should match full wildcards
> - should match type wildcard mimes
> Rack::RewindableInput
> given an IO object that is already rewindable
> - should be able to handle to read()
> - should be able to handle to read(nil)
> - should be able to handle to read(length)
> - should be able to handle to read(length, buffer)
> - should be able to handle to read(nil, buffer)
> - should rewind to the beginning when #rewind is called
> - should be able to handle gets
> - should be able to handle each
> - should not buffer into a Tempfile if no data has been read yet
> - should buffer into a Tempfile when data has been consumed for the first time
> - should close the underlying tempfile upon calling #close
> - should be possible to call #close when no data has been buffered yet
> - should be possible to call #close multiple times
> given an IO object that is not rewindable
> - should be able to handle to read()
> - should be able to handle to read(nil)
> - should be able to handle to read(length)
> - should be able to handle to read(length, buffer)
> - should be able to handle to read(nil, buffer)
> - should rewind to the beginning when #rewind is called
> - should be able to handle gets
> - should be able to handle each
> - should not buffer into a Tempfile if no data has been read yet
> - should buffer into a Tempfile when data has been consumed for the first time
> - should close the underlying tempfile upon calling #close
> - should be possible to call #close when no data has been buffered yet
> - should be possible to call #close multiple times
> given an IO object whose rewind method raises Errno::ESPIPE
> - should be able to handle to read()
> - should be able to handle to read(nil)
> - should be able to handle to read(length)
> - should be able to handle to read(length, buffer)
> - should be able to handle to read(nil, buffer)
> - should rewind to the beginning when #rewind is called
> - should be able to handle gets
> - should be able to handle each
> - should not buffer into a Tempfile if no data has been read yet
> - should buffer into a Tempfile when data has been consumed for the first time
> - should close the underlying tempfile upon calling #close
> - should be possible to call #close when no data has been buffered yet
> - should be possible to call #close multiple times
> Rack::Handler::WEBrick
> - should respond
> - should be a WEBrick
> - should have rack headers
> - should have CGI headers on GET
> - should have CGI headers on POST
> - should support HTTP auth
> - should set status
> - should correctly set cookies
> - should provide a .run
> - should return repeated headers
> - should support Rack partial hijack
> - should produce correct HTTP semantics with and without app chunking
> Rack::Session::Cookie
> Base64
> - uses base64 to encode
> - uses base64 to decode
> Marshal
> - marshals and base64 encodes
> - marshals and base64 decodes
> - rescues failures on decode
> JSON
> - marshals and base64 encodes
> - marshals and base64 decodes
> - rescues failures on decode
> ZipJSON
> - jsons, deflates, and base64 encodes
> - base64 decodes, inflates, and decodes json
> - rescues failures on decode
> - warns if no secret is given
> - uses a coder
> - creates a new cookie
> - loads from a cookie
> - renew session id
> - destroys session
> - survives broken cookies
> - barks on too big cookies
> - loads from a cookie with integrity hash
> - loads from a cookie wih accept-only integrity hash for graceful key rotation
> - ignores tampered with session cookies
> - supports either of secret or old_secret
> - can handle Rack::Lint middleware
> - can handle middleware that inspects the env
> - returns the session id in the session hash
> - does not return a cookie if set to secure but not using ssl
> - does not return a cookie if cookie was not read/written
> - does not return a cookie if cookie was not written (only read)
> - returns even if not read/written if :expire_after is set
> - returns no cookie if no data was written and no session was created previously, even if :expire_after is set
> - exposes :secret in env['rack.session.option']
> - exposes :coder in env['rack.session.option']
> - allows passing in a hash with session data from middleware in front
> - allows modifying session data with session data from middleware in front
> - allows more than one '--' in the cookie when calculating digests
> Rack
> version
> - defaults to a hard-coded api version
> release
> - matches version in .gemspec
> Rack::URLMap
> - dispatches paths correctly
> - dispatches hosts correctly
> - should be nestable
> - should route root apps correctly
> - should not squeeze slashes
> - should not be case sensitive with hosts
> Rack::Session::Pool
> - creates a new cookie
> - determines session from a cookie
> - survives nonexistant cookies
> - does not send the same session id if it did not change
> - deletes cookies with :drop option
> - provides new session id with :renew option
> - omits cookie with :defer option
> - should merge sessions when multithreaded
> - does not return a cookie if cookie was not read/written
> - does not return a cookie if cookie was not written (only read)
> - returns even if not read/written if :expire_after is set
> - returns no cookie if no data was written and no session was created previously, even if :expire_after is set
> Rack::ETag
> - should set ETag if none is set if status is 200
> - should set ETag if none is set if status is 201
> - should set Cache-Control to 'max-age=0, private, must-revalidate' (default) if none is set
> - should set Cache-Control to chosen one if none is set
> - should set a given Cache-Control even if digest could not be calculated
> - should not set Cache-Control if it is already set
> - should not set Cache-Control if directive isn't present
> - should not change ETag if it is already set
> - should not set ETag if body is empty
> - should not set ETag if Last-Modified is set
> - should not set ETag if a sendfile_body is given
> - should not set ETag if a status is not 200 or 201
> - should not set ETag if no-cache is given
> - should close the original body
> Rack::Head
> - should pass GET, POST, PUT, DELETE, OPTIONS, TRACE requests
> - should remove body from HEAD requests
> - should close the body when it is removed
> Rack::Recursive
> - should allow for subrequests
> - should raise error on requests not below the app
> - should support forwarding
> #<Proc:0x00007f9e0c081478@/<<PKGBUILDDIR>>/lib/rack/lobster.rb:14 (lambda)>
> - should be a single lambda
> - should look like a lobster
> - should be flippable
> Rack::Lobster
> - should look like a lobster
> - should be flippable
> - should provide crashing for testing purposes
> Rack::File
> - should respond to #to_path
> Rack::Sendfile
> - does nothing when no X-Sendfile-Type header present
> - sets X-Sendfile response header and discards body
> - sets X-Lighttpd-Send-File response header and discards body
> - sets X-Accel-Redirect response header and discards body
> - writes to rack.error when no X-Accel-Mapping is specified
> - does nothing when body does not respond to #to_path
> - sets X-Accel-Redirect response header and discards body when initialized with multiple mappings
> NameError: uninitialized constant Rack::Response::CONTENT_LENGTH
> /<<PKGBUILDDIR>>/lib/rack/response.rb:103:in `write': Rack::Response - can be written to
> /<<PKGBUILDDIR>>/test/spec_response.rb:27:in `block (3 levels) in <top (required)>'
> /<<PKGBUILDDIR>>/lib/rack/response.rb:91:in `each'
> /<<PKGBUILDDIR>>/lib/rack/body_proxy.rb:31:in `each'
> /<<PKGBUILDDIR>>/test/spec_response.rb:33:in `block (2 levels) in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:23:in `block in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:4:in `<top (required)>'
>
> NameError: uninitialized constant Rack::Response::CONTENT_LENGTH
> /<<PKGBUILDDIR>>/lib/rack/response.rb:103:in `write': Rack::Response - can override the initial Content-Type with a different case
> /<<PKGBUILDDIR>>/lib/rack/response.rb:37:in `initialize'
> /<<PKGBUILDDIR>>/test/spec_response.rb:46:in `new'
> /<<PKGBUILDDIR>>/test/spec_response.rb:46:in `block (2 levels) in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:45:in `block in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:4:in `<top (required)>'
>
> NameError: uninitialized constant Rack::Response::CONTENT_LENGTH
> /<<PKGBUILDDIR>>/lib/rack/response.rb:103:in `write': Rack::Response - has a useful constructor
> /<<PKGBUILDDIR>>/lib/rack/response.rb:37:in `initialize'
> /<<PKGBUILDDIR>>/test/spec_response.rb:150:in `new'
> /<<PKGBUILDDIR>>/test/spec_response.rb:150:in `block (2 levels) in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:149:in `block in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:4:in `<top (required)>'
>
> NameError: uninitialized constant Rack::Response::CONTENT_LENGTH
> /<<PKGBUILDDIR>>/lib/rack/response.rb:103:in `write': Rack::Response - has a constructor that can take a block
> /<<PKGBUILDDIR>>/test/spec_response.rb:181:in `block (3 levels) in <top (required)>'
> /<<PKGBUILDDIR>>/lib/rack/response.rb:46:in `initialize'
> /<<PKGBUILDDIR>>/test/spec_response.rb:179:in `new'
> /<<PKGBUILDDIR>>/test/spec_response.rb:179:in `block (2 levels) in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:178:in `block in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:4:in `<top (required)>'
>
> NameError: uninitialized constant Rack::Response::CONTENT_LENGTH
> /<<PKGBUILDDIR>>/lib/rack/response.rb:103:in `write': Rack::Response - doesn't return invalid responses
> /<<PKGBUILDDIR>>/lib/rack/response.rb:40:in `block in initialize'
> /<<PKGBUILDDIR>>/lib/rack/response.rb:39:in `each'
> /<<PKGBUILDDIR>>/lib/rack/response.rb:39:in `initialize'
> /<<PKGBUILDDIR>>/test/spec_response.rb:190:in `new'
> /<<PKGBUILDDIR>>/test/spec_response.rb:190:in `block (2 levels) in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:189:in `block in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:4:in `<top (required)>'
>
> NameError: uninitialized constant Rack::Response::CONTENT_LENGTH
> /<<PKGBUILDDIR>>/lib/rack/response.rb:103:in `write': Rack::Response - knows if it's empty
> /<<PKGBUILDDIR>>/test/spec_response.rb:206:in `block (2 levels) in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:203:in `block in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:4:in `<top (required)>'
>
> NameError: uninitialized constant Rack::Response::Helpers::CONTENT_TYPE
> /<<PKGBUILDDIR>>/lib/rack/response.rb:147:in `content_type': Rack::Response - should provide access to the HTTP headers
> /<<PKGBUILDDIR>>/test/spec_response.rb:279:in `block (2 levels) in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:272:in `block in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:4:in `<top (required)>'
>
> NameError: uninitialized constant Rack::Response::CONTENT_LENGTH
> /<<PKGBUILDDIR>>/lib/rack/response.rb:103:in `write': Rack::Response - updates Content-Length when body appended to using #write
> /<<PKGBUILDDIR>>/test/spec_response.rb:301:in `block (2 levels) in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:297:in `block in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:4:in `<top (required)>'
>
> NameError: uninitialized constant Rack::Response::CONTENT_TYPE
> /<<PKGBUILDDIR>>/lib/rack/response.rb:77:in `finish': Rack::Response - calls close on #body when 204, 205, or 304
> /<<PKGBUILDDIR>>/test/spec_response.rb:321:in `block (2 levels) in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:314:in `block in <top (required)>'
> /<<PKGBUILDDIR>>/test/spec_response.rb:4:in `<top (required)>'
>
> 716 specifications (2307 requirements), 0 failures, 9 errors
> rake aborted!
> Command failed with status (1): [/usr/bin/ruby2.5 /usr/bin/bacon -I./test -...]
> /<<PKGBUILDDIR>>/debian/ruby-tests.rake:6:in `block in <top (required)>'
> Tasks: TOP => default
> (See full trace by running task with --trace)
> ERROR: Test "ruby2.5" failed.
The full build log is available from:
http://aws-logs.debian.net/2018/12/29/ruby-rack_1.6.4-6_unstable.log
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
About the archive rebuild: The rebuild was done on EC2 VM instances from
Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
failed build was retried once to eliminate random failures.
More information about the Pkg-ruby-extras-maintainers
mailing list