Bolt

master

Bolt implementation in Swift
niklassaers/Bolt-swift

Bolt-swift

The Bolt network protocol is a network protocol designed for high-performance access to graph databases. Bolt is a connection-oriented protocol, using a compact binary encoding over TCP or web sockets for higher throughput and lower latency.

The reference implementation can be found [here][https://github.com/neo4j-contrib/boltkit]. This codebase is the Swift implementation, and is used by Theo, the Swift Neo4j driver.

Connection

The implementation supports both SSL-encrypted and plain-text connections. If there is no certificate and key provided with the SSL configuration, Bolt-swift will attempt to generate it.

Tests

Note, tests are destructive to the data in the database under test, so run them on a database created especially for running the tests

Getting started

To use directly with Xcode, type "swift package generate-xcodeproj"

Swift Package Manager

Add the following to your dependencies array in Package.swift:

.Package(url: "https://github.com/Neo4j-Swift/Bolt-swift.git",
 majorVersion: 0),

and you can now do a

swift build

CocoaPods

Add the

pod "BoltProtocol"

to your Podfile, and you can now do

pod install

to have Bolt included in your Xcode project via CocoaPods

Carthage

Put

github "Neo4j-Swift/Bolt-swift"

in your Cartfile. If this is your entire Cartfile, do

carthage bootstrap

If you have already done that, do

carthage update

instead.

Then do

cd Carthage/Checkouts/bolt-swift
swift package generate-xcodeproj
cd -

And Carthage is now set up. You can now do

carthage build --platform Mac

and you should find a build for macOS. If you want to build for iOS, before generating the Xcode project, remove the ShellOut dependency from Package.swift, and then use --platoform iOS instead. tvOS and watchOS builds with Carthage are currently unavailable.

Description

  • Swift Tools 3.1.0
View More Packages from this Author

Dependencies

Last updated: Wed Jul 26 2023 18:13:27 GMT-0900 (Hawaii-Aleutian Daylight Time)