diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..cffa8ae
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,87 @@
+name: CI
+
+on:
+ push:
+ branches:
+ - master
+ - "issue*"
+ pull_request:
+ branches:
+ - master
+ workflow_dispatch:
+
+permissions:
+ contents: read
+
+concurrency:
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: true
+
+jobs:
+ linux:
+ name: Linux / Swift ${{ matrix.swift }}
+ runs-on: ubuntu-24.04
+ timeout-minutes: 30
+
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - swift: 4.0.3
+ image: 4.0.3
+ - swift: 4.1.3
+ image: 4.1.3
+ - swift: 4.2.4
+ image: 4.2.4
+ - swift: 5.0.3
+ image: 5.0.3-xenial
+ - swift: 5.1
+ image: "5.1"
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v6
+
+ - name: Build and test
+ run: |
+ set -euo pipefail
+ uid="$(id -u)"
+ gid="$(id -g)"
+
+ docker run --rm \
+ --user "${uid}:${gid}" \
+ -v "${PWD}:/workspace" \
+ -w /workspace \
+ swift:${{ matrix.image }} \
+ bash -lc '
+ set -euo pipefail
+ tmp_home="$(mktemp -d)"
+ resolved_tmp_home="$(realpath "${tmp_home}")"
+ if [[ -z "${resolved_tmp_home}" || "${resolved_tmp_home}" == "/" || "${resolved_tmp_home}" != /tmp/* || ! -d "${resolved_tmp_home}" ]]; then
+ echo "Failed to create a temporary HOME directory." >&2
+ exit 1
+ fi
+ readonly resolved_tmp_home
+ export HOME="${resolved_tmp_home}"
+ cleanup() { rm -rf -- "${resolved_tmp_home}"; }
+ trap cleanup EXIT
+ swift --version
+ swift build
+ swift test
+ '
+
+ macos:
+ name: macOS / default Swift
+ runs-on: macos-latest
+ timeout-minutes: 30
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v6
+
+ - name: Build and test
+ run: |
+ set -euo pipefail
+ swift --version
+ swift build
+ swift test
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 4395f27..0000000
--- a/.travis.yml
+++ /dev/null
@@ -1,72 +0,0 @@
-# Travis CI build file.
-
-# whitelist (branches that should be built)
-branches:
- only:
- - master
- - /^issue.*$/
-
-# the matrix of builds should cover each combination of Swift version
-# and platform that is supported. The version of Swift used is specified
-# by .swift-version, unless SWIFT_SNAPSHOT is specified.
-matrix:
- include:
- - os: linux
- dist: xenial
- sudo: required
- services: docker
- env: DOCKER_IMAGE=swift:4.0.3 SWIFT_SNAPSHOT=4.0.3
- - os: linux
- dist: xenial
- sudo: required
- services: docker
- env: DOCKER_IMAGE=swift:4.1.3 SWIFT_SNAPSHOT=4.1.3
- - os: linux
- dist: xenial
- sudo: required
- services: docker
- env: DOCKER_IMAGE=swift:4.2.4 SWIFT_SNAPSHOT=4.2.4
- - os: linux
- dist: xenial
- sudo: required
- services: docker
- env: DOCKER_IMAGE=swift:5.0.3-xenial SWIFT_SNAPSHOT=5.0.3
- - os: linux
- dist: xenial
- sudo: required
- services: docker
- env: DOCKER_IMAGE=swift:5.1
- - os: linux
- dist: xenial
- sudo: required
- services: docker
- env: DOCKER_IMAGE=swift:5.1 SWIFT_SNAPSHOT=$SWIFT_DEVELOPMENT_SNAPSHOT
- - os: osx
- osx_image: xcode9.2
- sudo: required
- env: SWIFT_SNAPSHOT=4.0.3
- - os: osx
- osx_image: xcode9.4
- sudo: required
- env: SWIFT_SNAPSHOT=4.1.2
- - os: osx
- osx_image: xcode10.1
- sudo: required
- env: SWIFT_SNAPSHOT=4.2.1
- - os: osx
- osx_image: xcode10.2
- sudo: required
- env: SWIFT_SNAPSHOT=5.0.1 JAZZY_ELIGIBLE=true
- - os: osx
- osx_image: xcode11
- sudo: required
- - os: osx
- osx_image: xcode11
- sudo: required
- env: SWIFT_SNAPSHOT=$SWIFT_DEVELOPMENT_SNAPSHOT
-
-before_install:
- - git clone https://github.com/Kitura/Package-Builder.git
-
-script:
- - ./Package-Builder/build-package.sh -projectDir $TRAVIS_BUILD_DIR
diff --git a/README.md b/README.md
index 8d00cc9..cf0a714 100644
--- a/README.md
+++ b/README.md
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/docsets/KituraCache.docset/Contents/Resources/Documents/index.html b/docs/docsets/KituraCache.docset/Contents/Resources/Documents/index.html
index 852d7eb..e617d09 100644
--- a/docs/docsets/KituraCache.docset/Contents/Resources/Documents/index.html
+++ b/docs/docsets/KituraCache.docset/Contents/Resources/Documents/index.html
@@ -82,8 +82,8 @@
-
-
+
+
diff --git a/docs/index.html b/docs/index.html
index 852d7eb..e617d09 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -82,8 +82,8 @@
-
-
+
+