-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
# Motivation We want to adopt GitHub actions in all of our Swift repositories to replace our current Jenkins CI. # Modification This PR adopts the reusable workflows from NIO and the swiftlang organization to ensure soundness and test coverage. Additionally, this PR enables a sematic label check and adds a `release.yml` to make releasing this package easy. # Result Modern CI and release flow.
- Loading branch information
1 parent
7328a73
commit 1155e33
Showing
305 changed files
with
12,704 additions
and
6,501 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
changelog: | ||
categories: | ||
- title: SemVer Major | ||
labels: | ||
- ⚠️ semver/major | ||
- title: SemVer Minor | ||
labels: | ||
- semver/minor | ||
- title: SemVer Patch | ||
labels: | ||
- semver/patch | ||
- title: Other Changes | ||
labels: | ||
- semver/none |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
name: Main | ||
|
||
on: | ||
push: | ||
branches: [main] | ||
schedule: | ||
- cron: "0 8,20 * * *" | ||
|
||
jobs: | ||
unit-tests: | ||
name: Unit tests | ||
uses: apple/swift-nio/.github/workflows/unit_tests.yml@main | ||
with: | ||
linux_5_9_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error" | ||
linux_5_10_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error" | ||
linux_6_0_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error" | ||
linux_nightly_6_0_arguments_override: "--explicit-target-dependency-import-check error" | ||
linux_nightly_main_arguments_override: "--explicit-target-dependency-import-check error" | ||
|
||
cxx-interop: | ||
name: Cxx interop | ||
uses: apple/swift-nio/.github/workflows/cxx_interop.yml@main |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
name: PR | ||
|
||
on: | ||
pull_request: | ||
types: [opened, reopened, synchronize] | ||
|
||
jobs: | ||
soundness: | ||
name: Soundness | ||
uses: swiftlang/github-workflows/.github/workflows/soundness.yml@main | ||
with: | ||
license_header_check_project_name: "SwiftNIO" | ||
|
||
unit-tests: | ||
name: Unit tests | ||
uses: apple/swift-nio/.github/workflows/unit_tests.yml@main | ||
with: | ||
linux_5_9_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error" | ||
linux_5_10_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error" | ||
linux_6_0_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error" | ||
linux_nightly_6_0_arguments_override: "--explicit-target-dependency-import-check error" | ||
linux_nightly_main_arguments_override: "--explicit-target-dependency-import-check error" | ||
|
||
cxx-interop: | ||
name: Cxx interop | ||
uses: apple/swift-nio/.github/workflows/cxx_interop.yml@main |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
name: PR label | ||
|
||
on: | ||
pull_request: | ||
types: [labeled, unlabeled, opened, reopened, synchronize] | ||
|
||
jobs: | ||
semver-label-check: | ||
name: Semantic Version label check | ||
runs-on: ubuntu-latest | ||
timeout-minutes: 1 | ||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- name: Check for Semantic Version label | ||
uses: apple/swift-nio/.github/actions/pull_request_semver_label_checker@main |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
.gitignore | ||
**/.gitignore | ||
.gitattributes | ||
.git-blame-ignore-revs | ||
.mailfilter | ||
.mailmap | ||
.spi.yml | ||
.swift-format | ||
.editorconfig | ||
.github/* | ||
*.md | ||
*.txt | ||
*.yml | ||
*.yaml | ||
*.json | ||
Package.swift | ||
**/Package.swift | ||
Package@-*.swift | ||
**/Package@-*.swift | ||
Package.resolved | ||
**/Package.resolved | ||
Makefile | ||
*.modulemap | ||
**/*.modulemap | ||
**/*.docc/* | ||
*.xcprivacy | ||
**/*.xcprivacy | ||
*.symlink | ||
**/*.symlink | ||
Dockerfile | ||
**/Dockerfile | ||
Snippets/* | ||
dev/git.commit.template |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
{ | ||
"fileScopedDeclarationPrivacy" : { | ||
"accessLevel" : "private" | ||
}, | ||
"indentation" : { | ||
"spaces" : 4 | ||
}, | ||
"indentConditionalCompilationBlocks" : false, | ||
"indentSwitchCaseLabels" : false, | ||
"lineBreakAroundMultilineExpressionChainComponents" : false, | ||
"lineBreakBeforeControlFlowKeywords" : false, | ||
"lineBreakBeforeEachArgument" : true, | ||
"lineBreakBeforeEachGenericRequirement" : true, | ||
"lineLength" : 120, | ||
"maximumBlankLines" : 1, | ||
"prioritizeKeepingFunctionOutputTogether" : true, | ||
"respectsExistingLineBreaks" : true, | ||
"rules" : { | ||
"AllPublicDeclarationsHaveDocumentation" : false, | ||
"AlwaysUseLowerCamelCase" : false, | ||
"AmbiguousTrailingClosureOverload" : true, | ||
"BeginDocumentationCommentWithOneLineSummary" : false, | ||
"DoNotUseSemicolons" : true, | ||
"DontRepeatTypeInStaticProperties" : true, | ||
"FileScopedDeclarationPrivacy" : true, | ||
"FullyIndirectEnum" : true, | ||
"GroupNumericLiterals" : true, | ||
"IdentifiersMustBeASCII" : true, | ||
"NeverForceUnwrap" : false, | ||
"NeverUseForceTry" : false, | ||
"NeverUseImplicitlyUnwrappedOptionals" : false, | ||
"NoAccessLevelOnExtensionDeclaration" : true, | ||
"NoAssignmentInExpressions" : true, | ||
"NoBlockComments" : true, | ||
"NoCasesWithOnlyFallthrough" : true, | ||
"NoEmptyTrailingClosureParentheses" : true, | ||
"NoLabelsInCasePatterns" : false, | ||
"NoLeadingUnderscores" : false, | ||
"NoParensAroundConditions" : true, | ||
"NoVoidReturnOnFunctionSignature" : true, | ||
"OneCasePerLine" : true, | ||
"OneVariableDeclarationPerLine" : true, | ||
"OnlyOneTrailingClosureArgument" : true, | ||
"OrderedImports" : false, | ||
"ReturnVoidInsteadOfEmptyTuple" : true, | ||
"UseEarlyExits" : true, | ||
"UseLetInEveryBoundCaseVariable" : false, | ||
"UseShorthandTypeNames" : true, | ||
"UseSingleLinePropertyGetter" : false, | ||
"UseSynthesizedInitializer" : false, | ||
"UseTripleSlashForDocumentationComments" : true, | ||
"UseWhereClausesInForLoops" : false, | ||
"ValidateDocumentationComments" : false | ||
}, | ||
"spacesAroundRangeFormationOperators" : false, | ||
"tabWidth" : 4, | ||
"version" : 1 | ||
} |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
{ | ||
"configurations": [ | ||
{ | ||
"type": "lldb", | ||
"request": "launch", | ||
"args": [], | ||
"cwd": "${workspaceFolder:swift-nio-imap}", | ||
"name": "Debug Proxy", | ||
"program": "${workspaceFolder:swift-nio-imap}/.build/debug/Proxy", | ||
"preLaunchTask": "swift: Build Debug Proxy" | ||
}, | ||
{ | ||
"type": "lldb", | ||
"request": "launch", | ||
"args": [], | ||
"cwd": "${workspaceFolder:swift-nio-imap}", | ||
"name": "Release Proxy", | ||
"program": "${workspaceFolder:swift-nio-imap}/.build/release/Proxy", | ||
"preLaunchTask": "swift: Build Release Proxy" | ||
}, | ||
{ | ||
"type": "lldb", | ||
"request": "launch", | ||
"args": [], | ||
"cwd": "${workspaceFolder:swift-nio-imap}", | ||
"name": "Debug NIOIMAPPerformanceTester", | ||
"program": "${workspaceFolder:swift-nio-imap}/.build/debug/NIOIMAPPerformanceTester", | ||
"preLaunchTask": "swift: Build Debug NIOIMAPPerformanceTester" | ||
}, | ||
{ | ||
"type": "lldb", | ||
"request": "launch", | ||
"args": [], | ||
"cwd": "${workspaceFolder:swift-nio-imap}", | ||
"name": "Release NIOIMAPPerformanceTester", | ||
"program": "${workspaceFolder:swift-nio-imap}/.build/release/NIOIMAPPerformanceTester", | ||
"preLaunchTask": "swift: Build Release NIOIMAPPerformanceTester" | ||
}, | ||
{ | ||
"type": "lldb", | ||
"request": "launch", | ||
"args": [], | ||
"cwd": "${workspaceFolder:swift-nio-imap}", | ||
"name": "Debug NIOIMAPFuzzer", | ||
"program": "${workspaceFolder:swift-nio-imap}/.build/debug/NIOIMAPFuzzer", | ||
"preLaunchTask": "swift: Build Debug NIOIMAPFuzzer" | ||
}, | ||
{ | ||
"type": "lldb", | ||
"request": "launch", | ||
"args": [], | ||
"cwd": "${workspaceFolder:swift-nio-imap}", | ||
"name": "Release NIOIMAPFuzzer", | ||
"program": "${workspaceFolder:swift-nio-imap}/.build/release/NIOIMAPFuzzer", | ||
"preLaunchTask": "swift: Build Release NIOIMAPFuzzer" | ||
}, | ||
{ | ||
"type": "lldb", | ||
"request": "launch", | ||
"args": [], | ||
"cwd": "${workspaceFolder:swift-nio-imap}", | ||
"name": "Debug CLI", | ||
"program": "${workspaceFolder:swift-nio-imap}/.build/debug/CLI", | ||
"preLaunchTask": "swift: Build Debug CLI" | ||
}, | ||
{ | ||
"type": "lldb", | ||
"request": "launch", | ||
"args": [], | ||
"cwd": "${workspaceFolder:swift-nio-imap}", | ||
"name": "Release CLI", | ||
"program": "${workspaceFolder:swift-nio-imap}/.build/release/CLI", | ||
"preLaunchTask": "swift: Build Release CLI" | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.