Build Information
Successful build of PodcastFeedMaker, reference main (6a1fa8), with Swift 6.4 for Linux on 25 Sep 2026 10:19:41 UTC.
Swift 6 data race errors: 0
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344844-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/atelier-socle/podcast-feed-maker.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/atelier-socle/podcast-feed-maker
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 6a1fa81 chore: align platform-builds and Linux release build on the 26.4 toolchain
Cloned https://github.com/atelier-socle/podcast-feed-maker.git
Revision (git rev-parse @):
6a1fa814f4459ec515d510fc6fb1711d4b38474e
SUCCESS checkout https://github.com/atelier-socle/podcast-feed-maker.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.4
Building package at path: $PWD
https://github.com/atelier-socle/podcast-feed-maker.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344844-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:c77fcce225e223ac0fafed844619173fc6de8d62dd560eeb28db3182af6a282b
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest
Fetching https://github.com/swiftlang/swift-docc-plugin
Fetching https://github.com/apple/swift-argument-parser
[1/2345] Fetching swift-docc-plugin
[2346/21286] Fetching swift-docc-plugin, swift-argument-parser
Fetched https://github.com/swiftlang/swift-docc-plugin (0.57s)
[190/18941] Fetching swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser (0.80s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.5.0 (1.91s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3830] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit (0.62s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.86s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.8.2 (0.18s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.5.0
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.8.2
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Building for debugging...
[Constructing description]
[Planning deferred tasks]
[50 / 84] PodcastFeedMaker
[57 / 93] PodcastFeedMaker
[68 / 93] PodcastFeedMaker-product
[69 / 94] PodcastFeedMaker
[73 / 95]
[80 / 104] ArgumentParser
[81 / 104] ArgumentParser
[82 / 104] ArgumentParser
[88 / 105] PodcastFeedCommands
[92 / 114] PodcastFeedCommands
[93 / 114] PodcastFeedCommands
[96 / 114] PodcastFeedCommands
[101 / 114] podcastfeed-product
[102 / 115] podcastfeed-product
[106 / 116]
[112 / 119] PodcastFeedCommands
[116 / 120] PodcastFeedCommands
[121 / 121] podcastfeed-product
Build complete! (10.70 secs)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-docc-plugin",
"requirement" : {
"range" : [
{
"lower_bound" : "1.4.3",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/swiftlang/swift-docc-plugin"
},
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.7.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser"
}
],
"manifest_display_name" : "PodcastFeedMaker",
"name" : "PodcastFeedMaker",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "16.0"
},
{
"name" : "macos",
"version" : "13.0"
},
{
"name" : "tvos",
"version" : "16.0"
},
{
"name" : "watchos",
"version" : "9.0"
},
{
"name" : "visionos",
"version" : "1.0"
},
{
"name" : "maccatalyst",
"version" : "16.0"
}
],
"products" : [
{
"name" : "PodcastFeedMaker",
"targets" : [
"PodcastFeedMaker"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "PodcastFeedCommands",
"targets" : [
"PodcastFeedCommands"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "podcastfeed",
"targets" : [
"PodcastFeedCLI"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "PodcastFeedMakerTests",
"module_type" : "SwiftTarget",
"name" : "PodcastFeedMakerTests",
"path" : "Tests/PodcastFeedMakerTests",
"resources" : [
{
"path" : "/host/spi-builder-workspace/Tests/PodcastFeedMakerTests/Fixtures",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"AuditTests/AuditCategoryTests.swift",
"AuditTests/AuditComparisonTests.swift",
"AuditTests/AuditEdgeCaseTests.swift",
"AuditTests/AuditRecommendationTests.swift",
"AuditTests/AuditScoringTests.swift",
"AuditTests/FeedAuditorTests.swift",
"AuditTests/PlatformCompatibilityTests.swift",
"BuilderTests/BuilderTests.swift",
"BuilderTests/PSP1HelperTests.swift",
"BuilderTests/PodcastFeedBuilderTests.swift",
"EngineTests/FeedDiffEdgeCaseTests.swift",
"EngineTests/FeedDiffTests.swift",
"EngineTests/MediaTypeVerificationAdvancedTests.swift",
"EngineTests/MediaTypeVerificationTests.swift",
"EngineTests/MockURLProtocol.swift",
"EngineTests/NetworkValidatorAsyncTests.swift",
"EngineTests/NetworkValidatorTests.swift",
"EngineTests/PodcastFeedEngineTests.swift",
"FeedValidatorTests.swift",
"GeneratorTests/FeedGeneratorOutputTests.swift",
"GeneratorTests/FeedGeneratorPodcastNSTests.swift",
"GeneratorTests/FeedGeneratorTests.swift",
"GeneratorTests/GeneratorErrorTests.swift",
"GeneratorTests/NamespaceResolverTests.swift",
"GeneratorTests/StreamingFeedGeneratorTests.swift",
"GeneratorTests/XMLBuilderTests.swift",
"Helpers/CleanSpecialCharsTests.swift",
"Helpers/HelpersTests.swift",
"Helpers/RcfPubDateTests.swift",
"Helpers/TestURL.swift",
"IntegrationTests/IntegrationTests.swift",
"Mocks/MockFeed.swift",
"ModelTests/JSONChapterListTests.swift",
"ModelTests/MIMETypeVideoTests.swift",
"ModelTests/SpecComplianceFixExtendedTests.swift",
"ModelTests/SpecComplianceFixTests.swift",
"ModelTests/SpecGapTests.swift",
"NamespaceTests.swift",
"OPMLTests/OPMLDocumentTests.swift",
"OPMLTests/OPMLEdgeCaseTests.swift",
"OPMLTests/OPMLFeedConverterTests.swift",
"OPMLTests/OPMLGeneratorTests.swift",
"OPMLTests/OPMLParserTests.swift",
"OPMLTests/OPMLRoundTripTests.swift",
"OPMLTests/OPMLValidatorTests.swift",
"ParserTests/DateParserTests.swift",
"ParserTests/FeedParserItemTests.swift",
"ParserTests/FeedParserPodcastItemTests.swift",
"ParserTests/FeedParserTests.swift",
"ParserTests/ParserErrorTests.swift",
"ParserTests/RoundTripTests.swift",
"ParserTests/StreamingFeedParserTests.swift",
"PodcastFeedFileTests.swift",
"PodcastFeedMakerTests.swift",
"RoundTripTests/RoundTripFidelityTests.swift",
"RoundTripTests/VideoRoundTripTests.swift",
"ShowcaseTests/AuditShowcaseIntegrationTests.swift",
"ShowcaseTests/AuditShowcaseTests.swift",
"ShowcaseTests/BuilderShowcaseDSLTests.swift",
"ShowcaseTests/BuilderShowcaseFactoryTests.swift",
"ShowcaseTests/EngineShowcaseDiffWorkflowTests.swift",
"ShowcaseTests/EngineShowcaseGenerateParseTests.swift",
"ShowcaseTests/GeneratorShowcaseFeedTests.swift",
"ShowcaseTests/GeneratorShowcasePodcastNSTests.swift",
"ShowcaseTests/GeneratorShowcaseStreamTests.swift",
"ShowcaseTests/GeneratorShowcaseXMLTests.swift",
"ShowcaseTests/ModelShowcaseAtomDCTests.swift",
"ShowcaseTests/ModelShowcaseContainerTests.swift",
"ShowcaseTests/ModelShowcaseITunesTests.swift",
"ShowcaseTests/ModelShowcasePodcastNS4ExtTests.swift",
"ShowcaseTests/ModelShowcasePodcastNS4Tests.swift",
"ShowcaseTests/ModelShowcasePodcastNSTests.swift",
"ShowcaseTests/ModelShowcaseRSSItemTests.swift",
"ShowcaseTests/ModelShowcaseRSSTests.swift",
"ShowcaseTests/OPMLShowcaseConverterTests.swift",
"ShowcaseTests/OPMLShowcaseGeneratorTests.swift",
"ShowcaseTests/OPMLShowcaseModelTests.swift",
"ShowcaseTests/OPMLShowcaseParserTests.swift",
"ShowcaseTests/OPMLShowcaseRoundTripValidatorTests.swift",
"ShowcaseTests/ParserShowcaseDateITunesTests.swift",
"ShowcaseTests/ParserShowcaseMalformedStreamTests.swift",
"ShowcaseTests/ParserShowcaseParserTests.swift",
"ShowcaseTests/RoundTripShowcaseCoreTests.swift",
"ShowcaseTests/RoundTripShowcaseDiffTests.swift",
"ShowcaseTests/RoundTripShowcaseFidelityTests.swift",
"ShowcaseTests/TemplateShowcaseModelTests.swift",
"ShowcaseTests/TemplateShowcaseValidatorTests.swift",
"ShowcaseTests/ValidatorShowcasePlatformTests.swift",
"ShowcaseTests/ValidatorShowcaseTests.swift",
"ShowcaseTests/VideoHLSShowcaseTests.swift",
"Tags/Atom/AtomLinkTests.swift",
"Tags/Podcast/PodcastChaptersTests.swift",
"Tags/Podcast/PodcastFundingTests.swift",
"Tags/Podcast/PodcastGuidTests.swift",
"Tags/Podcast/PodcastLicenseTests.swift",
"Tags/Podcast/PodcastLocationTests.swift",
"Tags/Podcast/PodcastLockedTests.swift",
"Tags/Podcast/PodcastSoundbiteTests.swift",
"Tags/Podcast/PodcastTextFieldTests.swift",
"Tags/Podcast/PodcastTranscriptTests.swift",
"Tags/RSS/ChannelNamespaceTests.swift",
"Tags/RSS/ChannelTests.swift",
"Tags/RSS/CopyrightTests.swift",
"Tags/RSS/DescriptionTests.swift",
"Tags/RSS/EnclosureTests.swift",
"Tags/RSS/FeedTests.swift",
"Tags/RSS/GeneratorTests.swift",
"Tags/RSS/GuidTests.swift",
"Tags/RSS/ImageTests.swift",
"Tags/RSS/ItemNamespaceTests.swift",
"Tags/RSS/ItemTests.swift",
"Tags/RSS/LanguageTests.swift",
"Tags/RSS/LastBuildDateTests.swift",
"Tags/RSS/LinkTests.swift",
"Tags/RSS/PubDateTests.swift",
"Tags/RSS/TimeToLiveTests.swift",
"Tags/RSS/TitleTests.swift",
"Tags/iTunes/ITunesCategorySubcategoryTests.swift",
"Tags/iTunes/ITunesOwnerTests.swift",
"Tags/iTunes/iTunesAuthorTests.swift",
"Tags/iTunes/iTunesBlockTests.swift",
"Tags/iTunes/iTunesCategoryTests.swift",
"Tags/iTunes/iTunesChannelTypeTests.swift",
"Tags/iTunes/iTunesCompleteTests.swift",
"Tags/iTunes/iTunesDurationTests.swift",
"Tags/iTunes/iTunesEpisodeTests.swift",
"Tags/iTunes/iTunesEpisodeTypeTests.swift",
"Tags/iTunes/iTunesExplicitTests.swift",
"Tags/iTunes/iTunesImageTests.swift",
"Tags/iTunes/iTunesKeywordsTests.swift",
"Tags/iTunes/iTunesNewFeedUrlTests.swift",
"Tags/iTunes/iTunesSeasonTests.swift",
"Tags/iTunes/iTunesSubtitleTests.swift",
"Tags/iTunes/iTunesSummaryTests.swift",
"Tags/iTunes/iTunesTitleTests.swift",
"Tags/iTunes/iTunesVerifyTests.swift",
"TemplateTests/BuiltInTemplateTests.swift",
"TemplateTests/ComposedTemplateTests.swift",
"TemplateTests/ExpertiseLevelTests.swift",
"TemplateTests/FeedTagTests.swift",
"TemplateTests/PlatformPresetTests.swift",
"TemplateTests/TemplateCompositionTests.swift",
"TemplateTests/TemplateFeedFactoryTests.swift",
"TemplateTests/TemplateRoundTripTests.swift",
"TemplateTests/TemplateValidationResultTests.swift",
"TemplateTests/TemplateValidatorTests.swift",
"ValidatorTests/AmazonValidationTests.swift",
"ValidatorTests/AppleValidationTests.swift",
"ValidatorTests/CrossCuttingValidationTests.swift",
"ValidatorTests/CustomValidationRuleTests.swift",
"ValidatorTests/PSP1ValidationTests.swift",
"ValidatorTests/PodcastIndexValidationTests.swift",
"ValidatorTests/SpecComplianceV2Tests.swift",
"ValidatorTests/SpotifyValidationTests.swift",
"ValidatorTests/VideoValidationTests.swift"
],
"target_dependencies" : [
"PodcastFeedMaker"
],
"type" : "test"
},
{
"c99name" : "PodcastFeedMaker",
"module_type" : "SwiftTarget",
"name" : "PodcastFeedMaker",
"path" : "Sources/PodcastFeedMaker",
"product_memberships" : [
"PodcastFeedMaker",
"PodcastFeedCommands",
"podcastfeed"
],
"sources" : [
"Audit/AuditCategory.swift",
"Audit/AuditComparison.swift",
"Audit/AuditCriterion.swift",
"Audit/AuditGrade.swift",
"Audit/AuditRecommendation.swift",
"Audit/AuditReport.swift",
"Audit/AuditScoring+ComplianceAccessDiscover.swift",
"Audit/AuditScoring+MetadataEpisodes.swift",
"Audit/AuditScoring.swift",
"Audit/FeedAuditor.swift",
"Audit/PlatformCompatibility.swift",
"Builders/ChannelBuilder.swift",
"Builders/ItemBuilder.swift",
"Builders/PSP1Helper.swift",
"Builders/PodcastFeedBuilder.swift",
"Engine/FeedDiff.swift",
"Engine/ImageDimensionParser.swift",
"Engine/MediaSignature.swift",
"Engine/NetworkValidator+MediaVerification.swift",
"Engine/NetworkValidator.swift",
"Engine/PodcastFeedEngine.swift",
"Generator/FeedGenerator+Podcast.swift",
"Generator/FeedGenerator+RSS.swift",
"Generator/FeedGenerator.swift",
"Generator/GeneratorError.swift",
"Generator/NamespaceResolver.swift",
"Generator/StreamingFeedGenerator.swift",
"Generator/XMLBuilder.swift",
"Model/AlternateEnclosure.swift",
"Model/AtomLink.swift",
"Model/Channel.swift",
"Model/ChaptersLink.swift",
"Model/ContentEncoded.swift",
"Model/DublinCore.swift",
"Model/Enclosure.swift",
"Model/Funding.swift",
"Model/GUID.swift",
"Model/ITunesCategory.swift",
"Model/ITunesOwner.swift",
"Model/Item.swift",
"Model/JSONChapterList.swift",
"Model/Locked.swift",
"Model/PodcastBlock.swift",
"Model/PodcastChat.swift",
"Model/PodcastEpisode.swift",
"Model/PodcastFeed.swift",
"Model/PodcastGuid.swift",
"Model/PodcastImage.swift",
"Model/PodcastImages.swift",
"Model/PodcastIntegrity.swift",
"Model/PodcastLicense.swift",
"Model/PodcastLiveItem.swift",
"Model/PodcastLocation.swift",
"Model/PodcastMedium.swift",
"Model/PodcastNamespace.swift",
"Model/PodcastPerson.swift",
"Model/PodcastPublisher.swift",
"Model/PodcastSeason.swift",
"Model/PodcastSource.swift",
"Model/PodcastTxt.swift",
"Model/PodcastValue.swift",
"Model/PodloveChapter.swift",
"Model/Podroll.swift",
"Model/RSSCategory.swift",
"Model/RSSCloud.swift",
"Model/RSSImage.swift",
"Model/RSSSource.swift",
"Model/RSSTextInput.swift",
"Model/RemoteItem.swift",
"Model/SkipSchedule.swift",
"Model/SocialInteract.swift",
"Model/Soundbite.swift",
"Model/Trailer.swift",
"Model/Transcript.swift",
"Model/UnknownElement.swift",
"Model/UpdateFrequency.swift",
"Model/ValidationPlatform.swift",
"OPML/OPMLDocument.swift",
"OPML/OPMLFeedConverter.swift",
"OPML/OPMLGenerator.swift",
"OPML/OPMLHead.swift",
"OPML/OPMLOutline.swift",
"OPML/OPMLParser.swift",
"OPML/OPMLValidator.swift",
"Parser/DateParser.swift",
"Parser/FeedParser.swift",
"Parser/FeedParserDelegate+Helpers.swift",
"Parser/FeedParserDelegate+Podcast.swift",
"Parser/FeedParserDelegate+RSS.swift",
"Parser/FeedParserDelegate+XML.swift",
"Parser/FeedParserDelegate.swift",
"Parser/ParserError.swift",
"Parser/StreamingFeedParser.swift",
"PodcastFeedMaker.swift",
"Templates/AdvancedTemplate.swift",
"Templates/BasicTemplate.swift",
"Templates/ComposedTemplate.swift",
"Templates/ExpertTemplate.swift",
"Templates/ExpertiseLevel.swift",
"Templates/FeedTag.swift",
"Templates/FeedTemplate.swift",
"Templates/PlatformPreset.swift",
"Templates/StandardTemplate.swift",
"Templates/TemplateComposition.swift",
"Templates/TemplateFeedFactory.swift",
"Templates/TemplateValidationResult.swift",
"Templates/TemplateValidator.swift",
"Validator/AmazonValidation.swift",
"Validator/AppleValidation.swift",
"Validator/CrossCuttingValidation.swift",
"Validator/FeedValidator.swift",
"Validator/PSP1Validation.swift",
"Validator/PodcastIndexValidation.swift",
"Validator/SpotifyValidation.swift",
"Validator/ValidationResult.swift",
"Validator/ValidationRule.swift"
],
"type" : "library"
},
{
"c99name" : "PodcastFeedCommandsTests",
"module_type" : "SwiftTarget",
"name" : "PodcastFeedCommandsTests",
"path" : "Tests/PodcastFeedCommandsTests",
"sources" : [
"AddEpisodeCommandTests.swift",
"AuditCommandTests.swift",
"ChaptersCommandTests.swift",
"CommandIntegrationFormatterTests.swift",
"CommandIntegrationGenerateConvertTests.swift",
"CommandIntegrationLintValidateTests.swift",
"ConvertCommandTests.swift",
"DiffCommandTests.swift",
"EpisodesCommandTests.swift",
"GenerateCommandTests.swift",
"Helpers/ColorOutputTests.swift",
"Helpers/FeedLoaderTests.swift",
"Helpers/InputResolverTests.swift",
"Helpers/OutputFormatterTests.swift",
"Helpers/TestURL.swift",
"InitCommandTests.swift",
"LintCommandTests.swift",
"OPMLExportCommandTests.swift",
"OPMLImportCommandTests.swift",
"ReadCommandTests.swift",
"ShowcaseTests/CLIShowcaseAddEpisodeTemplateTests.swift",
"ShowcaseTests/CLIShowcaseAuditTests.swift",
"ShowcaseTests/CLIShowcaseDiffGenerateConvertTests.swift",
"ShowcaseTests/CLIShowcaseInitLintValidateTests.swift",
"ShowcaseTests/CLIShowcaseReadEpisodesChaptersTests.swift",
"TemplateIntegrationTests.swift",
"ValidateCommandTests.swift"
],
"target_dependencies" : [
"PodcastFeedCommands",
"PodcastFeedMaker"
],
"type" : "test"
},
{
"c99name" : "PodcastFeedCommands",
"module_type" : "SwiftTarget",
"name" : "PodcastFeedCommands",
"path" : "Sources/PodcastFeedCommands",
"product_dependencies" : [
"ArgumentParser"
],
"product_memberships" : [
"PodcastFeedCommands",
"podcastfeed"
],
"sources" : [
"AddEpisodeCommand.swift",
"AuditCommand.swift",
"ChaptersCommand.swift",
"ConvertCommand.swift",
"DiffCommand.swift",
"EpisodesCommand.swift",
"GenerateCommand.swift",
"Helpers/ColorOutput.swift",
"Helpers/ExitCodes.swift",
"Helpers/FeedLoader.swift",
"Helpers/InputResolver.swift",
"Helpers/OutputFormatter.swift",
"Helpers/TemplateName.swift",
"InitCommand.swift",
"LintCommand.swift",
"OPMLExportCommand.swift",
"OPMLImportCommand.swift",
"PodcastFeedCommand.swift",
"ReadCommand.swift",
"ValidateCommand.swift"
],
"target_dependencies" : [
"PodcastFeedMaker"
],
"type" : "library"
},
{
"c99name" : "PodcastFeedCLI",
"module_type" : "SwiftTarget",
"name" : "PodcastFeedCLI",
"path" : "Sources/PodcastFeedCLI",
"product_memberships" : [
"podcastfeed"
],
"sources" : [
"PodcastFeedCLI.swift"
],
"target_dependencies" : [
"PodcastFeedCommands"
],
"type" : "executable"
}
],
"tools_version" : "6.2"
}
basic-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:c77fcce225e223ac0fafed844619173fc6de8d62dd560eeb28db3182af6a282b
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest
Done.