Skip to content

Releases: sersoft-gmbh/xmlwrangler

v6.1.1

21 Mar 06:43
Compare
Choose a tag to compare

What's Changed

  • Don't strip too many whitespaces from string contents by @ffried in #121

Full Changelog: 6.1.0...6.1.1

v6.1.0

11 Mar 10:05
e30ce20
Compare
Choose a tag to compare
  • Add Swift 5.10 support

Full Changelog: 6.0.0...6.1.0

v6.0.0

24 Sep 13:48
f04c13b
Compare
Choose a tag to compare

What's Changed

  • Add support for Swift 5.9 (dropping support for older versions of Swift).
  • Move parsing and serialization into XMLElement.
    • Parser -> XMLElement.parse() and ExpressibleByXMLElement.parseFromXML().
    • String.init(xml:) -> XMLElement.serialize() and XMLElement.serializeAsDocument().
  • Move types (LookupError, DocumentEncoding, SerializationOptions and parsing errors) into XMLElement.
  • Replace SemVer dependency with XMLElement.DocumentVersion.

Full Changelog: 5.5.0...6.0.0

v5.5.0

09 Apr 14:22
a6b87f3
Compare
Choose a tag to compare

What's Changed

  • Add Swift 5.8 support

Full Changelog: 5.4.0...5.5.0

v5.4.0

15 Sep 17:26
95a514a
Compare
Choose a tag to compare

What's Changed

  • Add Swift 5.7 support

Full Changelog: 5.3.1...5.4.0

v5.3.1

17 Mar 10:47
8e6a2d9
Compare
Choose a tag to compare
  • Fix documentation generation

Full Changelog: 5.3.0...5.3.1

v5.3.0

16 Mar 07:18
231f50d
Compare
Choose a tag to compare

What's Changed

  • Add Swift 5.6 support, drop support for Swift pre 5.5
  • Fix warning in Swift 5.6

Full Changelog: 5.2.0...5.3.0

v5.1.0

27 Apr 10:43
Compare
Choose a tag to compare
  • Add XMLContentBuilder, which is a @resultBuilder implementation for building XMLElement.Content - this is only available when building with Swift 5.4.
  • Add Swift 5.4 support.

v5.0.0

08 Dec 10:12
8489a0d
Compare
Choose a tag to compare

This is the final version 5.0.0. No source changes have since the last RC.

Changes

  • Massive internal refactoring (addendum to version 4.0)
  • Element is now named XMLElement with a typealias XWElement for disambiguation with Foundation.XMLElement
  • All References to object that referred to an XMLElement have been replaced with element.
  • XMLElement.Content is now a custom collection implementation containing the enum that was previously Element.Content.
  • XMLElement.Attributes is now a custom collection implementation that works similar to a dictionary. The XMLElement.Attributes.Key is what was previously Element.AttributeKey. XMLElement.Attributes.Content is what was previously Element.AttributeValue.
  • The XMLAttributeContentConvertible, ExpressibleByXMLAttributeContent and XMLAttributeRepresentableProtocol (which is the combination of the former two) can now be used to create attributes with dictionary literals. This allows e.g. the following code to work:
let existingString = "abc"
let attributeContent = XMLElement.Attributes.Content("some value")
let attributes: XMLElement.Attributes = [
    "testKey": existingString,
    "otherAttribute": "whatever",
    "existingContent": attributeContent,
]

v5.0 RC1

16 Oct 06:52
72ce1c3
Compare
Choose a tag to compare
v5.0 RC1 Pre-release
Pre-release

This is the first release candidate for a version 5.0.

Changes

  • Massive internal refactoring (addendum to version 4.0)
  • Element is now named XMLElement with a typealias XWElement for disambiguation with Foundation.XMLElement
  • All References to object that referred to an XMLElement have been replaced with element.
  • XMLElement.Content is now a custom collection implementation containing the enum that was previously Element.Content.
  • XMLElement.Attributes is now a custom collection implementation that works similar to a dictionary. The XMLElement.Attributes.Key is what was previously Element.AttributeKey. XMLElement.Attributes.Content is what was previously Element.AttributeValue.
  • The XMLAttributeContentConvertible, ExpressibleByXMLAttributeContent and XMLAttributeRepresentableProtocol (which is the combination of the former two) can now be used to create attributes with dictionary literals. This allows e.g. the following code to work:
let existingString = "abc"
let attributeContent = XMLElement.Attributes.Content("some value")
let attributes: XMLElement.Attributes = [
    "testKey": existingString,
    "otherAttribute": "whatever",
    "existingContent": attributeContent,
]