Skip to content
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
81 changes: 22 additions & 59 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
---
name: CI
# Run on master, tags, or any pull request
on:
schedule:
- cron: '0 2 * * *' # Daily at 2 AM UTC (8 PM CST)
- cron: "0 2 * * *" # Daily at 2 AM UTC (8 PM CST)
push:
branches: [master]
tags: ["*"]
Expand All @@ -15,80 +16,42 @@ jobs:
fail-fast: false
matrix:
version:
- "1.0" # LTS
- "min" # Earliest support version
- "1" # Latest Release
os:
- ubuntu-latest
- macOS-latest
- windows-latest
arch:
- x64
- x86
exclude:
# Test 32-bit only on Linux
- os: macOS-latest
arch: x86
- os: windows-latest
arch: x86
include:
# Add a 1.5 job because that's what Invenia actually uses
- os: ubuntu-latest
version: "1.5"
arch: x64
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: ${{ matrix.version }}
arch: ${{ matrix.arch }}
- uses: actions/cache@v2
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-${{ matrix.arch }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ runner.os }}-${{ matrix.arch }}-test-${{ env.cache-name }}-
${{ runner.os }}-${{ matrix.arch }}-test-
${{ runner.os }}-${{ matrix.arch }}-
${{ runner.os }}-
- uses: julia-actions/julia-buildpkg@latest
- uses: julia-actions/julia-runtest@latest
- uses: julia-actions/cache@v2
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-runtest@v1
- uses: julia-actions/julia-processcoverage@v1
- uses: codecov/codecov-action@v1
with:
file: lcov.info

slack:
name: Notify Slack Failure
needs: test
runs-on: ubuntu-latest
if: always() && github.event_name == 'schedule'
steps:
- uses: technote-space/workflow-conclusion-action@v2
- uses: voxmedia/github-action-slack-notify-build@v1
if: env.WORKFLOW_CONCLUSION == 'failure'
- uses: codecov/codecov-action@v5
with:
channel: nightly-dev
status: FAILED
color: danger
env:
SLACK_BOT_TOKEN: ${{ secrets.DEV_SLACK_BOT_TOKEN }}
files: lcov.info

docs:
name: Documentation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: "1"
- name: ainstall dependencies
shell: julia --color=yes --project=docs {0}
run: |
using Pkg
Pkg.develop(PackageSpec(path=pwd()))
- name: Build docs
uses: julia-actions/julia-docdeploy@v1
with:
version: '1'
- run: |
julia --project=docs -e '
using Pkg
Pkg.develop(PackageSpec(path=pwd()))
Pkg.instantiate()
include("docs/make.jl")'
install-package: false # Avoid instantiating twice
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }}
27 changes: 22 additions & 5 deletions .github/workflows/CompatHelper.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,33 @@
---
name: CompatHelper
on:
pull_request:
paths:
- ".github/workflows/CompatHelper.yml"
schedule:
- cron: '0 0 * * *' # Everyday at midnight
- cron: "0 0 * * *" # Everyday at midnight
workflow_dispatch:
jobs:
CompatHelper:
permissions:
contents: write
pull-requests: write
runs-on: ubuntu-latest
steps:
- name: Pkg.add("CompatHelper")
run: julia -e 'using Pkg; Pkg.add("CompatHelper")'
- name: CompatHelper.main()
- uses: julia-actions/setup-julia@v2
with:
version: "1"
- uses: julia-actions/cache@v2
- name: Install CompatHelper
shell: julia --color=yes {0}
run: |
using Pkg
Pkg.add(PackageSpec(name="CompatHelper", version="3"))
- name: Run CompatHelper
shell: julia --color=yes {0}
run: |
using CompatHelper
CompatHelper.main()
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COMPATHELPER_PRIV: ${{ secrets.DOCUMENTER_KEY }}
run: julia -e 'using CompatHelper; CompatHelper.main()'
44 changes: 27 additions & 17 deletions .github/workflows/JuliaNightly.yml
Original file line number Diff line number Diff line change
@@ -1,29 +1,39 @@
---
name: JuliaNightly
# Nightly Scheduled Julia Nightly Run
on:
pull_request:
paths:
- ".github/workflows/JuliaNightly.yml"
schedule:
- cron: '0 2 * * *' # Daily at 2 AM UTC (8 PM CST)
- cron: "0 2 * * *" # Daily at 2 AM UTC (8 PM CST)
jobs:
test:
name: Julia Nightly - Ubuntu - x64
name: Julia nightly - ubuntu-latest - x64
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: nightly
arch: x64
- uses: actions/cache@v2
env:
cache-name: julia-nightly-cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ env.cache-name }}-
- uses: julia-actions/julia-buildpkg@latest
- uses: julia-actions/julia-runtest@latest
- uses: julia-actions/cache@v2
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-runtest@v1
- uses: julia-actions/julia-processcoverage@v1
- uses: codecov/codecov-action@v1
- uses: codecov/codecov-action@v5
with:
file: lcov.info
files: lcov.info

# Work around having GitHub suspend the scheduled workflow if there is no commit activity
# for the past 60 days. As this repo doesn't get much activity beyond artifact updates
# this can be quite annoying.
keepalive:
name: Keepalive
runs-on: ubuntu-latest
# These permissions are needed to:
# - Keep the workflow alive: https://github.com/marketplace/actions/keepalive-workflow#github-api-keepalive-workflow---default-for-github-actions-users
permissions:
actions: write
steps:
- uses: actions/checkout@v4
- uses: gautamkrishnar/keepalive-workflow@v2
3 changes: 2 additions & 1 deletion .github/workflows/TagBot.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
---
name: TagBot
on:
issue_comment:
Expand All @@ -6,7 +7,7 @@ on:
workflow_dispatch:
jobs:
TagBot:
if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot'
if: ${{ github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot' }}
runs-on: ubuntu-latest
steps:
- uses: JuliaRegistries/TagBot@v1
Expand Down
8 changes: 5 additions & 3 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,15 @@ authors = ["Invenia Technical Computing Corporation"]
version = "0.1.1"

[compat]
Documenter = "0.23, 0.24"
Aqua = "0.8.11"
Test = "1"
YAML = "0.4"
julia = "1"

[extras]
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
YAML = "ddb6d928-2868-570f-bddf-ab3f9cf99eb6"

[targets]
test = ["Documenter", "Test", "YAML"]
test = ["Aqua", "Test", "YAML"]
97 changes: 0 additions & 97 deletions docs/Manifest.toml

This file was deleted.

3 changes: 3 additions & 0 deletions docs/Project.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[deps]
MultilineStrings = "1e8d2bf6-9821-4900-9a2f-4d87552df2bd"
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"

[compat]
Documenter = "1"
19 changes: 7 additions & 12 deletions docs/make.jl
Original file line number Diff line number Diff line change
@@ -1,23 +1,18 @@
using MultilineStrings
using Documenter

const IS_CI = get(ENV, "CI", nothing) == "true"

makedocs(;
modules=[MultilineStrings],
authors="Invenia Technical Computing Corporation",
repo="https://github.com/JuliaStrings/MultilineStrings.jl/blob/{commit}{path}#L{line}",
sitename="MultilineStrings.jl",
format=Documenter.HTML(;
prettyurls=get(ENV, "CI", "false") == "true",
canonical="https://juliastrings.github.io/MultilineStrings.jl",
assets=String[],
),
format=Documenter.HTML(prettyurls=IS_CI),
pages=[
"Home" => "index.md",
],
strict=true,
sitename="MultilineStrings.jl",
checkdocs=:exports,
linkcheck=true,
doctest=true,
)

deploydocs(;
repo="github.com/JuliaStrings/MultilineStrings.jl",
)
IS_CI && deploydocs(; repo="github.com/JuliaStrings/MultilineStrings.jl")
Binary file removed docs/src/assets/logo-dark.png
Binary file not shown.
Binary file removed docs/src/assets/logo.png
Binary file not shown.
Loading
Loading