Skip to content

Upgrading rack 0.9 to 1

Unknown0.9.1 → 1.6.13

Fetching 64 releases from GitHub…0 / 64
UnknownUpgrade verdict

DepDelta is still reading the notes for this range, so breaking changes can't be ruled out yet.

  • DepDelta is still reading the release notes in this range, so it can't rule out breaking changes yet.
  • This page updates as the notes come in.
Still reading release notes

DepDelta is still reading the release notes in this range. This updates as they come in.

Requires Ruby >= 0 from 1.5.3 (none stated before).

Generated by DepDelta from published Ruby source. Not mixed with prose notes.

  • added: const Rack.CACHE_CONTROL
  • added: const Rack.CONTENT_LENGTH
  • added: const Rack.CONTENT_TYPE
  • added: const Rack.GET
  • added: const Rack.HEAD
  • added: const Rack.PATH_INFO
  • added: const Rack.QUERY_STRING
  • added: const Rack.REQUEST_METHOD
  • added: const Rack.SCRIPT_NAME
  • added: const URI.TBLDECWWWCOMP_
  • added: const URI.TBLENCWWWCOMP_
  • added: const URI.WFKV_
  • added: module URI
  • added: static method URI.decode_www_form(_, _ = …)
  • added: static method URI.decode_www_form_component(_, _ = …)
  • added: static method URI.encode_www_form_component(_)
  • added: class Stream
  • added: method Stream._rack_read_without_buffer()
  • added: method Stream.read(_, _ = …)
  • removed: const Deflater.DEFLATE_ARGS
  • removed: const Utils.HTTP_STATUS_CODES
  • removed: method CommonLogger.<<(_)
  • removed: method CommonLogger._call(_)
  • removed: method CommonLogger.close()
  • removed: method CommonLogger.each()
  • removed: method File.forbidden()
  • removed: method File.not_found()
  • removed: method MockResponse.[](_)
  • removed: module Adapter
  • removed: property MockResponse.body: reader
  • removed: property MockResponse.headers: reader
  • removed: property MockResponse.status: reader
  • removed: static method Deflater.deflate(_)
  • removed: static method Deflater.gzip(_, _)
  • removed: static method Utils.build_query(_)
  • removed: static method Utils.escape_html(_)
  • removed: static method Utils.select_best_encoding(_, _)
  • changed: class MockResponse → class MockResponse < Rack::Response
  • changed: constructor Builder() → constructor Builder(_ = …)
  • changed: constructor Deflater(_) → constructor Deflater(_, _ = …)
  • changed: constructor File(_) → constructor File(_, _ = …, _ = …)
  • changed: constructor Reloader(_, _ = …) → constructor Reloader(_, _ = …, _ = …)
  • changed: constructor URLMap(_) → constructor URLMap(_ = …)
  • changed: method File.serving() → method File.serving(_)
  • changed: method Lint.check_content_length(_, _, _) → method Lint.check_content_length(_, _)
  • changed: static method Builder.app() → static method Builder.app(_ = …)
  • changed: static method Utils.unescape(_) → static method Utils.unescape(_, _ = …)
  • added: class BodyProxy
  • added: class Chunked
  • added: class Config
  • added: class ContentType
  • added: class ETag
  • added: class Lock
  • added: class Logger
  • added: class NullLogger
  • added: class RewindableInput
  • added: class Runtime
  • added: class Sendfile
  • added: class Server
  • added: class TempfileReaper
  • added: const Cascade.NotFound
  • added: const CommonLogger.FORMAT
  • added: const ETag.DEFAULT_CACHE_CONTROL
  • added: const ETag.ETAG_STRING
  • added: const File.ALLOWED_VERBS
  • added: const File.ALLOW_HEADER
  • added: const Lock.FLAG
  • added: const MethodOverride.ALLOWED_METHODS
  • added: const Multipart.BROKEN_QUOTED
  • added: const Multipart.BROKEN_UNQUOTED
  • added: const Multipart.CONDISP
  • added: const Multipart.DISPPARM
  • added: const Multipart.EOL
  • added: const Multipart.MULTIPART
  • added: const Multipart.MULTIPART_BOUNDARY
  • added: const Multipart.MULTIPART_CONTENT_DISPOSITION
  • added: const Multipart.MULTIPART_CONTENT_ID
  • added: const Multipart.MULTIPART_CONTENT_TYPE
  • added: const Multipart.RFC2183
  • added: const Multipart.TOKEN
  • added: const Request.DEFAULT_PORTS
  • added: const Request.PARSEABLE_DATA_MEDIA_TYPES
  • added: const Request.SCHEME_WHITELIST
  • added: const Response.CHUNKED
  • added: const Response.TRANSFER_ENCODING
  • added: const Runtime.FORMAT_STRING
  • added: const Sendfile.F
  • added: const URLMap.INFINITY
  • added: const URLMap.NEGATIVE_INFINITY
  • added: const Utils.DEFAULT_SEP
  • added: constructor BodyProxy(_)
  • added: constructor Chunked(_)
  • added: constructor Config(_)
  • added: constructor ContentType(_, _ = …)
  • added: constructor ETag(_, _ = …, _ = …)
  • added: constructor Lock(_, _ = …)
  • added: constructor Logger(_, _ = …)
  • added: constructor NullLogger(_)
  • added: constructor RewindableInput(_)
  • added: constructor Runtime(_, _ = …)
  • added: constructor Sendfile(_, _ = …, _ = …)
  • added: constructor Server(_ = …)
  • added: constructor TempfileReaper(_)
  • added: method BodyProxy.close()
  • added: method BodyProxy.closed?()
  • added: method BodyProxy.each(*)
  • added: method BodyProxy.respond_to?(*)
  • added: method Builder.warmup(_ = …)
  • added: method Chunked.call(_)
  • added: method Chunked.chunkable_version?(_)
  • added: method Config.call(_)
  • added: method ContentType.call(_)
  • added: method ETag.call(_)
  • added: method Lint.check_hijack(_)
  • added: method Lint.check_hijack_response(_, _)
  • added: method Lint.verify_content_length(_)
  • added: method Lock.call(_)
  • added: method Logger.call(_)
  • added: method MethodOverride.method_override(_)
  • added: method MockRequest.head(_, _ = …)
  • added: method MockRequest.options(_, _ = …)
  • added: method MockRequest.patch(_, _ = …)
  • added: method MockResponse.body()
  • added: method MockResponse.empty?()
  • added: method NullLogger.<<(_)
  • added: method NullLogger.add(_, _ = …, _ = …)
  • added: method NullLogger.call(_)
  • added: method NullLogger.close()
  • added: method NullLogger.datetime_format()
  • added: method NullLogger.debug(_ = …)
  • added: method NullLogger.debug?()
  • added: method NullLogger.error(_ = …)
  • added: method NullLogger.error?()
  • added: method NullLogger.fatal(_ = …)
  • added: method NullLogger.fatal?()
  • added: method NullLogger.formatter()
  • added: method NullLogger.info(_ = …)
  • added: method NullLogger.info?()
  • added: method NullLogger.level()
  • added: method NullLogger.progname()
  • added: method NullLogger.sev_threshold()
  • added: method NullLogger.unknown(_ = …)
  • added: method NullLogger.warn(_ = …)
  • added: method NullLogger.warn?()
  • added: method Recursive._call(_)
  • added: method Reloader.safe_load(_, _, _ = …)
  • added: method Request.accept_language()
  • added: method Request.base_url()
  • added: method Request.delete_param(_)
  • added: method Request.host_with_port()
  • added: method Request.link?()
  • added: method Request.logger()
  • added: method Request.options?()
  • added: method Request.parseable_data?()
  • added: method Request.patch?()
  • added: method Request.path()
  • added: method Request.session()
  • added: method Request.session_options()
  • added: method Request.ssl?()
  • added: method Request.trace?()
  • added: method Request.trusted_proxy?(_)
  • added: method Request.unlink?()
  • added: method Request.update_param(_, _)
  • added: method Request.user_agent()
  • added: method Response.redirect(_, _ = …)
  • added: method Response.to_ary()
  • added: method RewindableInput.close()
  • added: method RewindableInput.each()
  • added: method RewindableInput.gets()
  • added: method RewindableInput.read(*)
  • added: method RewindableInput.rewind()
  • added: method Runtime.call(_)
  • added: method Sendfile.call(_)
  • added: method Server.app()
  • added: method Server.default_options()
  • added: method Server.middleware()
  • added: method Server.options()
  • added: method Server.server()
  • added: method Server.start()
  • added: method ShowExceptions.dump_exception(_)
  • added: method ShowExceptions.prefers_plaintext?(_)
  • added: method Static.applicable_rules(_)
  • added: method Static.can_serve(_)
  • added: method Static.overwrite_file_path(_)
  • added: method Static.route_file(_)
  • added: method TempfileReaper.call(_)
  • added: method URLMap.remap(_)
  • added: method Utils.normalize_params(_, _, _ = …, _ = …)
  • added: module Multipart
  • added: property File.cache_control: accessor
  • added: property File.to_path: accessor
  • added: property Response.length: accessor
  • added: property Server.options: writer
  • added: protected method Request.parse_http_accept_header(_)
  • added: protected method Request.parse_multipart(_)
  • added: protected method Request.parse_query(_)
  • added: protected method Request.reject_trusted_ip_addresses(_)
  • added: protected method Request.split_ip_addresses(_)
  • added: set NullLogger.datetime_format(_)
  • added: set NullLogger.formatter(_)
  • added: set NullLogger.level(_)
  • added: set NullLogger.progname(_)
  • added: set NullLogger.sev_threshold(_)
  • added: static method Builder.new_from_string(_, _ = …)
  • added: static method Builder.parse_file(_, _ = …)
  • added: static method Handler._const_get(_, _ = …)
  • added: static method Handler.default(_ = …)
  • added: static method Handler.pick(_)
  • added: static method Handler.try_require(_, _)
  • added: static method Mime.match?(_, _)
  • added: static method MockRequest.env_with_encoding(_, _, _)
  • added: static method MockRequest.parse_uri_rfc2396(_)
  • added: static method Multipart.build_multipart(_, _ = …)
  • added: static method Multipart.parse_multipart(_)
  • added: static method Server.default_middleware_by_environment()
  • added: static method Server.logging_middleware()
  • added: static method Server.middleware()
  • added: static method Server.start(_ = …)
  • added: static method Utils.escape_path(_)
  • added: static method Utils.parse_nested_query(_, _ = …)
  • added: static property Utils.key_space_limit: accessor
  • added: static property Utils.multipart_part_limit: accessor
  • added: static property Utils.param_depth_limit: accessor
  • removed: class Camping
  • removed: constructor Camping(_)
  • removed: method Camping.call(_)
  • removed: class OpenID < AbstractHandler
  • removed: const OpenID.HTML
  • removed: constructor OpenID(_, _ = …)
  • removed: method OpenID.add_extension(_, *)
  • removed: method OpenID.call(_)
  • removed: method OpenID.check(_, _, _)
  • removed: method OpenID.extension_namespaces()
  • removed: method OpenID.finish(_, _, _)
  • removed: property OpenID.extensions: reader
  • removed: property OpenID.options: reader
  • changed: constructor AbstractHandler(_) → constructor AbstractHandler(_, _ = …)
  • added: method AbstractRequest.request()
  • changed: constructor MD5(_) → constructor MD5(_, _ = …, _ = …)
  • added: method Request.respond_to?(_, *)
  • removed: class NoSession < RuntimeError
  • removed: class OIDStore < ::OpenID::Store::Memory.new
  • added: class Body
  • added: const Body.TAIL
  • added: const Body.TERM
  • added: constructor Body(_)
  • added: method Body.close()
  • added: method Body.each()
  • added: class DeflateStream
  • added: class GzipStream
  • added: const DeflateStream.DEFLATE_ARGS
  • added: constructor DeflateStream(_)
  • added: constructor GzipStream(_, _)
  • added: method DeflateStream.close()
  • added: method DeflateStream.each()
  • added: method GzipStream.close()
  • added: method GzipStream.each()
  • added: method GzipStream.write(_)
  • added: static method FastCGI.valid_options()
  • added: static method Mongrel.valid_options()
  • added: static method SCGI.valid_options()
  • added: static method Thin.valid_options()
  • added: static method WEBrick.shutdown()
  • added: static method WEBrick.valid_options()
  • removed: method ProperStream.each()
  • removed: method ProperStream.read(*)
  • removed: module ProperStream
  • removed: method InputWrapper.size()
  • changed: method InputWrapper.rewind() → method InputWrapper.rewind(*)
  • added: class HijackWrapper
  • added: const HijackWrapper.REQUIRED_METHODS
  • added: constructor HijackWrapper(_)
  • added: class Generator
  • added: class MultipartPartLimitError < Errno::EMFILE
  • added: class Parser
  • added: class UploadedFile
  • added: const Parser.BUFSIZE
  • added: const Parser.CHARSET
  • added: const Parser.TEXT_PLAIN
  • added: constructor Generator(_, _ = …)
  • added: constructor Parser(_, _, _, _, _, _)
  • added: constructor UploadedFile(_, _ = …, _ = …)
  • added: method Generator.dump()
  • added: method Parser.parse()
  • added: method UploadedFile.local_path()
  • added: method UploadedFile.path()
  • added: method UploadedFile.respond_to?(*)
  • added: property UploadedFile.content_type: accessor
  • added: property UploadedFile.original_filename: reader
  • added: static method Parser.create(_)
  • added: class DUMMY < Struct.new(:parse)
  • added: method Stat.figure_path(_, _)
  • added: method Stat.rotation()
  • added: method Stat.safe_stat(_)
  • added: module Stat
  • removed: method Helpers.empty?()
  • added: method Helpers.accepted?()
  • added: method Helpers.bad_request?()
  • added: method Helpers.created?()
  • added: method Helpers.i_m_a_teapot?()
  • added: method Helpers.method_not_allowed?()
  • added: method Helpers.unauthorized?()
  • added: method Helpers.unprocessable?()
  • added: class Tempfile < ::Tempfile
  • added: method Tempfile._close()
  • added: class Options
  • added: method Options.handler_opts(_)
  • added: method Options.parse!(_)
  • removed: method Cookie.call(_)
  • changed: class Cookie → class Cookie < Abstract::PersistedSecure
  • changed: class Memcache < Abstract::ID → class Memcache < Abstract::PersistedSecure
  • changed: class Pool < Abstract::ID → class Pool < Abstract::PersistedSecure
  • added: class SessionId
  • added: const Abstract.ENV_SESSION_KEY
  • added: const Abstract.ENV_SESSION_OPTIONS_KEY
  • added: const SessionId.ID_VERSION
  • added: constructor SessionId(_)
  • added: method Memcache.destroy_session(_, _, _)
  • added: method Memcache.generate_sid()
  • added: method Memcache.get_session(_, _)
  • added: method Memcache.set_session(_, _, _, _)
  • added: method Memcache.with_lock(_)
  • added: method Pool.destroy_session(_, _, _)
  • added: method Pool.generate_sid()
  • added: method Pool.get_session(_, _)
  • added: method Pool.set_session(_, _, _, _)
  • added: method Pool.with_lock(_)
  • added: method SessionId.empty?()
  • added: method SessionId.inspect()
  • added: method SessionId.private_id()
  • added: property Cookie.coder: reader
  • added: property SessionId.cookie_value: reader
  • added: property SessionId.public_id: reader
  • added: property SessionId.to_s: reader
  • removed: const ID.DEFAULT_OPTIONS
  • removed: constructor ID(_, _ = …)
  • removed: method ID.call(_)
  • removed: method ID.context(_)
  • removed: property ID.key: reader
  • changed: class ID → class ID < Persisted
  • added: class Persisted
  • added: class PersistedSecure < Persisted
  • added: class SessionHash
  • added: const Persisted.DEFAULT_OPTIONS
  • added: constructor Persisted(_, _ = …)
  • added: constructor SessionHash(_, _)
  • added: method Persisted.call(_)
  • added: method Persisted.context(_, _ = …)
  • added: method PersistedSecure.extract_session_id(*)
  • added: method PersistedSecure.generate_sid(*)
  • added: method SessionHash.[](_)
  • added: method SessionHash.[]=(_, _)
  • added: method SessionHash.clear()
  • added: method SessionHash.delete(_)
  • added: method SessionHash.destroy()
  • added: method SessionHash.each()
  • added: method SessionHash.empty?()
  • added: method SessionHash.exists?()
  • added: method SessionHash.has_key?(_)
  • added: method SessionHash.id()
  • added: method SessionHash.include?(_)
  • added: method SessionHash.inspect()
  • added: method SessionHash.key?(_)
  • added: method SessionHash.keys()
  • added: method SessionHash.loaded?()
  • added: method SessionHash.merge!(_)
  • added: method SessionHash.options()
  • added: method SessionHash.replace(_)
  • added: method SessionHash.to_hash()
  • added: method SessionHash.update(_)
  • added: method SessionHash.values()
  • added: property Persisted.default_options: reader
  • added: property Persisted.key: reader
  • added: property SessionHash.id: writer
  • added: static method SessionHash.find(_)
  • added: static method SessionHash.set(_, _)
  • added: static method SessionHash.set_options(_, _)
  • added: class SecureSessionHash < SessionHash
  • added: method SecureSessionHash.[](_)
  • added: class Base64
  • added: class Identity
  • added: class SessionId < DelegateClass(Session::SessionId)
  • added: constructor SessionId(_, _)
  • added: method Base64.decode(_)
  • added: method Base64.encode(_)
  • added: method Identity.decode(_)
  • added: method Identity.encode(_)
  • added: property SessionId.cookie_value: reader
  • added: class JSON < Base64
  • added: class Marshal < Base64
  • added: class ZipJSON < Base64
  • added: method JSON.decode(_)
  • added: method JSON.encode(_)
  • added: method Marshal.decode(_)
  • added: method Marshal.encode(_)
  • added: method ZipJSON.decode(_)
  • added: method ZipJSON.encode(_)
  • removed: class Context < Proc
  • removed: class HeaderHash < Hash
  • removed: class STATUS_WITH_NO_ENTITY_BODY < Set.new((100..199).to_a << 204 << 304)
  • removed: const Multipart.EOL
  • removed: constructor Context(_, _)
  • removed: constructor HeaderHash(_ = …)
  • removed: method Context.context(_)
  • removed: method Context.inspect()
  • removed: method Context.old_inspect()
  • removed: method Context.pretty_print(_)
  • removed: method HeaderHash.[](_)
  • removed: method HeaderHash.[]=(_, _)
  • removed: method HeaderHash.delete(_)
  • removed: method HeaderHash.has_key?(_)
  • removed: method HeaderHash.include?(_)
  • removed: method HeaderHash.key?(_)
  • removed: method HeaderHash.member?(_)
  • removed: method HeaderHash.merge!(_)
  • removed: method HeaderHash.merge(_)
  • removed: method HeaderHash.to_hash()
  • removed: module Multipart
  • removed: property Context.app: reader
  • removed: property Context.for: reader
  • removed: static method Multipart.parse_multipart(_)
  • added: class InvalidParameterError < ArgumentError
  • added: class ParameterTypeError < TypeError
  • added: const OkJson.Spc
  • added: const OkJson.Unesc
  • added: const OkJson.Upstream
  • added: const OkJson.Usurr1
  • added: const OkJson.Usurr2
  • added: const OkJson.Usurr3
  • added: const OkJson.Usurrself
  • added: method OkJson.decode(_)
  • added: method OkJson.encode(_)
  • added: method OkJson.valenc(_)
  • added: module OkJson
  • added: class HTTPResponse
  • added: method HTTPResponse._rack_setup_header()
  • added: method HTTPResponse.setup_header()
  • added: property HTTPResponse.rack: accessor