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

Remove support for Swift 5.1 #87

Merged
merged 7 commits into from
Jun 22, 2021
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 37 additions & 6 deletions Package.swift
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version:5.1
// swift-tools-version:5.2
//===----------------------------------------------------------------------===//
//
// This source file is part of the SwiftNIO open source project
Expand Down Expand Up @@ -31,10 +31,41 @@ let package = Package(
.package(url: "https://github.com/apple/swift-crypto.git", from: "1.0.0"),
],
targets: [
.target(name: "NIOSSH", dependencies: ["NIO", "NIOFoundationCompat", "Crypto"]),
.target(name: "NIOSSHClient", dependencies: ["NIO", "NIOSSH", "NIOConcurrencyHelpers"]),
.target(name: "NIOSSHServer", dependencies: ["NIO", "NIOSSH", "NIOFoundationCompat", "Crypto"]),
.target(name: "NIOSSHPerformanceTester", dependencies: ["NIO", "NIOSSH", "Crypto"]),
.testTarget(name: "NIOSSHTests", dependencies: ["NIOSSH", "NIO", "NIOFoundationCompat"]),
.target(
name: "NIOSSH",
dependencies: [
.product(name: "NIO", package: "swift-nio"),
.product(name: "NIOFoundationCompat", package: "swift-nio"),
.product(name: "Crypto", package: "swift-crypto")
]),
.target(
name: "NIOSSHClient",
dependencies: [
"NIOSSH",
.product(name: "NIO", package: "swift-nio"),
.product(name: "NIOConcurrencyHelpers", package: "swift-nio")
]),
.target(
name: "NIOSSHServer",
dependencies: [
"NIOSSH",
.product(name: "NIO", package: "swift-nio"),
.product(name: "NIOFoundationCompat", package: "swift-nio"),
.product(name: "Crypto", package: "swift-crypto")
]),
.target(
name: "NIOSSHPerformanceTester",
dependencies: [
"NIOSSH",
.product(name: "NIO", package: "swift-nio"),
.product(name: "Crypto", package: "swift-crypto")
]),
.testTarget(
name: "NIOSSHTests",
dependencies: [
"NIOSSH",
.product(name: "NIO", package: "swift-nio"),
.product(name: "NIOFoundationCompat", package: "swift-nio")
]),
]
)
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ There are a number of reasons to provide a programmatic SSH implementation. One

Another good reason to provide programmatic SSH is that it is not uncommon for services to need to interact with other services in a way that involves running commands. While `Process` solves this for the local use-case, sometimes the commands that need to be invoked are remote. While `Process` could launch an `ssh` client as a sub-process in order to run this invocation, it can be substantially more straightforward to simply invoke SSH directly. This is [`libssh2`](https://www.libssh2.org)'s target use-case. SwiftNIO SSH provides the equivalent of the networking and cryptographic layer of libssh2, allowing motivated users to drive SSH sessions directly from within Swift services.

SwiftNIO SSH requires Swift 5.2 and newer. Older versions (0.2.x and above) support Swift 5.1.

## What does SwiftNIO SSH support?

SwiftNIO SSH supports SSHv2 with the following feature set:
Expand Down
4 changes: 2 additions & 2 deletions docker/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
ARG swift_version=5.1
ARG ubuntu_version=bionic
ARG swift_version=5.2
ARG ubuntu_version=xenial
ARG base_image=swift:$swift_version-$ubuntu_version
FROM $base_image
# needed to do again after FROM due to docker limitation
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,17 @@ version: "3"
services:

runtime-setup:
image: swift-nio-ssh:16.04-5.1
image: swift-nio-ssh:16.04-5.2
build:
args:
ubuntu_version: "xenial"
swift_version: "5.1"
swift_version: "5.2"

test:
image: swift-nio-ssh:16.04-5.1
image: swift-nio-ssh:16.04-5.2
environment:
- SANITIZER_ARG=--sanitize=thread
#- WARN_AS_ERROR_ARG=-warnings-as-errors

shell:
image: swift-nio-ssh:16.04-5.1
image: swift-nio-ssh:16.04-5.2
19 changes: 0 additions & 19 deletions docker/docker-compose.1804.51.yaml

This file was deleted.

19 changes: 0 additions & 19 deletions docker/docker-compose.1804.52.yaml

This file was deleted.