Skip to content

Update server tutorial codebase, fixes #333 #338

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

Merged
merged 8 commits into from
Oct 24, 2023
Merged
Show file tree
Hide file tree
Changes from all 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
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ struct Main {
let handler = Handler()

// Call the generated protocol function on the handler to configure the Vapor application.
try handler.registerHandlers(on: transport, serverURL: Servers.server1())
try handler.registerHandlers(on: transport, serverURL: Servers.server2())

// Start the Vapor application, in the same way as if it was manually configured.
try app.run()
Expand Down
8 changes: 5 additions & 3 deletions Examples/GreetingService/Sources/GreetingService/openapi.yaml
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
openapi: '3.0.3'
openapi: '3.1.0'
info:
title: GreetingService
version: 1.0.0
servers:
- url: https://example.com/api
description: Example
description: Example service deployment.
- url: http://127.0.0.1:8080/api
description: Localhost deployment.
paths:
/greet:
get:
Expand All @@ -13,7 +15,7 @@ paths:
- name: name
required: false
in: query
description: A name used in the returned greeting.
description: The name used in the returned greeting.
schema:
type: string
responses:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
openapi: '3.0.3'
openapi: '3.1.0'
info:
title: GreetingService
version: 1.0.0
servers:
- url: https://example.com/api
description: Example
- url: http://localhost:8080/api
description: Localhost
description: Example service deployment.
- url: http://127.0.0.1:8080/api
description: Localhost deployment.
paths:
/greet:
get:
Expand All @@ -15,7 +15,7 @@ paths:
- name: name
required: false
in: query
description: A name used in the returned greeting.
description: The name used in the returned greeting.
schema:
type: string
responses:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@Tutorial(time: 20) {
@XcodeRequirement(title: "Swift 5.8 ", destination: "https://developer.apple.com/download/")
@XcodeRequirement(title: "Swift 5.9 ", destination: "https://developer.apple.com/download/applications/")

@Intro(title: "Generating a client in a Swift package") {
This tutorial guides you through building _GreetingServiceClient_—an API client for a fictitious service that returns a personalized greeting.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@Tutorial(time: 20) {
@XcodeRequirement(title: "Swift 5.8 ", destination: "https://developer.apple.com/download/")
@XcodeRequirement(title: "Swift 5.9 ", destination: "https://developer.apple.com/download/applications/")

@Intro(title: "Generating a client in an Xcode project") {
This tutorial guides you through building _GreetingServiceClient_—an API client for a fictitious service that returns a personalized greeting.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@Tutorial(time: 20) {
@XcodeRequirement(title: "Swift 5.8 ", destination: "https://developer.apple.com/download/")
@XcodeRequirement(title: "Swift 5.9 ", destination: "https://developer.apple.com/download/applications/")

@Intro(title: "Generating server stubs in a Swift package") {

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
name: "GreetingServiceClient",
platforms: [
.macOS(.v10_15), .iOS(.v13), .tvOS(.v13), .watchOS(.v6),
.macOS(.v10_15),
.iOS(.v13),
.tvOS(.v13),
.watchOS(.v6),
],
targets: [
.executableTarget(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
name: "GreetingServiceClient",
platforms: [
.macOS(.v10_15), .iOS(.v13), .tvOS(.v13), .watchOS(.v6),
.macOS(.v10_15),
.iOS(.v13),
.tvOS(.v13),
.watchOS(.v6),
],
dependencies: [
.package(url: "https://github.com/apple/swift-openapi-generator", .upToNextMinor(from: "0.3.0")),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
name: "GreetingServiceClient",
platforms: [
.macOS(.v10_15), .iOS(.v13), .tvOS(.v13), .watchOS(.v6),
.macOS(.v10_15),
.iOS(.v13),
.tvOS(.v13),
.watchOS(.v6),
],
dependencies: [
.package(url: "https://github.com/apple/swift-openapi-generator", .upToNextMinor(from: "0.3.0")),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
name: "GreetingServiceClient",
platforms: [
.macOS(.v10_15), .iOS(.v13), .tvOS(.v13), .watchOS(.v6),
.macOS(.v10_15),
.iOS(.v13),
.tvOS(.v13),
.watchOS(.v6),
],
dependencies: [
.package(url: "https://github.com/apple/swift-openapi-generator", .upToNextMinor(from: "0.3.0")),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
name: "GreetingServiceClient",
platforms: [
.macOS(.v10_15), .iOS(.v13), .tvOS(.v13), .watchOS(.v6),
.macOS(.v10_15),
.iOS(.v13),
.tvOS(.v13),
.watchOS(.v6),
],
dependencies: [
.package(url: "https://github.com/apple/swift-openapi-generator", .upToNextMinor(from: "0.3.0")),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
Expand All @@ -10,7 +10,7 @@ let package = Package(
.package(url: "https://github.com/apple/swift-openapi-generator", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/apple/swift-openapi-runtime", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/swift-server/swift-openapi-vapor", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/vapor/vapor", from: "4.76.0"),
.package(url: "https://github.com/vapor/vapor", from: "4.84.0"),
],
targets: [
.executableTarget(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
Expand All @@ -10,7 +10,7 @@ let package = Package(
.package(url: "https://github.com/apple/swift-openapi-generator", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/apple/swift-openapi-runtime", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/swift-server/swift-openapi-vapor", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/vapor/vapor", from: "4.76.0"),
.package(url: "https://github.com/vapor/vapor", from: "4.84.0"),
],
targets: [
.executableTarget(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
Expand All @@ -10,7 +10,7 @@ let package = Package(
.package(url: "https://github.com/apple/swift-openapi-generator", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/apple/swift-openapi-runtime", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/swift-server/swift-openapi-vapor", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/vapor/vapor", from: "4.76.0"),
.package(url: "https://github.com/vapor/vapor", from: "4.84.0"),
],
targets: [
.executableTarget(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version: 5.8
// swift-tools-version: 5.9
import PackageDescription

let package = Package(
Expand All @@ -10,7 +10,7 @@ let package = Package(
.package(url: "https://github.com/apple/swift-openapi-generator", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/apple/swift-openapi-runtime", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/swift-server/swift-openapi-vapor", .upToNextMinor(from: "0.3.0")),
.package(url: "https://github.com/vapor/vapor", from: "4.76.0"),
.package(url: "https://github.com/vapor/vapor", from: "4.84.0"),
],
targets: [
.executableTarget(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ struct GreetingServiceAPIImpl: APIProtocol {
_ input: Operations.getEmoji.Input
) async throws -> Operations.getEmoji.Output {
let emojis = "👋👍👏🙏🤙🤘"
return .ok(.init(body: .text(String(emojis.randomElement()!))))
let emoji = String(emojis.randomElement()!)
return .ok(.init(body: .plainText(.init(emoji))))
}
}

Expand Down