Multipart Kit Versions Save

🏞 Parses and serializes multipart-encoded data with Codable support.

4.6.0

4 months ago

What's Changed

Add Sendable Conformances by @0xTim in #90

Add Sendable annotations to remove warning when building with complete concurrency checking.

Bumps the minimum supported Swift version to 5.7

This patch was released by @0xTim

Full Changelog: https://github.com/vapor/multipart-kit/compare/4.5.4...4.6.0

4.5.4

1 year ago
This patch was authored by @dkolas and released by @0xTim.

Fixes an issue where the Decodable object is expecting a single part, but receives a set of keys causing the FormDataDecoder to get stuck in an infinite loop and eventually crash. This changes the behaviour to throw an error in this case

4.5.3

1 year ago
This patch was authored and released by @gwynne.

Match Vapor's support

4.5.2

2 years ago
This patch was authored by @ahmdyasser and released by @0xTim.

Removes the vended copy of Swift Collections and adds it as a dependency.

Resolves #82

4.5.1

2 years ago
This patch was authored and released by @0xTim.

Remove the platform requirements as they're not needed and it allows MultipartKit to be used on more platforms.

Resolves #77

4.5.0

2 years ago
This patch was authored by @adam-fowler and released by @0xTim.

Add FormDataDecoder.decode with ByteBuffer parameter and use this function in the other decode functions. This avoids unnecessary conversions from ByteBuffer to [UInt8] and back.

Add FormDataDecoder.decode with ByteBuffer parameter

Resolves #75

4.4.0

2 years ago
This patch was authored and released by @siemensikkema.

Supports indexed array elements when decoding and encoding form data (fixes #67, replaces #69).

Indicating that a value belongs to an array can now be done by appending [0], [1], etc. to the name, as an alternative to the already supported []. This allows for representing nested data inside elements in an array.

For instance, let matrix: [[Int]] = [[42,21]] can now be represented using part names matrix[0][0] and matrix[0][1]. Without indexed array elements there is no way to distinguish the above from [[42],[21]].

Note: FormDataEncoder now also includes indexes for array types in its output.

Credits go to @chocoford for identifying the issue, the test cases and the initial PR!

4.3.0

2 years ago
This patch was authored and released by @siemensikkema.

Redesign FormDataEncoder and FormDataDecoder to better align with Codable's intended behavior.

  • Support decoding top level optionals (fixes #68)
  • Adds a userInfo property to FormDataDecoder and FormDataEncoder
  • More correct handling of "superDecoder" and "superEncoder"
  • When nesting depth is exceeded we first fail when we’re actually trying to grab data from beyond the nesting limit
  • Add some missing API docs

4.2.1

2 years ago
This patch was authored and released by @siemensikkema.

Fixes regression that broke falling back to Codable for types not conforming to MultipartPartConvertible (#66, fixes #65)

Note: this removes conformance of UUID to MultipartPartConvertible introduced in 4.2.0 because it is no longer needed.

4.2.0

2 years ago
This patch was authored and released by @siemensikkema.

Add support for encoding and decoding UUIDs (#64)