Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor RelativePath to allow late stage canonicalization in support of windows #5910

Merged
merged 4 commits into from Apr 17, 2023

Conversation

tomerd
Copy link
Member

@tomerd tomerd commented Nov 17, 2022

motivation: delay canonicalization of relative path to the construction of absolute path from it, to better fit how windows paths work

changes:

  • move RelativePath and AbsolutePath conformance to ExpressibleByStringLiteral and ExpressibleByStringInterpolation to TSC
  • update call sites and tests to use throwing constructor of RelativePath

@tomerd tomerd changed the title refactoring of relative path to allow late stage canonicalization in … refactoring of relative path to allow late stage canonicalization in support of windows Nov 17, 2022
@tomerd tomerd changed the title refactoring of relative path to allow late stage canonicalization in support of windows [wip] refactoring of relative path to allow late stage canonicalization in support of windows Nov 17, 2022
@tomerd tomerd added the WIP Work in progress label Nov 17, 2022
@tomerd
Copy link
Member Author

tomerd commented Nov 17, 2022

companion: apple/swift-tools-support-core#369

@tomerd
Copy link
Member Author

tomerd commented Jan 3, 2023

@compnerd should we rekindle this + the TSC PR so we can support Windows with less patches?

@compnerd
Copy link
Collaborator

compnerd commented Jan 3, 2023

@tomerd yes please! I would like to get this sorted out because it enables the test suite on Windows.

@compnerd
Copy link
Collaborator

@tomerd could you rebase this please?

@tomerd
Copy link
Member Author

tomerd commented Apr 13, 2023

@compnerd this is updated

@tomerd
Copy link
Member Author

tomerd commented Apr 13, 2023

@@ -1832,7 +1833,7 @@ class PackageBuilderTests: XCTestCase {
PackageBuilderTester(manifest, path: "/pkg", in: fs) { _, diagnostics in
diagnostics.check(diagnostic: "target path \'~/foo\' is not supported; it should be relative to package root", severity: .error)
}
}
}*/
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@neonichu @abertelrud to confirm, per our discussion apple/swift-tools-support-core#369 (comment) this is is correct to be removed

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That seems right to me.

@tomerd tomerd changed the title [wip] refactoring of relative path to allow late stage canonicalization in support of windows refactoring of relative path to allow late stage canonicalization in support of windows Apr 13, 2023
@tomerd
Copy link
Member Author

tomerd commented Apr 13, 2023

1 similar comment
@tomerd
Copy link
Member Author

tomerd commented Apr 14, 2023

@tomerd
Copy link
Member Author

tomerd commented Apr 14, 2023

apple/swift-tools-support-core#369

@swift-ci smoke test macOS

@tomerd tomerd changed the title refactoring of relative path to allow late stage canonicalization in support of windows refactor RelativePath to allow late stage canonicalization in support of windows Apr 14, 2023
@compnerd
Copy link
Collaborator

Local run of the test suite:

[1328/1328] Testing BasicsTests.CancellatorTests/testTSCProcess
Test Suite 'Selected tests' started at 2023-04-14 09:38:53.366
Test Suite 'PackageGraphTests' started at 2023-04-14 09:38:53.368
Test Case 'PackageGraphTests.testBasic' started at 2023-04-14 09:38:53.368[error]: target 'Bar' in package 'bar' is outside the package root
S:\SourceCache\swift-project\swift-package-manager\Tests\PackageGraphTests\PackageGraphTests.swift:72: error: PackageGraphTests.testBasic : failed - Found unexpected diagnostics:
- [error]: target 'Bar' in package 'bar' is outside the package rootS:\SourceCache\swift-project\swift-package-manager\Tests\PackageGraphTests\PackageGraphTests.swift:74: error: PackageGraphTests.testBasic : XCTAssertEqual failed: ("["Baz"]") is not equal to ("["Bar", "Baz", "Foo"]") -
S:\SourceCache\swift-project\swift-package-manager\Tests\PackageGraphTests\PackageGraphTests.swift:75: error: PackageGraphTests.testBasic : XCTAssertEqual failed: ("["Baz"]") is not equal to ("["Bar", "Baz", "Foo", "FooDep"]") -S:\SourceCache\swift-project\swift-package-manager\Tests\PackageGraphTests\PackageGraphTests.swift:77: error: PackageGraphTests.testBasic : failed - Target Foo not found
S:\SourceCache\swift-project\swift-package-manager\Tests\PackageGraphTests\PackageGraphTests.swift:78: error: PackageGraphTests.testBasic : failed - Target Bar not foundS:\SourceCache\swift-project\swift-package-manager\Tests\PackageGraphTests\PackageGraphTests.swift:79: error: PackageGraphTests.testBasic : XCTAssertEqual failed: ("["Bar"]") is not equal to ("[]") -
S:\SourceCache\swift-project\swift-package-manager\Tests\PackageGraphTests\PackageGraphTests.swift:82: error: PackageGraphTests.testBasic : XCTUnwrap failed: expected non-nil value of type "ResolvedPackage" -Test Case 'PackageGraphTests.testBasic' failed (0.015 seconds)
Test Suite 'PackageGraphTests' failed at 2023-04-14 09:38:53.383
         Executed 1 test, with 7 failures (0 unexpected) in 0.015 (0.015) secondsTest Suite 'Selected tests' failed at 2023-04-14 09:38:53.383
         Executed 1 test, with 7 failures (0 unexpected) in 0.015 (0.015) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:38:54.774
Test Suite 'ManifestSourceGenerationTests' started at 2023-04-14 09:38:54.776
Test Case 'ManifestSourceGenerationTests.testAdvancedFeatures' started at 2023-04-14 09:38:54.776TSCBasic/Path.swift:974: Assertion failed
Current stack trace:0    (null)                             0x00007ffe874ff220 swift_stdlib_reportFatalErrorInFile + 132
Test Suite 'Selected tests' started at 2023-04-14 09:38:55.621
Test Suite 'ManifestSourceGenerationTests' started at 2023-04-14 09:38:55.624Test Case 'ManifestSourceGenerationTests.testPackageDependencyVariations' started at 2023-04-14 09:38:55.624TSCBasic/Path.swift:974: Assertion failed
Current stack trace:0    (null)                             0x00007ffe874ff220 swift_stdlib_reportFatalErrorInFile + 132
Test Suite 'Selected tests' started at 2023-04-14 09:38:55.620
Test Suite 'ManifestSourceGenerationTests' started at 2023-04-14 09:38:55.621
Test Case 'ManifestSourceGenerationTests.testModuleAliasGeneration' started at 2023-04-14 09:38:55.621TSCBasic/Path.swift:974: Assertion failed
Current stack trace:0    (null)                             0x00007ffe874ff220 swift_stdlib_reportFatalErrorInFile + 132
Test Suite 'Selected tests' started at 2023-04-14 09:38:59.189
Test Suite 'WorkspaceTests' started at 2023-04-14 09:38:59.191
Test Case 'WorkspaceTests.testManifestParseError' started at 2023-04-14 09:38:59.191[debug]: evaluating manifest for 'mypkg' v. unknown
[error]: Invalid manifest (compiled with: ["S:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swiftc.exe", "-L", "S:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\lib\\swift\\pm\\ManifestAPI", "-lPackageDescription", "-sdk", "S:\\Library\\Developer\\Platforms\\Windows.platform\\Developer\\SDKs\\Windows.sdk", "-libc", "MD", "-I", "S:\\Library\\Developer\\Platforms\\Windows.platform\\Developer\\Library\\XCTest-development\\usr\\lib\\swift\\windows", "-I", "S:\\Library\\Developer\\Platforms\\Windows.platform\\Developer\\Library\\XCTest-development\\usr\\lib\\swift\\windows\\x86_64", "-L", "S:\\Library\\Developer\\Platforms\\Windows.platform\\Developer\\Library\\XCTest-development\\usr\\lib\\swift\\windows\\x86_64", "-use-ld=lld", "-swift-version", "4", "-I", "S:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\lib\\swift\\pm\\ManifestAPI", "-package-description-version", "4.0.0", "C:\\Users\\abdulras\\AppData\\Local\\Temp\\TemporaryDirectory.WAvcl4\\manifest.swift", "-o", "C:\\Users\\abdulras\\AppData\\Local\\Temp\\TemporaryDirectory.iyPCyH\\mypkg-manifest.exe"])
error: fatalError
C:\Users\abdulras\AppData\Local\Temp\TemporaryDirectory.WAvcl4\manifest.swift:4:8: error: An error in MyPkg
#error("An error in MyPkg")
       ^~~~~~~~~~~~~~~~~~~
S:\SourceCache\swift-project\swift-package-manager\Tests\WorkspaceTests\WorkspaceTests.swift:245: error: WorkspaceTests.testManifestParseError : XCTAssertTrue failed - unexpected failure matching 'Invalid manifest (compiled with: ["S:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swiftc.exe", "-L", "S:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\lib\\swift\\pm\\ManifestAPI", "-lPackageDescription", "-sdk", "S:\\Library\\Developer\\Platforms\\Windows.platform\\Developer\\SDKs\\Windows.sdk", "-libc", "MD", "-I", "S:\\Library\\Developer\\Platforms\\Windows.platform\\Developer\\Library\\XCTest-development\\usr\\lib\\swift\\windows", "-I", "S:\\Library\\Developer\\Platforms\\Windows.platform\\Developer\\Library\\XCTest-development\\usr\\lib\\swift\\windows\\x86_64", "-L", "S:\\Library\\Developer\\Platforms\\Windows.platform\\Developer\\Library\\XCTest-development\\usr\\lib\\swift\\windows\\x86_64", "-use-ld=lld", "-swift-version", "4", "-I", "S:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\lib\\swift\\pm\\ManifestAPI", "-package-description-version", "4.0.0", "C:\\Users\\abdulras\\AppData\\Local\\Temp\\TemporaryDirectory.WAvcl4\\manifest.swift", "-o", "C:\\Users\\abdulras\\AppData\\Local\\Temp\\TemporaryDirectory.iyPCyH\\mypkg-manifest.exe"])
error: fatalError
C:\Users\abdulras\AppData\Local\Temp\TemporaryDirectory.WAvcl4\manifest.swift:4:8: error: An error in MyPkg
#error("An error in MyPkg")
       ^~~~~~~~~~~~~~~~~~~' against pattern contains("C:\\Users\\abdulras\\AppData\\Local\\Temp\\spm-tests-testManifestParseError.EqWMdF\\MyPkg\\Package.swift:4:8: error: An error in MyPkg")Test Case 'WorkspaceTests.testManifestParseError' failed (0.261 seconds)Test Suite 'WorkspaceTests' failed at 2023-04-14 09:38:59.452
         Executed 1 test, with 1 failure (0 unexpected) in 0.261 (0.261) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:38:59.452
         Executed 1 test, with 1 failure (0 unexpected) in 0.261 (0.261) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:05.189
Test Suite 'PluginInvocationTests' started at 2023-04-14 09:39:05.190
Test Case 'PluginInvocationTests.testParseArtifactNotSupportedOnTargetPlatform' started at 2023-04-14 09:39:05.190<EXPR>:0: error: PluginInvocationTests.testParseArtifactNotSupportedOnTargetPlatform : threw error "other(22)"Test Case 'PluginInvocationTests.testParseArtifactNotSupportedOnTargetPlatform' failed (0.087 seconds)
Test Suite 'PluginInvocationTests' failed at 2023-04-14 09:39:05.277
         Executed 1 test, with 1 failure (1 unexpected) in 0.087 (0.087) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:05.277
         Executed 1 test, with 1 failure (1 unexpected) in 0.087 (0.087) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:05.191
Test Suite 'PluginInvocationTests' started at 2023-04-14 09:39:05.193
Test Case 'PluginInvocationTests.testParseArtifactsConsidersAllSupportedTriples' started at 2023-04-14 09:39:05.193<EXPR>:0: error: PluginInvocationTests.testParseArtifactsConsidersAllSupportedTriples : threw error "other(22)"Test Case 'PluginInvocationTests.testParseArtifactsConsidersAllSupportedTriples' failed (0.083 seconds)
Test Suite 'PluginInvocationTests' failed at 2023-04-14 09:39:05.276
         Executed 1 test, with 1 failure (1 unexpected) in 0.083 (0.083) secondsTest Suite 'Selected tests' failed at 2023-04-14 09:39:05.276
         Executed 1 test, with 1 failure (1 unexpected) in 0.083 (0.083) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:05.742
Test Suite 'DestinationTests' started at 2023-04-14 09:39:05.743
Test Case 'DestinationTests.testDestinationCodable' started at 2023-04-14 09:39:05.743<EXPR>:0: error: DestinationTests.testDestinationCodable : threw error "dataCorrupted(Swift.DecodingError.Context(codingPath: [], debugDescription: "The given data was not valid JSON.", underlyingError: Optional(Foundation.JSONError.unexpectedEscapedCharacter(ascii: 99, in: "\tmp\\c", index: 37))))"Test Case 'DestinationTests.testDestinationCodable' failed (0.003 seconds)
Test Suite 'DestinationTests' failed at 2023-04-14 09:39:05.746
         Executed 1 test, with 1 failure (1 unexpected) in 0.003 (0.003) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:05.746
         Executed 1 test, with 1 failure (1 unexpected) in 0.003 (0.003) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:05.786
Test Suite 'PackageModelTests' started at 2023-04-14 09:39:05.787
Test Case 'PackageModelTests.testWindowsLibrarianSelection' started at 2023-04-14 09:39:05.787S:\SourceCache\swift-project\swift-package-manager\Tests\PackageModelTests\PackageModelTests.swift:124: error: PackageModelTests.testWindowsLibrarianSelection : XCTAssertEqual threw error "toolchain is invalid: could not find CLI tool `not-link.exe` at any of these directories: []" -Test Case 'PackageModelTests.testWindowsLibrarianSelection' failed (0.017 seconds)
Test Suite 'PackageModelTests' failed at 2023-04-14 09:39:05.804
         Executed 1 test, with 1 failure (1 unexpected) in 0.017 (0.017) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:05.804
         Executed 1 test, with 1 failure (1 unexpected) in 0.017 (0.017) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:05.842
Test Suite 'ToolsetTests' started at 2023-04-14 09:39:05.843Test Case 'ToolsetTests.testToolset' started at 2023-04-14 09:39:05.843<EXPR>:0: error: ToolsetTests.testToolset : threw error "Couldn't parse toolset configuration at `\tools\compilersNoRoot.json`: dataCorrupted(Swift.DecodingError.Context(codingPath: [], debugDescription: "The given data was not valid JSON.", underlyingError: Optional(Foundation.JSONError.invalidHexDigitSequence("sr\\b", index: 64))))"Test Case 'ToolsetTests.testToolset' failed (0.005 seconds)
Test Suite 'ToolsetTests' failed at 2023-04-14 09:39:05.848
         Executed 1 test, with 1 failure (1 unexpected) in 0.005 (0.005) secondsTest Suite 'Selected tests' failed at 2023-04-14 09:39:05.848
         Executed 1 test, with 1 failure (1 unexpected) in 0.005 (0.005) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:04.837
Test Suite 'PluginInvocationTests' started at 2023-04-14 09:39:04.838
Test Case 'PluginInvocationTests.testCompilationDiagnostics' started at 2023-04-14 09:39:04.838[debug]: evaluating manifest for 'mypackage' v. unknown
[debug]: evaluating manifest for 'mypackage' v. unknown
[debug]: Compiling plugin to executable at C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\plugin-cache\MyPlugin.exe
[debug]: Using compiler S:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin\swiftc.exe
[debug]: Plugin compilation output directory 'C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\plugin-cache'
[debug]: Computed hash of plugin compilation inputs: 631cd6b7984533b4cc97592cf3c7c48225b4ecf70272195a6d9ae9728d10f515
[info]: error: fatalError
C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\MyPackage\Plugins\MyPlugin\plugin.swift:8:5: error: missing return in instance method expected to return '[Command]'
    }
    ^

[debug]: Compiling plugin to executable at C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\plugin-cache\MyPlugin.exe
[debug]: Using compiler S:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin\swiftc.exe
[debug]: Plugin compilation output directory 'C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\plugin-cache'
[debug]: Computed hash of plugin compilation inputs: 24be5bcf9d60fa21544be5abddf8d22e0aa5eb60076b303dffe0a117b3e97927
[info]: C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\MyPackage\Plugins\MyPlugin\plugin.swift:7:13: warning: variable 'unused' was never used; consider replacing with '_' or removing it
        var unused: Int
            ^~~~~~
            _

[debug]: Compiling plugin to executable at C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\plugin-cache\MyPlugin.exe
[debug]: Using compiler S:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin\swiftc.exe
[debug]: Plugin compilation output directory 'C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\plugin-cache'
[debug]: Computed hash of plugin compilation inputs: 24be5bcf9d60fa21544be5abddf8d22e0aa5eb60076b303dffe0a117b3e97927
[debug]: Compiling plugin to executable at C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\plugin-cache\MyPlugin.exe
[debug]: Using compiler S:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin\swiftc.exe
[debug]: Plugin compilation output directory 'C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\plugin-cache'
[debug]: Computed hash of plugin compilation inputs: 8410aa742b0d4eeba4069dd0f146a75a80dac1af6578bdf6bd9d6eb1b2c8b373
S:\SourceCache\swift-project\swift-package-manager\Tests\SPMBuildCoreTests\PluginInvocationTests.swift:537: error: PluginInvocationTests.testCompilationDiagnostics : XCTAssertTrue failed - thirdExecModTime: 2023-04-14 16:39:06 +0000, firstExecModTime: 2023-04-14 16:39:06 +0000S:\SourceCache\swift-project\swift-package-manager\Tests\SPMBuildCoreTests\PluginInvocationTests.swift:538: error: PluginInvocationTests.testCompilationDiagnostics : XCTAssertTrue failed - thirdExecModTime: 2023-04-14 16:39:06 +0000, secondExecModTime: 2023-04-14 16:39:06 +0000[debug]: Compiling plugin to executable at C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\plugin-cache\MyPlugin.exe
[debug]: Using compiler S:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin\swiftc.exe
[debug]: Plugin compilation output directory 'C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\plugin-cache'
[debug]: Computed hash of plugin compilation inputs: 31ecd1185093d94b6303241bf6150d0b6dffc221ea6a96ab1eb8d57e9e3c1f2d
[info]: error: fatalError
C:\Users\abdulras\AppData\Local\Temp\spm-tests-testCompilationDiagnostics.AiFpP0\MyPackage\Plugins\MyPlugin\plugin.swift:7:16: error: 'nil' is incompatible with return type '[Command]'
        return nil  // returning the wrong type
               ^

Test Case 'PluginInvocationTests.testCompilationDiagnostics' failed (1.935 seconds)Test Suite 'PluginInvocationTests' failed at 2023-04-14 09:39:06.773
         Executed 1 test, with 2 failures (0 unexpected) in 1.935 (1.935) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:06.773
         Executed 1 test, with 2 failures (0 unexpected) in 1.935 (1.935) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:08.256
Test Suite 'TarArchiverTests' started at 2023-04-14 09:39:08.258Test Case 'TarArchiverTests.testCompress' started at 2023-04-14 09:39:08.258<EXPR>:0: error: TarArchiverTests.testCompress : threw error "tar.exe: l\Modules;C:\Program??u??: Couldn't visit directory: No such file or directory
tar.exe: Error exit delayed from previous errors.
"Test Case 'TarArchiverTests.testCompress' failed (0.016 seconds)
Test Suite 'TarArchiverTests' failed at 2023-04-14 09:39:08.274
         Executed 1 test, with 1 failure (1 unexpected) in 0.016 (0.016) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:08.274
         Executed 1 test, with 1 failure (1 unexpected) in 0.016 (0.016) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:08.453
Test Suite 'UniversalArchiverTests' started at 2023-04-14 09:39:08.454
Test Case 'UniversalArchiverTests.testCompress' started at 2023-04-14 09:39:08.454<EXPR>:0: error: UniversalArchiverTests.testCompress : threw error "tar.exe: : Couldn't visit directory: No such file or directory
tar.exe: Error exit delayed from previous errors.
"Test Case 'UniversalArchiverTests.testCompress' failed (0.016 seconds)
Test Suite 'UniversalArchiverTests' failed at 2023-04-14 09:39:08.470
         Executed 1 test, with 1 failure (1 unexpected) in 0.016 (0.016) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:08.470
         Executed 1 test, with 1 failure (1 unexpected) in 0.016 (0.016) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:08.511
Test Suite 'ZipArchiverTests' started at 2023-04-14 09:39:08.513Test Case 'ZipArchiverTests.testCompress' started at 2023-04-14 09:39:08.513<EXPR>:0: error: ZipArchiverTests.testCompress : threw error "tar.exe: ppData\Local\Microso??S????: Couldn't visit directory: No such file or directory
tar.exe: Error exit delayed from previous errors.
"Test Case 'ZipArchiverTests.testCompress' failed (0.018 seconds)
Test Suite 'ZipArchiverTests' failed at 2023-04-14 09:39:08.531
         Executed 1 test, with 1 failure (1 unexpected) in 0.018 (0.018) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:08.531
         Executed 1 test, with 1 failure (1 unexpected) in 0.018 (0.018) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:08.794
Test Suite 'PackageBuilderTests' started at 2023-04-14 09:39:08.795
Test Case 'PackageBuilderTests.testManifestTargetDeclErrors' started at 2023-04-14 09:39:08.795[error]: Source files for target Foo should be located under 'Sources/Foo', or a custom sources path can be set with the 'path' property in Package.swift
[error]: Source files for target pkgTests should be located under 'Tests/pkgTests', or a custom sources path can be set with the 'path' property in Package.swift
[error]: cyclic dependency declaration found: pkg -> pkg
[error]: cyclic dependency declaration found: pkg1 -> pkg2 -> pkg3 -> pkg1
[error]: cyclic dependency declaration found: pkg1 -> pkg2 -> pkg3 -> pkg2
[warning]: Source files for target pkg2 should be located under 'Sources/pkg2', or a custom sources path can be set with the 'path' property in Package.swift
S:\SourceCache\swift-project\swift-package-manager\Tests\PackageLoadingTests\PackageBuilderTests.swift:1776: error: PackageBuilderTests.testManifestTargetDeclErrors : failed - No diagnostics left to checkS:\SourceCache\swift-project\swift-package-manager\Tests\PackageLoadingTests\PackageBuilderTests.swift:1775: error: PackageBuilderTests.testManifestTargetDeclErrors : failed - Unchecked targets: [<ClangTarget: Foo>][error]: public headers ("include") directory path for 'Bar' is invalid or not contained in the target
[error]: invalid custom path '../foo' for target 'Foo'
S:\SourceCache\swift-project\swift-package-manager\Tests\PackageLoadingTests\PackageBuilderTests.swift:1802: error: PackageBuilderTests.testManifestTargetDeclErrors : XCTAssertTrue failed - unexpected failure matching 'invalid custom path '../foo' for target 'Foo'' against pattern equal("target \'Foo\' in package \'\' is outside the package root")[error]: target path '/foo' is not supported; it should be relative to package root
Test Case 'PackageBuilderTests.testManifestTargetDeclErrors' failed (0.008 seconds)
Test Suite 'PackageBuilderTests' failed at 2023-04-14 09:39:08.803
         Executed 1 test, with 3 failures (0 unexpected) in 0.008 (0.008) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:08.803
         Executed 1 test, with 3 failures (0 unexpected) in 0.008 (0.008) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:08.860
Test Suite 'PackageBuilderTests' started at 2023-04-14 09:39:08.861Test Case 'PackageBuilderTests.testRelaxedSourceLocationSingleTargetSystem' started at 2023-04-14 09:39:08.861[error]: package has unsupported layout; missing system target module map at '\Sources\module.modulemap'
S:\SourceCache\swift-project\swift-package-manager\Tests\PackageLoadingTests\PackageBuilderTests.swift:1443: error: PackageBuilderTests.testRelaxedSourceLocationSingleTargetSystem : XCTAssertTrue failed - unexpected failure matching 'package has unsupported layout; missing system target module map at '\Sources\module.modulemap'' against pattern equal("package has unsupported layout; missing system target module map at \'/Sources/module.modulemap\'")[error]: Source files for target TargetA should be located under 'Sources/TargetA', or a custom sources path can be set with the 'path' property in Package.swift
Test Case 'PackageBuilderTests.testRelaxedSourceLocationSingleTargetSystem' failed (0.005 seconds)Test Suite 'PackageBuilderTests' failed at 2023-04-14 09:39:08.866
         Executed 1 test, with 1 failure (0 unexpected) in 0.005 (0.005) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:08.866
         Executed 1 test, with 1 failure (0 unexpected) in 0.005 (0.005) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:08.890
Test Suite 'PackageBuilderTests' started at 2023-04-14 09:39:08.891
Test Case 'PackageBuilderTests.testTestManifestSearch' started at 2023-04-14 09:39:08.891[error]: target 'exe' in package '' is outside the package root
S:\SourceCache\swift-project\swift-package-manager\Tests\PackageLoadingTests\PackageBuilderTests.swift:570: error: PackageBuilderTests.testTestManifestSearch : failed - Expected package did not load PackageLoadingTests.PackageBuilderTester
S:\SourceCache\swift-project\swift-package-manager\Tests\PackageLoadingTests\PackageBuilderTests.swift:571: error: PackageBuilderTests.testTestManifestSearch : failed - Expected package did not load PackageLoadingTests.PackageBuilderTester
S:\SourceCache\swift-project\swift-package-manager\Tests\PackageLoadingTests\PackageBuilderTests.swift:573: error: PackageBuilderTests.testTestManifestSearch : failed - Expected package did not load PackageLoadingTests.PackageBuilderTesterS:\SourceCache\swift-project\swift-package-manager\Tests\PackageLoadingTests\PackageBuilderTests.swift:569: error: PackageBuilderTests.testTestManifestSearch : failed - unchecked diagnostics [[error]: target 'exe' in package '' is outside the package root]Test Case 'PackageBuilderTests.testTestManifestSearch' failed (0.003 seconds)
Test Suite 'PackageBuilderTests' failed at 2023-04-14 09:39:08.894
         Executed 1 test, with 4 failures (0 unexpected) in 0.003 (0.003) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:08.894
         Executed 1 test, with 4 failures (0 unexpected) in 0.003 (0.003) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:16.116
Test Suite 'ToolsVersionParserTests' started at 2023-04-14 09:39:16.118Test Case 'ToolsVersionParserTests.testEmptyManifest' started at 2023-04-14 09:39:16.118S:\SourceCache\swift-project\swift-package-manager\Tests\PackageLoadingTests\ToolsVersionParserTests.swift:162: error: ToolsVersionParserTests.testEmptyManifest : XCTAssertEqual failed: ("'\lorem\ipsum\dolor\Package.swift' is empty") is not equal to ("'/lorem/ipsum/dolor/Package.swift' is empty") -Test Case 'ToolsVersionParserTests.testEmptyManifest' failed (0.001 seconds)Test Suite 'ToolsVersionParserTests' failed at 2023-04-14 09:39:16.119
         Executed 1 test, with 1 failure (0 unexpected) in 0.001 (0.001) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:16.119
         Executed 1 test, with 1 failure (0 unexpected) in 0.001 (0.001) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:18.602
Test Suite 'BuildPlanTests' started at 2023-04-14 09:39:18.603Test Case 'BuildPlanTests.testSnippets' started at 2023-04-14 09:39:18.603client:
  name: basic
tools: {}
targets:
  "ASnippet-debug.exe": ["<ASnippet-debug.exe>"]
  "ASnippet-debug.module": ["<ASnippet-debug.module>"]
  "Lib-debug.module": ["<Lib-debug.module>"]
  "PackageStructure": ["<PackageStructure>"]
  "main": ["<ASnippet-debug.exe>","<ASnippet-debug.module>","<Lib-debug.module>"]
  "test": ["<ASnippet-debug.exe>","<ASnippet-debug.module>","<Lib-debug.module>"]
default: "main"
nodes:
  "\\Pkg\\Snippets/":
    is-directory-structure: true
    content-exclusion-patterns: [".git",".build"]
  "\\Pkg\\Sources\\Lib/":
    is-directory-structure: true
    content-exclusion-patterns: [".git",".build"]
commands:
  "<ASnippet-debug.exe>":
    tool: phony
    inputs: ["\\Pkg\\.build\\debug\\ASnippet.exe"]
    outputs: ["<ASnippet-debug.exe>"]

  "<ASnippet-debug.module>":
    tool: phony
    inputs: ["\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swift.o","\\Pkg\\.build\\debug\\ASnippet.swiftmodule"]
    outputs: ["<ASnippet-debug.module>"]

  "<Lib-debug.module>":
    tool: phony
    inputs: ["\\Pkg\\.build\\debug\\Lib.build\\Lib.swift.o","\\Pkg\\.build\\debug\\Lib.swiftmodule"]
    outputs: ["<Lib-debug.module>"]

  "C.ASnippet-debug.exe":
    tool: shell
    inputs: ["\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swift.o","\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swiftmodule.o","\\Pkg\\.build\\debug\\Lib.build\\Lib.swift.o","\\Pkg\\.build\\debug\\Lib.build\\Lib.swiftmodule.o"]
    outputs: ["\\Pkg\\.build\\debug\\ASnippet.exe"]
    description: "Linking \\Pkg\\.build\\debug\\ASnippet.exe"
    args: ["\\fake\\path\\to\\swiftc","-L","\\Pkg\\.build\\debug","-o","\\Pkg\\.build\\debug\\ASnippet.exe","-module-name","ASnippet","-emit-executable","@\\Pkg\\.build\\debug\\ASnippet.product\\Objects.LinkFileList","-target","x86_64-unknown-windows-msvc"]

  "C.ASnippet-debug.module":
    tool: swift-compiler
    inputs: ["\\Pkg\\Snippets\\ASnippet.swift","\\Pkg\\.build\\debug\\Lib.swiftmodule"]
    outputs: ["\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swift.o","\\Pkg\\.build\\debug\\ASnippet.swiftmodule"]
    executable: "\\fake\\path\\to\\swiftc"
    module-name: "ASnippet"
    module-output-path: "\\Pkg\\.build\\debug\\ASnippet.swiftmodule"
    import-paths: ["\\Pkg\\.build\\debug"]
    temps-path: "\\Pkg\\.build\\debug\\ASnippet.build"
    objects: ["\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swift.o"]
    other-args: ["-target","x86_64-unknown-windows-msvc","-swift-version","5","-enable-batch-mode","-Onone","-enable-testing","-g","-j3","-DSWIFT_PACKAGE","-DDEBUG","-module-cache-path","\\Pkg\\.build\\debug\\ModuleCache","-parseable-output"]
    sources: ["\\Pkg\\Snippets\\ASnippet.swift"]
    is-library: false
    enable-whole-module-optimization: false
    num-threads: 32

  "C.Lib-debug.module":
    tool: swift-compiler
    inputs: ["\\Pkg\\Sources\\Lib\\Lib.swift"]
    outputs: ["\\Pkg\\.build\\debug\\Lib.build\\Lib.swift.o","\\Pkg\\.build\\debug\\Lib.swiftmodule"]
    executable: "\\fake\\path\\to\\swiftc"
    module-name: "Lib"
    module-output-path: "\\Pkg\\.build\\debug\\Lib.swiftmodule"
    import-paths: ["\\Pkg\\.build\\debug"]
    temps-path: "\\Pkg\\.build\\debug\\Lib.build"
    objects: ["\\Pkg\\.build\\debug\\Lib.build\\Lib.swift.o"]
    other-args: ["-target","x86_64-unknown-windows-msvc","-swift-version","5","-enable-batch-mode","-Onone","-enable-testing","-g","-j3","-DSWIFT_PACKAGE","-DDEBUG","-module-cache-path","\\Pkg\\.build\\debug\\ModuleCache","-parseable-output","-parse-as-library"]
    sources: ["\\Pkg\\Sources\\Lib\\Lib.swift"]
    is-library: true
    enable-whole-module-optimization: false
    num-threads: 32

  "PackageStructure":
    tool: package-structure-tool
    inputs: ["\\Pkg\\Snippets/","\\Pkg\\Sources\\Lib/","\\Pkg\\Package.swift","\\Pkg\\Package.resolved"]
    outputs: ["<PackageStructure>"]
    description: "Planning build"
    allow-missing-inputs: true

  "\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swiftmodule.o":
    tool: shell
    inputs: ["\\Pkg\\.build\\debug\\ASnippet.swiftmodule"]
    outputs: ["\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swiftmodule.o"]
    description: "Wrapping AST for ASnippet for debugging"
    args: ["\\fake\\path\\to\\swiftc","-modulewrap","\\Pkg\\.build\\debug\\ASnippet.swiftmodule","-o","\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swiftmodule.o","-target","x86_64-unknown-windows-msvc"]

  "\\Pkg\\.build\\debug\\Lib.build\\Lib.swiftmodule.o":
    tool: shell
    inputs: ["\\Pkg\\.build\\debug\\Lib.swiftmodule"]
    outputs: ["\\Pkg\\.build\\debug\\Lib.build\\Lib.swiftmodule.o"]
    description: "Wrapping AST for Lib for debugging"
    args: ["\\fake\\path\\to\\swiftc","-modulewrap","\\Pkg\\.build\\debug\\Lib.swiftmodule","-o","\\Pkg\\.build\\debug\\Lib.build\\Lib.swiftmodule.o","-target","x86_64-unknown-windows-msvc"]


S:\SourceCache\swift-project\swift-package-manager\Tests\BuildTests\BuildPlanTests.swift:4449: error: BuildPlanTests.testSnippets : XCTAssertTrue failed - unexpected failure matching 'client:
  name: basic
tools: {}
targets:
  "ASnippet-debug.exe": ["<ASnippet-debug.exe>"]
  "ASnippet-debug.module": ["<ASnippet-debug.module>"]
  "Lib-debug.module": ["<Lib-debug.module>"]
  "PackageStructure": ["<PackageStructure>"]
  "main": ["<ASnippet-debug.exe>","<ASnippet-debug.module>","<Lib-debug.module>"]
  "test": ["<ASnippet-debug.exe>","<ASnippet-debug.module>","<Lib-debug.module>"]
default: "main"
nodes:
  "\\Pkg\\Snippets/":
    is-directory-structure: true
    content-exclusion-patterns: [".git",".build"]
  "\\Pkg\\Sources\\Lib/":
    is-directory-structure: true
    content-exclusion-patterns: [".git",".build"]
commands:
  "<ASnippet-debug.exe>":
    tool: phony
    inputs: ["\\Pkg\\.build\\debug\\ASnippet.exe"]
    outputs: ["<ASnippet-debug.exe>"]

  "<ASnippet-debug.module>":
    tool: phony
    inputs: ["\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swift.o","\\Pkg\\.build\\debug\\ASnippet.swiftmodule"]
    outputs: ["<ASnippet-debug.module>"]

  "<Lib-debug.module>":
    tool: phony
    inputs: ["\\Pkg\\.build\\debug\\Lib.build\\Lib.swift.o","\\Pkg\\.build\\debug\\Lib.swiftmodule"]
    outputs: ["<Lib-debug.module>"]

  "C.ASnippet-debug.exe":
    tool: shell
    inputs: ["\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swift.o","\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swiftmodule.o","\\Pkg\\.build\\debug\\Lib.build\\Lib.swift.o","\\Pkg\\.build\\debug\\Lib.build\\Lib.swiftmodule.o"]
    outputs: ["\\Pkg\\.build\\debug\\ASnippet.exe"]
    description: "Linking \\Pkg\\.build\\debug\\ASnippet.exe"
    args: ["\\fake\\path\\to\\swiftc","-L","\\Pkg\\.build\\debug","-o","\\Pkg\\.build\\debug\\ASnippet.exe","-module-name","ASnippet","-emit-executable","@\\Pkg\\.build\\debug\\ASnippet.product\\Objects.LinkFileList","-target","x86_64-unknown-windows-msvc"]

  "C.ASnippet-debug.module":
    tool: swift-compiler
    inputs: ["\\Pkg\\Snippets\\ASnippet.swift","\\Pkg\\.build\\debug\\Lib.swiftmodule"]
    outputs: ["\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swift.o","\\Pkg\\.build\\debug\\ASnippet.swiftmodule"]
    executable: "\\fake\\path\\to\\swiftc"
    module-name: "ASnippet"
    module-output-path: "\\Pkg\\.build\\debug\\ASnippet.swiftmodule"
    import-paths: ["\\Pkg\\.build\\debug"]
    temps-path: "\\Pkg\\.build\\debug\\ASnippet.build"
    objects: ["\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swift.o"]
    other-args: ["-target","x86_64-unknown-windows-msvc","-swift-version","5","-enable-batch-mode","-Onone","-enable-testing","-g","-j3","-DSWIFT_PACKAGE","-DDEBUG","-module-cache-path","\\Pkg\\.build\\debug\\ModuleCache","-parseable-output"]
    sources: ["\\Pkg\\Snippets\\ASnippet.swift"]
    is-library: false
    enable-whole-module-optimization: false
    num-threads: 32

  "C.Lib-debug.module":
    tool: swift-compiler
    inputs: ["\\Pkg\\Sources\\Lib\\Lib.swift"]
    outputs: ["\\Pkg\\.build\\debug\\Lib.build\\Lib.swift.o","\\Pkg\\.build\\debug\\Lib.swiftmodule"]
    executable: "\\fake\\path\\to\\swiftc"
    module-name: "Lib"
    module-output-path: "\\Pkg\\.build\\debug\\Lib.swiftmodule"
    import-paths: ["\\Pkg\\.build\\debug"]
    temps-path: "\\Pkg\\.build\\debug\\Lib.build"
    objects: ["\\Pkg\\.build\\debug\\Lib.build\\Lib.swift.o"]
    other-args: ["-target","x86_64-unknown-windows-msvc","-swift-version","5","-enable-batch-mode","-Onone","-enable-testing","-g","-j3","-DSWIFT_PACKAGE","-DDEBUG","-module-cache-path","\\Pkg\\.build\\debug\\ModuleCache","-parseable-output","-parse-as-library"]
    sources: ["\\Pkg\\Sources\\Lib\\Lib.swift"]
    is-library: true
    enable-whole-module-optimization: false
    num-threads: 32

  "PackageStructure":
    tool: package-structure-tool
    inputs: ["\\Pkg\\Snippets/","\\Pkg\\Sources\\Lib/","\\Pkg\\Package.swift","\\Pkg\\Package.resolved"]
    outputs: ["<PackageStructure>"]
    description: "Planning build"
    allow-missing-inputs: true

  "\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swiftmodule.o":
    tool: shell
    inputs: ["\\Pkg\\.build\\debug\\ASnippet.swiftmodule"]
    outputs: ["\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swiftmodule.o"]
    description: "Wrapping AST for ASnippet for debugging"
    args: ["\\fake\\path\\to\\swiftc","-modulewrap","\\Pkg\\.build\\debug\\ASnippet.swiftmodule","-o","\\Pkg\\.build\\debug\\ASnippet.build\\ASnippet.swiftmodule.o","-target","x86_64-unknown-windows-msvc"]

  "\\Pkg\\.build\\debug\\Lib.build\\Lib.swiftmodule.o":
    tool: shell
    inputs: ["\\Pkg\\.build\\debug\\Lib.swiftmodule"]
    outputs: ["\\Pkg\\.build\\debug\\Lib.build\\Lib.swiftmodule.o"]
    description: "Wrapping AST for Lib for debugging"
    args: ["\\fake\\path\\to\\swiftc","-modulewrap","\\Pkg\\.build\\debug\\Lib.swiftmodule","-o","\\Pkg\\.build\\debug\\Lib.build\\Lib.swiftmodule.o","-target","x86_64-unknown-windows-msvc"]

' against pattern contains("    inputs: [\"/Pkg/Snippets/ASnippet.swift\",\"/Pkg/.build/debug/Lib.swiftmodule\"")Test Case 'BuildPlanTests.testSnippets' failed (0.045 seconds)
Test Suite 'BuildPlanTests' failed at 2023-04-14 09:39:18.648Executed 1 test, with 1 failure (0 unexpected) in 0.045 (0.045) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:18.648
         Executed 1 test, with 1 failure (0 unexpected) in 0.045 (0.045) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:22.741
Test Suite 'BuildPlanTests' started at 2023-04-14 09:39:22.744
Test Case 'BuildPlanTests.testUserToolchainCompileFlags' started at 2023-04-14 09:39:22.744<EXPR>:0: error: BuildPlanTests.testUserToolchainCompileFlags : threw error "toolchain is invalid: could not find CLI tool `link` at any of these directories: [<AbsolutePath:"S:\Library\Developer\Platforms\Windows.platform\Developer\Library\XCTest-development\usr\bin64">, <AbsolutePath:"S:\Library\Developer\Platforms\Windows.platform\Developer\Library\XCTest-development\usr\bin64">, <AbsolutePath:"S:\Library\swift-development\usr\bin\x64">, <AbsolutePath:"S:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin">, <AbsolutePath:"C:\Program Files\Python311\Scripts">, <AbsolutePath:"C:\Program Files\Python311">, <AbsolutePath:"C:\Windows\system32">, <AbsolutePath:"C:\Windows">, <AbsolutePath:"C:\Windows\System32\Wbem">, <AbsolutePath:"C:\Windows\System32\WindowsPowerShell\v1.0">, <AbsolutePath:"C:\Windows\System32\OpenSSH">, <AbsolutePath:"C:\Program Files\dotnet">, <AbsolutePath:"C:\Program Files (x86)\Tailscale IPN">, <AbsolutePath:"C:\Program Files\DockerCLI">, <AbsolutePath:"C:\Program Files\nodejs">, <AbsolutePath:"C:\Program Files\Git\cmd">, <AbsolutePath:"C:\Users\abdulras\AppData\Local\Microsoft\WindowsApps">, <AbsolutePath:"C:\Users\abdulras\AppData\Local\Programs\Microsoft VS Code\bin">, <AbsolutePath:"C:\Users\abdulras\AppData\Roaming\npm">]"Test Case 'BuildPlanTests.testUserToolchainCompileFlags' failed (0.087 seconds)
Test Suite 'BuildPlanTests' failed at 2023-04-14 09:39:22.831
         Executed 1 test, with 1 failure (1 unexpected) in 0.087 (0.087) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:22.831
         Executed 1 test, with 1 failure (1 unexpected) in 0.087 (0.087) seconds
Test Suite 'Selected tests' started at 2023-04-14 09:39:27.304
Test Suite 'PackageCollectionsTests' started at 2023-04-14 09:39:27.306
Test Case 'PackageCollectionsTests.testFetchMetadataInOrder' started at 2023-04-14 09:39:27.306S:\SourceCache\swift-project\swift-package-manager\Tests\PackageCollectionsTests\PackageCollectionsTests.swift:1231: error: PackageCollectionsTests.testFetchMetadataInOrder : XCTAssertEqual failed: ("Package(identity: test-package-0.package-0, location: "https://package-0", summary: Optional("package-0 description"), keywords: Optional(["keyword 0"]), versions: [PackageCollections.PackageCollectionsModel.Package.Version(version: 1.0.0, title: nil, summary: Optional("1 description"), manifests: [5.2.0: PackageCollections.PackageCollectionsModel.Package.Version.Manifest(toolsVersion: 5.2.0, packageName: "package-0", targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2"))], products: [PackageCollections.PackageCollectionsModel.Product(name: "package-0-product-0", type: executable, targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2"))]), PackageCollections.PackageCollectionsModel.Product(name: "package-0-product-1", type: executable, targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2"))]), PackageCollections.PackageCollectionsModel.Product(name: "package-0-product-2", type: executable, targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2"))])], minimumPlatformVersions: Optional([PackageModel.SupportedPlatform(platform: PackageModel.Platform(name: "macos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 10.13.0)), version: PackageModel.PlatformVersion(version: 10.15.0), options: []), PackageModel.SupportedPlatform(platform: PackageModel.Platform(name: "watchos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 4.0.0)), version: PackageModel.PlatformVersion(version: 6.0.0), options: [])]))], defaultToolsVersion: 5.2.0, verifiedCompatibility: Optional([PackageCollections.PackageCollectionsModel.Compatibility(platform: PackageModel.Platform(name: "linux", oldestSupportedVersion: PackageModel.PlatformVersion(version: 0.0.0)), swiftVersion: 4.2), PackageCollections.PackageCollectionsModel.Compatibility(platform: PackageModel.Platform(name: "tvos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 11.0.0)), swiftVersion: 5), PackageCollections.PackageCollectionsModel.Compatibility(platform: PackageModel.Platform(name: "openbsd", oldestSupportedVersion: PackageModel.PlatformVersion(version: 0.0.0)), swiftVersion: 4.2)]), license: Optional(PackageCollections.PackageCollectionsModel.License(type: LGPL-3.0, url: http://LGPL-3.0.license)), author: nil, signer: nil, createdAt: Optional(2023-04-14 16:39:27 +0000)), PackageCollections.PackageCollectionsModel.Package.Version(version: 0.0.0, title: nil, summary: Optional("0 description"), manifests: [5.2.0: PackageCollections.PackageCollectionsModel.Package.Version.Manifest(toolsVersion: 5.2.0, packageName: "package-0", targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0"))], products: [PackageCollections.PackageCollectionsModel.Product(name: "package-0-product-0", type: executable, targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0"))])], minimumPlatformVersions: Optional([PackageModel.SupportedPlatform(platform: PackageModel.Platform(name: "watchos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 4.0.0)), version: PackageModel.PlatformVersion(version: 6.0.0), options: [])]))], defaultToolsVersion: 5.2.0, verifiedCompatibility: Optional([PackageCollections.PackageCollectionsModel.Compatibility(platform: PackageModel.Platform(name: "windows", oldestSupportedVersion: PackageModel.PlatformVersion(version: 0.0.0)), swiftVersion: 4.2), PackageCollections.PackageCollectionsModel.Compatibility(platform: PackageModel.Platform(name: "tvos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 11.0.0)), swiftVersion: 3), PackageCollections.PackageCollectionsModel.Compatibility(platform: PackageModel.Platform(name: "android", oldestSupportedVersion: PackageModel.PlatformVersion(version: 0.0.0)), swiftVersion: 4.2)]), license: Optional(PackageCollections.PackageCollectionsModel.License(type: Apache-2.0, url: http://Apache-2.0.license)), author: nil, signer: nil, createdAt: Optional(2023-04-14 16:39:27 +0000))], watchersCount: nil, readmeURL: Optional(https://package-0-readme), license: Optional(PackageCollections.PackageCollectionsModel.License(type: Apache-2.0, url: https://package-0.license)), authors: nil, languages: nil)") is not equal to ("Package(identity: test-package-0.package-0, location: "https://package-0", summary: Optional("package-0 description"), keywords: Optional(["keyword 0", "keyword 1"]), versions: [PackageCollections.PackageCollectionsModel.Package.Version(version: 2.0.0, title: nil, summary: Optional("2 description"), manifests: [5.2.0: PackageCollections.PackageCollectionsModel.Package.Version.Manifest(toolsVersion: 5.2.0, packageName: "package-0", targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2"))], products: [PackageCollections.PackageCollectionsModel.Product(name: "package-0-product-0", type: executable, targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2"))]), PackageCollections.PackageCollectionsModel.Product(name: "package-0-product-1", type: executable, targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2"))])], minimumPlatformVersions: Optional([PackageModel.SupportedPlatform(platform: PackageModel.Platform(name: "watchos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 4.0.0)), version: PackageModel.PlatformVersion(version: 6.0.0), options: []), PackageModel.SupportedPlatform(platform: PackageModel.Platform(name: "macos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 10.13.0)), version: PackageModel.PlatformVersion(version: 10.15.0), options: [])]))], defaultToolsVersion: 5.2.0, verifiedCompatibility: Optional([PackageCollections.PackageCollectionsModel.Compatibility(platform: PackageModel.Platform(name: "watchos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 4.0.0)), swiftVersion: 4)]), license: Optional(PackageCollections.PackageCollectionsModel.License(type: LGPL-3.0, url: http://LGPL-3.0.license)), author: nil, signer: nil, createdAt: Optional(2023-04-14 16:39:27 +0000)), PackageCollections.PackageCollectionsModel.Package.Version(version: 1.0.0, title: nil, summary: Optional("1 description"), manifests: [5.2.0: PackageCollections.PackageCollectionsModel.Package.Version.Manifest(toolsVersion: 5.2.0, packageName: "package-0", targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-3", moduleName: Optional("module-package-0-target-3"))], products: [PackageCollections.PackageCollectionsModel.Product(name: "package-0-product-0", type: executable, targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-3", moduleName: Optional("module-package-0-target-3"))]), PackageCollections.PackageCollectionsModel.Product(name: "package-0-product-1", type: executable, targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-3", moduleName: Optional("module-package-0-target-3"))]), PackageCollections.PackageCollectionsModel.Product(name: "package-0-product-2", type: executable, targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-3", moduleName: Optional("module-package-0-target-3"))])], minimumPlatformVersions: Optional([PackageModel.SupportedPlatform(platform: PackageModel.Platform(name: "watchos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 4.0.0)), version: PackageModel.PlatformVersion(version: 6.0.0), options: [])]))], defaultToolsVersion: 5.2.0, verifiedCompatibility: Optional([PackageCollections.PackageCollectionsModel.Compatibility(platform: PackageModel.Platform(name: "macos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 10.13.0)), swiftVersion: 3), PackageCollections.PackageCollectionsModel.Compatibility(platform: PackageModel.Platform(name: "windows", oldestSupportedVersion: PackageModel.PlatformVersion(version: 0.0.0)), swiftVersion: 3)]), license: Optional(PackageCollections.PackageCollectionsModel.License(type: Apache-2.0, url: http://Apache-2.0.license)), author: nil, signer: nil, createdAt: Optional(2023-04-14 16:39:27 +0000)), PackageCollections.PackageCollectionsModel.Package.Version(version: 0.0.0, title: nil, summary: Optional("0 description"), manifests: [5.2.0: PackageCollections.PackageCollectionsModel.Package.Version.Manifest(toolsVersion: 5.2.0, packageName: "package-0", targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2"))], products: [PackageCollections.PackageCollectionsModel.Product(name: "package-0-product-0", type: executable, targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2"))]), PackageCollections.PackageCollectionsModel.Product(name: "package-0-product-1", type: executable, targets: [PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-0", moduleName: Optional("module-package-0-target-0")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-1", moduleName: Optional("module-package-0-target-1")), PackageCollections.PackageCollectionsModel.Target(name: "package-0-target-2", moduleName: Optional("module-package-0-target-2"))])], minimumPlatformVersions: Optional([PackageModel.SupportedPlatform(platform: PackageModel.Platform(name: "macos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 10.13.0)), version: PackageModel.PlatformVersion(version: 10.15.0), options: []), PackageModel.SupportedPlatform(platform: PackageModel.Platform(name: "watchos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 4.0.0)), version: PackageModel.PlatformVersion(version: 6.0.0), options: [])]))], defaultToolsVersion: 5.2.0, verifiedCompatibility: Optional([PackageCollections.PackageCollectionsModel.Compatibility(platform: PackageModel.Platform(name: "watchos", oldestSupportedVersion: PackageModel.PlatformVersion(version: 4.0.0)), swiftVersion: 4.2), PackageCollections.PackageCollectionsModel.Compatibility(platform: PackageModel.Platform(name: "ios", oldestSupportedVersion: PackageModel.PlatformVersion(version: 11.0.0)), swiftVersion: 4)]), license: Optional(PackageCollections.PackageCollectionsModel.License(type: LGPL-2.1, url: http://LGPL-2.1.license)), author: nil, signer: nil, createdAt: Optional(2023-04-14 16:39:27 +0000))], watchersCount: nil, readmeURL: Optional(https://package-0-readme), license: Optional(PackageCollections.PackageCollectionsModel.License(type: Apache-2.0, url: https://package-0.license)), authors: nil, languages: nil)") - package should matchTest Case 'PackageCollectionsTests.testFetchMetadataInOrder' failed (0.017 seconds)
Test Suite 'PackageCollectionsTests' failed at 2023-04-14 09:39:27.323Executed 1 test, with 1 failure (0 unexpected) in 0.017 (0.017) seconds
Test Suite 'Selected tests' failed at 2023-04-14 09:39:27.323
         Executed 1 test, with 1 failure (0 unexpected) in 0.017 (0.017) seconds
```

@compnerd
Copy link
Collaborator

Overall, I think that if we fix the three assertion failures, this might not be a bad point to draw in the sand.

@tomerd
Copy link
Member Author

tomerd commented Apr 14, 2023

apple/swift-tools-support-core#369

@swift-ci smoke test Windows

@tomerd
Copy link
Member Author

tomerd commented Apr 14, 2023

@compnerd are these test error on Windows? I dont see them on linux / mac. if so, which specific failures are the ones you are more worried about? some of them seem to be unrelated to this change

@tomerd
Copy link
Member Author

tomerd commented Apr 14, 2023

apple/swift-tools-support-core#369

@swift-ci smoke test windows

@tomerd
Copy link
Member Author

tomerd commented Apr 14, 2023

@compnerd looks like the windows build is broken?

@compnerd
Copy link
Collaborator

Yeah, apple/swift#65198 should fix it

@compnerd
Copy link
Collaborator

Please test with following PRs:
apple/swift-tools-support-core#369
apple/swift#65198

@swift-ci please test Windows platform

@compnerd
Copy link
Collaborator

Please test with following PRs:
apple/swift#65183
apple/swift-tools-support-core#369

@swift-ci please test Windows platform

@compnerd
Copy link
Collaborator

@swift-ci please smoke test

@compnerd
Copy link
Collaborator

Please test with following PRs:
apple/swift#65183
apple/swift-tools-support-core#369

@swift-ci please smoke test

@tomerd
Copy link
Member Author

tomerd commented Apr 15, 2023

self hosted expected to fail since they do not support cross repo testing

@tomerd
Copy link
Member Author

tomerd commented Apr 15, 2023

@neonichu plz review this + TSC companion. @compnerd and myself made sure this is fine for windows

@MaxDesiatov
Copy link
Member

@MaxDesiatov
Copy link
Member

apple/swift#65183
apple/swift-tools-support-core#369

@swift-ci smoke test macos self-hosted

Copy link
Member

@neonichu neonichu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good in general, but I am not sure I like the use of try! outside of tests. I called out a couple of specific places where we should change it, but I'm generally slightly against it. It seems too easy for a change to make the use unsafe without actually changing the call sites to a proper throws.

@tomerd
Copy link
Member Author

tomerd commented Apr 17, 2023

apple/swift-tools-support-core#369

@swift-ci smoke test macos self-hosted

@tomerd
Copy link
Member Author

tomerd commented Apr 17, 2023

@tomerd
Copy link
Member Author

tomerd commented Apr 17, 2023

apple/swift-tools-support-core#369

@swift-ci smoke test windows

@tomerd
Copy link
Member Author

tomerd commented Apr 17, 2023

self-hosted expected to fail since they do not support cross repo testing

@tomerd
Copy link
Member Author

tomerd commented Apr 17, 2023

apple/swift-tools-support-core#369

@swift-ci smoke test macOS

@tomerd
Copy link
Member Author

tomerd commented Apr 17, 2023

apple/swift-tools-support-core#369

@swift-ci smoke test windows

@tomerd tomerd removed the WIP Work in progress label Apr 17, 2023
@tomerd tomerd merged commit 048ab95 into apple:main Apr 17, 2023
3 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants