The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of wkhtmltopdf, reference main (5db603), with Swift 6.1 for macOS (SPM) on 24 Apr 2025 22:57:52 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/vapor-community/wkhtmltopdf.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/vapor-community/wkhtmltopdf
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 5db6037 Github action added (#14)
Cloned https://github.com/vapor-community/wkhtmltopdf.git
Revision (git rev-parse @):
5db60379ddd59ae458276839cfd74730f4ef5407
SUCCESS checkout https://github.com/vapor-community/wkhtmltopdf.git at main
Fetching https://github.com/apple/swift-nio.git from cache
Fetched https://github.com/apple/swift-nio.git from cache (0.95s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.82.0 (1.69s)
Fetching https://github.com/apple/swift-atomics.git from cache
Fetching https://github.com/apple/swift-collections.git from cache
Fetching https://github.com/apple/swift-system.git from cache
Fetched https://github.com/apple/swift-atomics.git from cache (0.68s)
Fetched https://github.com/apple/swift-system.git from cache (0.69s)
Fetched https://github.com/apple/swift-collections.git from cache (0.70s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.2.0 (1.17s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.4.2 (0.44s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.1.4 (0.65s)
Creating working copy for https://github.com/apple/swift-atomics.git
Working copy of https://github.com/apple/swift-atomics.git resolved at 1.2.0
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.1.4
Creating working copy for https://github.com/apple/swift-system.git
Working copy of https://github.com/apple/swift-system.git resolved at 1.4.2
Creating working copy for https://github.com/apple/swift-nio.git
Working copy of https://github.com/apple/swift-nio.git resolved at 2.82.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "wkhtmltopdf",
      "name": "wkhtmltopdf",
      "url": "https://github.com/vapor-community/wkhtmltopdf.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/wkhtmltopdf",
      "dependencies": [
        {
          "identity": "swift-nio",
          "name": "swift-nio",
          "url": "https://github.com/apple/swift-nio.git",
          "version": "2.82.0",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-nio",
          "dependencies": [
            {
              "identity": "swift-atomics",
              "name": "swift-atomics",
              "url": "https://github.com/apple/swift-atomics.git",
              "version": "1.2.0",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-atomics",
              "dependencies": [
              ]
            },
            {
              "identity": "swift-collections",
              "name": "swift-collections",
              "url": "https://github.com/apple/swift-collections.git",
              "version": "1.1.4",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-collections",
              "dependencies": [
              ]
            },
            {
              "identity": "swift-system",
              "name": "swift-system",
              "url": "https://github.com/apple/swift-system.git",
              "version": "1.4.2",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-system",
              "dependencies": [
              ]
            }
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/vapor-community/wkhtmltopdf.git
[1/248] Fetching wkhtmltopdf
Fetched https://github.com/vapor-community/wkhtmltopdf.git from cache (0.74s)
Fetching https://github.com/apple/swift-nio.git from cache
Fetched https://github.com/apple/swift-nio.git from cache (0.74s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.82.0 (0.80s)
Fetching https://github.com/apple/swift-collections.git from cache
Fetching https://github.com/apple/swift-system.git from cache
Fetching https://github.com/apple/swift-atomics.git from cache
Fetched https://github.com/apple/swift-system.git from cache (0.48s)
Fetched https://github.com/apple/swift-atomics.git from cache (0.51s)
Fetched https://github.com/apple/swift-collections.git from cache (0.52s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.2.0 (0.58s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.4.2 (0.03s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.1.4 (0.03s)
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.1.4
Creating working copy for https://github.com/apple/swift-nio.git
Working copy of https://github.com/apple/swift-nio.git resolved at 2.82.0
Creating working copy for https://github.com/vapor-community/wkhtmltopdf.git
Working copy of https://github.com/vapor-community/wkhtmltopdf.git resolved at main (5db6037)
Creating working copy for https://github.com/apple/swift-atomics.git
Working copy of https://github.com/apple/swift-atomics.git resolved at 1.2.0
Creating working copy for https://github.com/apple/swift-system.git
Working copy of https://github.com/apple/swift-system.git resolved at 1.4.2
warning: '.resolve-product-dependencies': dependency 'wkhtmltopdf' is not used by any target
Found 1 product dependencies
  - swift-nio
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/vapor-community/wkhtmltopdf.git
https://github.com/vapor-community/wkhtmltopdf.git
{
  "dependencies" : [
    {
      "identity" : "swift-nio",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.13.1",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-nio.git"
    }
  ],
  "manifest_display_name" : "wkhtmltopdf",
  "name" : "wkhtmltopdf",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "wkhtmltopdf",
      "targets" : [
        "wkhtmltopdf"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "wkhtmltopdfTests",
      "module_type" : "SwiftTarget",
      "name" : "wkhtmltopdfTests",
      "path" : "Tests/wkhtmltopdfTests",
      "sources" : [
        "wkhtmltopdfTests.swift"
      ],
      "target_dependencies" : [
        "wkhtmltopdf"
      ],
      "type" : "test"
    },
    {
      "c99name" : "wkhtmltopdf",
      "module_type" : "SwiftTarget",
      "name" : "wkhtmltopdf",
      "path" : "Sources/wkhtmltopdf",
      "product_dependencies" : [
        "NIO"
      ],
      "product_memberships" : [
        "wkhtmltopdf"
      ],
      "sources" : [
        "Document+Generate.swift",
        "Document.swift",
        "Page.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/22] Write sources
[9/22] Copying PrivacyInfo.xcprivacy
[9/22] Write sources
[11/22] Compiling CNIOWindows shim.c
[12/22] Write sources
[13/22] Compiling CNIOWindows WSAStartup.c
[14/22] Compiling CNIOWASI CNIOWASI.c
[15/22] Compiling CNIOLinux shim.c
[15/22] Compiling CNIOLinux liburing_shims.c
[17/22] Write swift-version-2F0A5646E1D333AE.txt
[18/22] Compiling _AtomicsShims.c
[19/65] Compiling CNIODarwin shim.c
[21/65] Compiling Atomics AtomicMemoryOrderings.swift
[22/65] Compiling Atomics DoubleWord.swift
[23/65] Compiling InternalCollectionsUtilities UnsafeBufferPointer+Extras.swift
[24/66] Compiling Atomics AtomicOptionalWrappable.swift
[25/66] Compiling Atomics AtomicReference.swift
[26/66] Compiling Atomics ManagedAtomic.swift
[27/66] Compiling Atomics ManagedAtomicLazyReference.swift
[28/66] Emitting module InternalCollectionsUtilities
[29/66] Compiling _NIOBase64 Base64.swift
[30/66] Emitting module _NIOBase64
[31/66] Compiling InternalCollectionsUtilities UnsafeMutableBufferPointer+Extras.swift
[32/66] Compiling Atomics UnsafeAtomic.swift
[33/66] Compiling Atomics UnsafeAtomicLazyReference.swift
[36/68] Compiling Atomics AtomicStorage.swift
[37/68] Compiling Atomics AtomicValue.swift
[40/68] Compiling Atomics OptionalRawRepresentable.swift
[41/68] Compiling Atomics RawRepresentable.swift
[42/68] Compiling Atomics Primitives.shims.swift
[43/68] Compiling Atomics AtomicInteger.swift
[46/68] Compiling Atomics AtomicBool.swift
[47/68] Compiling Atomics IntegerConformances.swift
[50/68] Compiling Atomics PointerConformances.swift
[51/68] Compiling Atomics Primitives.native.swift
[56/68] Compiling Atomics IntegerOperations.swift
[57/68] Compiling Atomics Unmanaged extensions.swift
[62/84] Compiling DequeModule _DequeBufferHeader.swift
[63/84] Compiling DequeModule _DequeSlot.swift
[64/84] Compiling DequeModule _DequeBuffer.swift
[65/84] Emitting module Atomics
[66/85] Emitting module _NIODataStructures
[67/85] Compiling _NIODataStructures Heap.swift
[68/85] Compiling _NIODataStructures PriorityQueue.swift
[69/85] Compiling _NIODataStructures _TinyArray.swift
[70/85] Compiling DequeModule _UnsafeWrappedBuffer.swift
[71/85] Compiling DequeModule Deque+Testing.swift
[72/85] Compiling DequeModule Deque._Storage.swift
[73/85] Compiling DequeModule Deque+Equatable.swift
[74/85] Compiling DequeModule Deque+ExpressibleByArrayLiteral.swift
[75/85] Compiling DequeModule Deque._UnsafeHandle.swift
[76/85] Compiling DequeModule Deque.swift
[77/85] Compiling DequeModule Deque+Extras.swift
[78/85] Compiling DequeModule Deque+Hashable.swift
[79/85] Compiling DequeModule Deque+CustomReflectable.swift
[80/85] Compiling DequeModule Deque+Descriptions.swift
[80/85] Compiling c-nioatomics.c
[82/85] Compiling DequeModule Deque+Codable.swift
[83/85] Compiling DequeModule Deque+Collection.swift
[84/85] Emitting module DequeModule
[84/85] Compiling c-atomics.c
[86/91] Compiling NIOConcurrencyHelpers lock.swift
[87/91] Compiling NIOConcurrencyHelpers NIOLock.swift
[88/91] Emitting module NIOConcurrencyHelpers
[89/91] Compiling NIOConcurrencyHelpers atomics.swift
[90/91] Compiling NIOConcurrencyHelpers NIOLockedValueBox.swift
[91/91] Compiling NIOConcurrencyHelpers NIOAtomic.swift
[92/152] Compiling NIOCore GlobalSingletons.swift
[93/152] Compiling NIOCore IO.swift
[94/152] Compiling NIOCore IOData.swift
[95/152] Compiling NIOCore IPProtocol.swift
[96/152] Compiling NIOCore IntegerBitPacking.swift
[97/152] Compiling NIOCore IntegerTypes.swift
[98/158] Compiling NIOCore AddressedEnvelope.swift
[99/158] Compiling NIOCore AsyncAwaitSupport.swift
[100/158] Compiling NIOCore AsyncChannel.swift
[101/158] Compiling NIOCore AsyncChannelHandler.swift
[102/158] Compiling NIOCore AsyncChannelInboundStream.swift
[103/158] Compiling NIOCore AsyncChannelOutboundWriter.swift
[104/158] Compiling NIOCore NIOAsyncSequenceProducer.swift
[105/158] Compiling NIOCore SocketOptionProvider.swift
[106/158] Compiling NIOCore SystemCallHelpers.swift
[107/158] Compiling NIOCore TimeAmount+Duration.swift
[108/158] Compiling NIOCore TypeAssistedChannelHandler.swift
[109/158] Compiling NIOCore UniversalBootstrapSupport.swift
[110/158] Compiling NIOCore Utilities.swift
[111/158] Compiling NIOCore EventLoopFuture+AssumeIsolated.swift
[112/158] Compiling NIOCore EventLoopFuture+Deprecated.swift
[113/158] Compiling NIOCore EventLoopFuture+WithEventLoop.swift
[114/158] Compiling NIOCore EventLoopFuture.swift
[115/158] Compiling NIOCore FileDescriptor.swift
[116/158] Compiling NIOCore FileHandle.swift
[117/158] Compiling NIOCore FileRegion.swift
[118/158] Compiling NIOCore Interfaces.swift
[119/158] Compiling NIOCore Linux.swift
[120/158] Compiling NIOCore MarkedCircularBuffer.swift
[121/158] Compiling NIOCore MulticastChannel.swift
[122/158] Compiling NIOCore NIOAny.swift
[123/158] Compiling NIOCore NIOCloseOnErrorHandler.swift
[124/158] Compiling NIOCore Codec.swift
[125/158] Compiling NIOCore ConvenienceOptionSupport.swift
[126/158] Compiling NIOCore DeadChannel.swift
[127/158] Compiling NIOCore DispatchQueue+WithFuture.swift
[128/158] Compiling NIOCore EventLoop+Deprecated.swift
[129/158] Compiling NIOCore EventLoop+SerialExecutor.swift
[130/158] Compiling NIOCore EventLoop.swift
[131/158] Compiling NIOCore Channel.swift
[132/158] Compiling NIOCore ChannelHandler.swift
[133/158] Compiling NIOCore ChannelHandlers.swift
[134/158] Compiling NIOCore ChannelInvoker.swift
[135/158] Compiling NIOCore ChannelOption.swift
[136/158] Compiling NIOCore ChannelPipeline.swift
[137/158] Compiling NIOCore CircularBuffer.swift
[138/158] Compiling NIOCore NIOLoopBound.swift
[139/158] Compiling NIOCore NIOScheduledCallback.swift
[140/158] Compiling NIOCore NIOSendable.swift
[141/158] Compiling NIOCore RecvByteBufferAllocator.swift
[142/158] Compiling NIOCore SingleStepByteToMessageDecoder.swift
[143/158] Compiling NIOCore SocketAddresses.swift
[144/158] Compiling NIOCore NIOAsyncSequenceProducerStrategies.swift
[145/158] Compiling NIOCore NIOAsyncWriter.swift
[146/158] Compiling NIOCore NIOThrowingAsyncSequenceProducer.swift
[147/158] Compiling NIOCore BSDSocketAPI.swift
[148/158] Compiling NIOCore ByteBuffer-aux.swift
[149/158] Compiling NIOCore ByteBuffer-binaryEncodedLengthPrefix.swift
[150/158] Compiling NIOCore ByteBuffer-conversions.swift
[151/158] Compiling NIOCore ByteBuffer-core.swift
[152/158] Compiling NIOCore ByteBuffer-hex.swift
[153/158] Compiling NIOCore ByteBuffer-int.swift
[154/158] Compiling NIOCore ByteBuffer-lengthPrefix.swift
[155/158] Compiling NIOCore ByteBuffer-multi-int.swift
[156/158] Compiling NIOCore ByteBuffer-quicBinaryEncodingStrategy.swift
[157/158] Compiling NIOCore ByteBuffer-views.swift
[158/158] Emitting module NIOCore
[159/211] Compiling NIOEmbedded AsyncTestingEventLoop.swift
[160/211] Compiling NIOEmbedded AsyncTestingChannel.swift
[161/211] Emitting module NIOEmbedded
[162/211] Compiling NIOEmbedded Embedded.swift
[163/211] Compiling NIOPosix SocketProtocols.swift
[164/211] Compiling NIOPosix System.swift
[165/211] Compiling NIOPosix Thread.swift
[166/211] Compiling NIOPosix ThreadPosix.swift
[167/211] Compiling NIOPosix ThreadWindows.swift
[168/211] Compiling NIOPosix PooledRecvBufferAllocator.swift
[169/211] Compiling NIOPosix PosixSingletons+ConcurrencyTakeOver.swift
[170/211] Compiling NIOPosix PosixSingletons.swift
[171/211] Compiling NIOPosix RawSocketBootstrap.swift
[172/211] Compiling NIOPosix Resolver.swift
[173/216] Compiling NIOPosix LinuxCPUSet.swift
[174/216] Compiling NIOPosix LinuxUring.swift
[175/216] Compiling NIOPosix MultiThreadedEventLoopGroup.swift
[176/216] Compiling NIOPosix NIOThreadPool.swift
[177/216] Compiling NIOPosix NonBlockingFileIO.swift
[178/216] Compiling NIOPosix GetaddrinfoResolver.swift
[179/216] Compiling NIOPosix HappyEyeballs.swift
[180/216] Compiling NIOPosix IO.swift
[181/216] Compiling NIOPosix IntegerBitPacking.swift
[182/216] Compiling NIOPosix IntegerTypes.swift
[183/216] Compiling NIOPosix Linux.swift
[184/216] Compiling NIOPosix SelectorKqueue.swift
[185/216] Compiling NIOPosix SelectorUring.swift
[186/216] Compiling NIOPosix ServerSocket.swift
[187/216] Compiling NIOPosix Socket.swift
[188/216] Compiling NIOPosix SocketChannel.swift
[189/216] Emitting module NIOPosix
[190/216] Compiling NIOPosix BaseStreamSocketChannel.swift
[191/216] Compiling NIOPosix Bootstrap.swift
[192/216] Compiling NIOPosix ControlMessage.swift
[193/216] Compiling NIOPosix DatagramVectorReadManager.swift
[194/216] Compiling NIOPosix Errors+Any.swift
[195/216] Compiling NIOPosix FileDescriptor.swift
[196/216] Compiling NIOPosix Selectable.swift
[197/216] Compiling NIOPosix SelectableChannel.swift
[198/216] Compiling NIOPosix SelectableEventLoop.swift
[199/216] Compiling NIOPosix SelectorEpoll.swift
[200/216] Compiling NIOPosix SelectorGeneric.swift
[201/216] Compiling NIOPosix BSDSocketAPICommon.swift
[202/216] Compiling NIOPosix BSDSocketAPIPosix.swift
[203/216] Compiling NIOPosix BSDSocketAPIWindows.swift
[204/216] Compiling NIOPosix BaseSocket.swift
[205/216] Compiling NIOPosix BaseSocketChannel+SocketOptionProvider.swift
[206/216] Compiling NIOPosix BaseSocketChannel.swift
[207/216] Compiling NIOPosix PendingDatagramWritesManager.swift
[208/216] Compiling NIOPosix PendingWritesManager.swift
[209/216] Compiling NIOPosix PipeChannel.swift
[210/216] Compiling NIOPosix PipePair.swift
[211/216] Compiling NIOPosix Pool.swift
[212/216] Compiling NIOPosix UnsafeTransfer.swift
[213/216] Compiling NIOPosix Utilities.swift
[214/216] Compiling NIOPosix VsockAddress.swift
[215/216] Compiling NIOPosix VsockChannelEvents.swift
[216/216] Compiling NIOPosix resource_bundle_accessor.swift
[217/218] Compiling NIO Exports.swift
[218/218] Emitting module NIO
[219/222] Compiling wkhtmltopdf Page.swift
[220/222] Emitting module wkhtmltopdf
[221/222] Compiling wkhtmltopdf Document.swift
[222/222] Compiling wkhtmltopdf Document+Generate.swift
/Users/admin/builder/spi-builder-workspace/Sources/wkhtmltopdf/Document+Generate.swift:16:27: warning: capture of 'self' with non-sendable type 'Document' in a '@Sendable' closure
14 |             // Save input pages to temp files, and build up args to wkhtmltopdf
15 |             var wkArgs: [String] = [
16 |                 "--zoom", self.zoom,
   |                           `- warning: capture of 'self' with non-sendable type 'Document' in a '@Sendable' closure
17 |                 "--quiet",
18 |                 "-s", self.paperSize,
/Users/admin/builder/spi-builder-workspace/Sources/wkhtmltopdf/Document.swift:1:14: note: class 'Document' does not conform to the 'Sendable' protocol
 1 | public class Document {
   |              `- note: class 'Document' does not conform to the 'Sendable' protocol
 2 |
 3 |     let zoom: String
Build complete! (11.58s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-nio",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.13.1",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-nio.git"
    }
  ],
  "manifest_display_name" : "wkhtmltopdf",
  "name" : "wkhtmltopdf",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "wkhtmltopdf",
      "targets" : [
        "wkhtmltopdf"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "wkhtmltopdfTests",
      "module_type" : "SwiftTarget",
      "name" : "wkhtmltopdfTests",
      "path" : "Tests/wkhtmltopdfTests",
      "sources" : [
        "wkhtmltopdfTests.swift"
      ],
      "target_dependencies" : [
        "wkhtmltopdf"
      ],
      "type" : "test"
    },
    {
      "c99name" : "wkhtmltopdf",
      "module_type" : "SwiftTarget",
      "name" : "wkhtmltopdf",
      "path" : "Sources/wkhtmltopdf",
      "product_dependencies" : [
        "NIO"
      ],
      "product_memberships" : [
        "wkhtmltopdf"
      ],
      "sources" : [
        "Document+Generate.swift",
        "Document.swift",
        "Page.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Done.