pixelspark / catena

Catena is a distributed database based on a blockchain, accessible using SQL.
MIT License
302 stars 23 forks source link

Build errors Macos , CommonCrypto error: manifest parse error(s) #126

Closed paouvrard closed 6 years ago

paouvrard commented 6 years ago

Hi, I tried to build on macOS and also with Docker, but run into the following errors :

$ swift build Fetching https://github.com/IBM-Swift/Kitura-WebSocket Fetching https://github.com/pixelspark/postgres-wire-server.git Fetching https://github.com/jatoben/CommandLine Fetching https://github.com/IBM-Swift/BlueCryptor.git Fetching https://github.com/pixelspark/swift-parser-generator.git Fetching https://github.com/IBM-Swift/HeliumLogger.git Fetching https://github.com/pixelspark/sqlite.git Fetching https://github.com/IBM-Swift/Kitura.git Fetching https://github.com/vzsg/ed25519.git Fetching https://github.com/pixelspark/base58.git Fetching https://github.com/Bouke/NetService.git Fetching https://github.com/daltoniam/Starscream.git Fetching https://github.com/IBM-Swift/BlueSocket.git Fetching https://github.com/IBM-Swift/LoggerAPI.git Fetching https://github.com/IBM-Swift/Kitura-net.git Fetching https://github.com/IBM-Swift/Kitura-TemplateEngine.git Fetching https://github.com/IBM-Swift/KituraContracts.git Fetching https://github.com/IBM-Swift/CCurl.git Fetching https://github.com/IBM-Swift/BlueSSLService.git Fetching https://github.com/IBM-Swift/CommonCrypto.git error: manifest parse error(s): The manifest file at https://github.com/IBM-Swift/CommonCrypto.git (0.1.3) is empty error: product dependency 'SQLite' not found error: product dependency 'Ed25519' not found error: product dependency 'Base58' not found error: product dependency 'HeliumLogger' not found error: product dependency 'Kitura' not found error: product dependency 'Kitura-WebSocket' not found error: product dependency 'NetService' not found error: product dependency 'Starscream' not found error: product dependency 'SwiftParser' not found error: product dependency 'PostgresWireServer' not found error: product dependency 'CommandLine' not found

$ swift --version Apple Swift version 4.0.3 (swiftlang-900.0.74.1 clang-900.0.39.2) Target: x86_64-apple-macosx10.9

pixelspark commented 6 years ago

Hm, that's weird. I get the same error here building the package from scratch. Surely something has changed in the dependencies. The error seems to be with CommonCrypto (v0.1.3 is not working because it contains an empty manifest file, this is presumably fixed in the currently most recent 0.1.5 version). I can't see which package requires the 0.1.3 version specifically (by default SPM would use the most recent one). BlueCryptor depends on it but does not require the 0.1.3 version, and neither does BlueSSLService nor Starscream (which uses their own CommonCrypto shim).

Will need to do some tests to figure out where this is going wrong... in the mean time you could try adding CommonCrypto 0.1.5 as a dependency and see whether this convinces SPM to use that instead of 0.1.3.

paouvrard commented 6 years ago

Thanks for feedback, this might help I added the following in deps of Package.swift .package(url: "https://github.com/IBM-Swift/CommonCrypto.git", from: Version("0.1.5"))

There is no more error on CommonCrypto, but it stays stuck at Fetching https://github.com/IBM-Swift/BlueSSLService.git. No error, just the build is stuck

pixelspark commented 6 years ago

Weird. I just tried this again (from another network but that shouldn't matter) and it builds fine now.

Could you try again (using the original package file) and see if that works now? Probably some kind of error in the package file of a dependency somewhere.

pixelspark commented 6 years ago

OK, so I have now added the Package.resolved file to the repository - that ensures that everyone uses the same package versions I used at commit time.