Skip to content

Commit

Permalink
Update to Apodini 0.4.0, add REUSE conformance, and add documentation (
Browse files Browse the repository at this point in the history
  • Loading branch information
PSchmiedmayer authored Aug 22, 2021
1 parent 8907734 commit 09e0cfb
Show file tree
Hide file tree
Showing 25 changed files with 816 additions and 132 deletions.
22 changes: 15 additions & 7 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,24 @@
<!--
This source file is part of the Apodini AnalystPresenter open source project
SPDX-FileCopyrightText: 2021 Paul Schmiedmayer and the project authors (see CONTRIBUTORS.md) <[email protected]>
SPDX-License-Identifier: MIT
-->

# *Name of the PR*

## :recycle: Current situation
## :recycle: Current situation & Problem
*Describe the current situation (if possible with and exemplary (or real) code snippet and/or where this is used)*

## :bulb: Proposed solution
*Describe the solution (if possible with and exemplary (or real) code snippet)*

### Problem that is solved
*Provide a description and link issues that are solved*
*Describe the solution and how this affects the project and internal structure*

### Implications
*Describe the implications, e.g. refactoring*
## :gear: Release Notes
*Add a short summary of the feature as well as possible migration guides if this is a breaking change so this section can be added to the release notes.*
*Include code snippets that provide examples of the feature implemented if it appends or changes the public interface.*

## :heavy_plus_sign: Additional Information
*Provide some additional information if possible*
Expand Down
20 changes: 15 additions & 5 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,30 @@
#
# This source file is part of the Apodini AnalystPresenter open source project
#
# SPDX-FileCopyrightText: 2021 Paul Schmiedmayer and the project authors (see CONTRIBUTORS.md) <[email protected]>
#
# SPDX-License-Identifier: MIT
#

branches: [release]
name-template: '$NEXT_PATCH_VERSION'
tag-template: '$NEXT_PATCH_VERSION'
categories:
- title: '🚀 Features'
- title: 'Semantic Version Major'
labels:
- 'needs version bump'
- title: 'Semantic Version Minor'
labels:
- 'feature'
- 'enhancement'
- title: '🐛 Bug Fixes'
- title: 'Other Changes'
labels:
- 'fix'
- 'bugfix'
- 'bug'
- title: '🧰 Maintenance'
label: 'chore'
- 'documentation'
change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
template: |
## Changes
$CHANGES
$CHANGES
50 changes: 25 additions & 25 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
@@ -1,47 +1,52 @@
#
# This source file is part of the Apodini AnalystPresenter open source project
#
# SPDX-FileCopyrightText: 2021 Paul Schmiedmayer and the project authors (see CONTRIBUTORS.md) <[email protected]>
#
# SPDX-License-Identifier: MIT
#

name: Build and Test

on:
push:
branches:
- develop
- release
pull_request:
branches:
- develop
- release
workflow_dispatch:

jobs:
latest-beta-swift-version:
name: Latest (Beta) Swift Version
builddocs:
name: Build Docs
runs-on: macos-11
steps:
- uses: actions/checkout@v2
- uses: maxim-lobanov/[email protected]
with:
xcode-version: latest
- uses: actions/cache@v2
with:
path: .build
key: ${{ runner.os }}-spm-${{ hashFiles('**/Package.resolved') }}
- name: Check Xcode version
run: xcodebuild -version
- name: Check Swift version
run: swift --version
- name: Debug Build & Test
run: swift test
- name: Test Generating Docs
run: |
xcodebuild docbuild -scheme ApodiniAnalystPresenter -destination platform=macOS,arch=x86_64 -derivedDataPath ./.xcodebuild
cp -r $(find ./.xcodebuild -type d -name 'ApodiniAnalystPresenter.doccarchive') ./ApodiniAnalystPresenter.doccarchive
echo "The DocC archive can be found at ./ApodiniAnalystPresenter.doccarchive"
macos:
name: macOS ${{ matrix.configuration }}
runs-on: macos-11
strategy:
fail-fast: false
matrix:
configuration: [debug, release, release_testing]
configuration: [debug, release]
steps:
- uses: actions/checkout@v2
- uses: maxim-lobanov/[email protected]
with:
xcode-version: latest-stable
xcode-version: latest
- uses: actions/cache@v2
with:
path: .build
Expand All @@ -53,27 +58,19 @@ jobs:
- name: Release Build
if: matrix.configuration == 'release'
run: swift build -c release
- name: Release Build & Test
if: matrix.configuration == 'release_testing'
run: swift test -c release -Xswiftc -enable-testing -Xswiftc -DRELEASE_TESTING
- name: Debug Build & Test
if: matrix.configuration == 'debug'
run: swift test -c debug --enable-code-coverage -Xswiftc -DCOVERAGE
- name: Convert coverage report
- name: Debug Build
if: matrix.configuration == 'debug'
run: xcrun llvm-cov export -format="lcov" .build/debug/ApodiniAnalystPresenterPackageTests.xctest/Contents/MacOS/ApodiniAnalystPresenterPackageTests -instr-profile .build/debug/codecov/default.profdata > coverage.lcov
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
run: swift build -c debug
linux:
name: Linux ${{ matrix.linux }} ${{ matrix.configuration }}
container:
image: swift:${{ matrix.linux }}
image: swiftlang/swift:nightly-5.5-${{ matrix.linux }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
linux: [bionic, xenial, focal, amazonlinux2, centos8]
configuration: [debug, release]
linux: [bionic, focal, amazonlinux2, centos8]
configuration: [debug, release, release_testing]
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v2
Expand All @@ -85,6 +82,9 @@ jobs:
- name: Release Build
if: matrix.configuration == 'release'
run: swift build -c release
- name: Release Build & Test
if: matrix.configuration == 'release_testing'
run: swift test -c release -Xswiftc -enable-testing
- name: Debug Build & Test
if: matrix.configuration == 'debug'
run: swift test -c debug
14 changes: 12 additions & 2 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,21 @@
name: Publish Documentation
#
# This source file is part of the Apodini AnalystPresenter open source project
#
# SPDX-FileCopyrightText: 2021 Paul Schmiedmayer and the project authors (see CONTRIBUTORS.md) <[email protected]>
#
# SPDX-License-Identifier: MIT
#

name: Generate Docs

on:
release:
types: [published]
workflow_dispatch:

jobs:
deploy_docs:
generatedocs:
name: Generate Docs
runs-on: macos-11
steps:
- uses: actions/checkout@v2
Expand Down
10 changes: 9 additions & 1 deletion .github/workflows/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,17 @@
#
# This source file is part of the Apodini AnalystPresenter open source project
#
# SPDX-FileCopyrightText: 2021 Paul Schmiedmayer and the project authors (see CONTRIBUTORS.md) <[email protected]>
#
# SPDX-License-Identifier: MIT
#

name: Release Drafter

on:
push:
branches:
- release
- develop

jobs:
update_release_draft:
Expand Down
10 changes: 9 additions & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
#
# This source file is part of the Apodini AnalystPresenter open source project
#
# SPDX-FileCopyrightText: 2021 Paul Schmiedmayer and the project authors (see CONTRIBUTORS.md) <[email protected]>
#
# SPDX-License-Identifier: MIT
#

name: Create Release

on:
Expand All @@ -9,7 +17,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- name: GH Release
- name: Create GitHub Release
uses: softprops/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.ACCESS_TOKEN }}
22 changes: 22 additions & 0 deletions .github/workflows/reuseaction.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#
# This source file is part of the Apodini AnalystPresenter open source project
#
# SPDX-FileCopyrightText: 2021 Paul Schmiedmayer and the project authors (see CONTRIBUTORS.md) <[email protected]>
#
# SPDX-License-Identifier: MIT
#

name: REUSE Compliance Check

on:
pull_request:
workflow_dispatch:

jobs:
reuse:
name: REUSE Compliance Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: REUSE Compliance Check
uses: fsfe/reuse-action@v1
17 changes: 14 additions & 3 deletions .github/workflows/spm-update.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
#
# This source file is part of the Apodini AnalystPresenter open source project
#
# SPDX-FileCopyrightText: 2021 Paul Schmiedmayer and the project authors (see CONTRIBUTORS.md) <[email protected]>
#
# SPDX-License-Identifier: MIT
#

name: Swift Package Update

on:
Expand All @@ -8,6 +16,8 @@ on:
jobs:
createPR:
name: Create Pull Request
container:
image: swiftlang/swift:nightly-5.5-focal
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
Expand All @@ -24,6 +34,7 @@ jobs:
delete-branch: true
base: develop
branch: bots/update-dependencies
assignees: PSchmiedmayer
committer: PSchmiedmayer <[email protected]>
author: PSchmiedmayer <[email protected]>
assignees: ApodiniBot
committer: ApodiniBot <[email protected]>
author: ApodiniBot <[email protected]>
reviewers: PSchmiedmayer
16 changes: 11 additions & 5 deletions .github/workflows/swiftlint.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,25 @@
#
# This source file is part of the Apodini AnalystPresenter open source project
#
# SPDX-FileCopyrightText: 2021 Paul Schmiedmayer and the project authors (see CONTRIBUTORS.md) <[email protected]>
#
# SPDX-License-Identifier: MIT
#

name: SwiftLint

on:
pull_request:
paths:
- '.github/workflows/swiftlint.yml'
- '.swiftlint.yml'
- '**/*.swift'
workflow_dispatch:

jobs:
swiftlint:
name: SwiftLint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: GitHub Action for SwiftLint
uses: norio-nomura/action-swiftlint@3.1.0
uses: norio-nomura/action-swiftlint@3.2.1
with:
args: --strict
env:
Expand Down
23 changes: 17 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,19 +1,30 @@
#
# This source file is part of the Apodini AnalystPresenter open source project
#
# SPDX-FileCopyrightText: 2021 Paul Schmiedmayer and the project authors (see CONTRIBUTORS.md) <[email protected]>
#
# SPDX-License-Identifier: MIT
#

# Apodini .gitignore File

# Swift Package Manager
Package.resolved
*.xcodeproj
.swiftpm
.build/

# IDE related folders
.idea

# Xcode User settings
xcuserdata/

# Other files
.DS_Store
.env

# Fastlane
fastlane/report.xml
fastlane/Preview.html
fastlane/screenshots/**/*.png
fastlane/test_output
# Documentation generation
.xcodebuild/
docs/
docc2html/
*.doccarchive
8 changes: 8 additions & 0 deletions .jazzy.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
#
# This source file is part of the Apodini AnalystPresenter open source project
#
# SPDX-FileCopyrightText: 2021 Paul Schmiedmayer and the project authors (see CONTRIBUTORS.md) <[email protected]>
#
# SPDX-License-Identifier: MIT
#

module: ApodiniAnalystPresenter
author: Paul Schmiedmayer
theme: fullwidth
Expand Down
Loading

0 comments on commit 09e0cfb

Please sign in to comment.