jpsim / Yams

A Sweet and Swifty YAML parser.
https://jpsim.com/Yams
MIT License
1.11k stars 141 forks source link

Documentation generation fails in Swift Package Index #387

Closed finestructure closed 1 year ago

finestructure commented 1 year ago

I noticed that documentation generation fails in SPI at the moment. The reason is the following section in the package manifest:

https://github.com/jpsim/Yams/blob/4889c132978bc6ad3e80f680011ec3dd4fead90c/Package.swift#L4-L9

We're generating doc with Swift 5.7 which means the plugin is not available to us.

We have a process in place to scan for the docc plugin in the manifest and attach it ourselves if we can't find it. However, that process is pretty simple and basically just greps for the plugin url in the manifest - and in case of this manifest we find one and think the plugin is already available.

The easiest fix would be to remove this bit from the manifest if that's an option. Would you accept a PR to do so? Or do you need the conditional plugin dependency for other reasons?

jpsim commented 1 year ago

The easiest fix would be to remove this bit from the manifest if that's an option. Would you accept a PR to do so? Or do you need the conditional plugin dependency for other reasons?

You can do whatever you like to get this working with SPI, as long as it also passes our CI.

The only reason we have DocC integration is for SPI.

However, there's context as to why the conditions were initially added back in June in https://github.com/jpsim/Yams/pull/354, which is that https://github.com/apple/swift-docc-plugin required Swift 5.6+ and was failing with Swift 5.7 nightlies, and there was no Windows support. Perhaps all of that has been fixed since then?

finestructure commented 1 year ago

From looking at the initial PR it seems the only reason the docc plugin was included because there was a brief window where we required that.

Let me open a PR to remove it and then we can see if it impacts your CI, ok?