Skip to content

Upgrading starlette 0.3 to 0.4

Unknown0.3.7 → 0.4.2

UnknownUpgrade verdict

DepDelta hasn't looked for this range's notes yet, so breaking changes can't be ruled out.

  • DepDelta hasn't finished looking for the notes in this range, so it can't rule out breaking changes yet.
  • Their commits are listed with this comparison.
Unknown for releases without notes

Releases without notes may still need changes. Check their commits before upgrading.

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

  • added: method MutableHeaders.add_vary_header(vary)
  • added: async method FormParser.parse() -> typing.Dict[str, typing.Union[str, UploadFile]]
  • added: async method MultiPartParser.parse() -> typing.Dict[str, typing.Union[str, UploadFile]]
  • added: async method UploadFile.close() -> None
  • added: async method UploadFile.read(size: int=…) -> bytes
  • added: async method UploadFile.seek(offset: int) -> None
  • added: async method UploadFile.setup() -> None
  • added: async method UploadFile.write(data: bytes) -> None
  • added: class FormMessage(Enum)
  • added: class FormParser
  • added: class MultiPartMessage(Enum)
  • added: class MultiPartParser
  • added: class UploadFile
  • added: constructor FormParser(headers: Headers, stream: typing.AsyncGenerator[bytes, None]) -> None
  • added: constructor MultiPartParser(headers: Headers, stream: typing.AsyncGenerator[bytes, None]) -> None
  • added: constructor UploadFile(filename: str) -> None
  • added: field FormMessage.END
  • added: field FormMessage.FIELD_DATA
  • added: field FormMessage.FIELD_END
  • added: field FormMessage.FIELD_NAME
  • added: field FormMessage.FIELD_START
  • added: field MultiPartMessage.END
  • added: field MultiPartMessage.HEADERS_FINISHED
  • added: field MultiPartMessage.HEADER_END
  • added: field MultiPartMessage.HEADER_FIELD
  • added: field MultiPartMessage.HEADER_VALUE
  • added: field MultiPartMessage.PART_BEGIN
  • added: field MultiPartMessage.PART_DATA
  • added: field MultiPartMessage.PART_END
  • added: method FormParser.on_end() -> None
  • added: method FormParser.on_field_data(data: bytes, start: int, end: int) -> None
  • added: method FormParser.on_field_end() -> None
  • added: method FormParser.on_field_name(data: bytes, start: int, end: int) -> None
  • added: method FormParser.on_field_start() -> None
  • added: method MultiPartParser.on_end() -> None
  • added: method MultiPartParser.on_header_end() -> None
  • added: method MultiPartParser.on_header_field(data: bytes, start: int, end: int) -> None
  • added: method MultiPartParser.on_header_value(data: bytes, start: int, end: int) -> None
  • added: method MultiPartParser.on_headers_finished() -> None
  • added: method MultiPartParser.on_part_begin() -> None
  • added: method MultiPartParser.on_part_data(data: bytes, start: int, end: int) -> None
  • added: method MultiPartParser.on_part_end() -> None
  • added: method UploadFile.create_tempfile() -> None
  • added: variable multipart
  • added: variable parse_options_header
  • changed: async method CORSMiddleware.send(message, send=…, origin=…) → async method CORSMiddleware.send(message, send=…, request_headers=…)
  • changed: async method CORSMiddleware.simple_response(receive, send, scope=…, origin=…) → async method CORSMiddleware.simple_response(receive, send, scope=…, request_headers=…)
  • changed: constructor CORSMiddleware(app: ASGIApp, allow_origins: typing.Sequence[str]=…, allow_methods: typing.Sequence[str]=…, allow_headers: typing.Sequence[str]=…, allow_credentials: bool=…, allow_origin_regex: str=…, expose_headers: typing.Sequence[str]=…, max_age: int=…) → constructor CORSMiddleware(app: ASGIApp, allow_origins: typing.Sequence[str]=…, allow_methods: typing.Sequence[str]=…, allow_headers: typing.Sequence[str]=…, allow_credentials: bool=…, allow_origin_regex: str=…, expose_headers: typing.Sequence[str]=…, max_age: int=…) -> None
  • added: async function unattached_send(message: Message)
  • added: async method GZipResponder.send_with_gzip(message: Message) -> None
  • added: class GZipMiddleware
  • added: class GZipResponder
  • added: constructor GZipMiddleware(app: ASGIApp, minimum_size: int=…) -> None
  • added: constructor GZipResponder(app: ASGIApp, scope: Scope, minimum_size: int) -> None
  • added: async method Request.close()
  • added: async method Request.form()
  • added: variable parse_options_header
  • removed: variable JSON_DUMPS_OPTIONS
  • added: class UJSONResponse(JSONResponse)
  • added: field UJSONResponse.media_type
  • added: method UJSONResponse.render(content: typing.Any) -> bytes
  • added: variable ujson