Skip to content

Commit 6ca7076

Browse files
committed
Setup
1 parent 48dbf35 commit 6ca7076

14 files changed

Lines changed: 218 additions & 1 deletion

.JuliaFormatter.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
style = "blue"

.github/dependabot.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
2+
version: 2
3+
updates:
4+
- package-ecosystem: "github-actions"
5+
directory: "/" # Location of package manifests
6+
schedule:
7+
interval: "weekly"
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: Documentation
2+
3+
on:
4+
push:
5+
branches:
6+
- main # update to match your development branch (master, main, dev, trunk, ...)
7+
tags: '*'
8+
pull_request:
9+
10+
jobs:
11+
build:
12+
permissions:
13+
contents: write
14+
pull-requests: read
15+
statuses: write
16+
runs-on: ubuntu-latest
17+
steps:
18+
- uses: actions/checkout@v4
19+
- uses: julia-actions/setup-julia@v2
20+
with:
21+
version: '1'
22+
- uses: julia-actions/cache@v2
23+
- name: Install dependencies
24+
run: julia --project=docs/ -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate()'
25+
- name: Build and deploy
26+
env:
27+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # If authenticating with GitHub Actions token
28+
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }} # If authenticating with SSH deploy key
29+
run: julia --project=docs/ docs/make.jl

.github/workflows/TagBot.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: TagBot
2+
on:
3+
issue_comment:
4+
types:
5+
- created
6+
workflow_dispatch:
7+
inputs:
8+
lookback:
9+
default: "3"
10+
permissions:
11+
actions: read
12+
checks: read
13+
contents: write
14+
deployments: read
15+
issues: read
16+
discussions: read
17+
packages: read
18+
pages: read
19+
pull-requests: read
20+
repository-projects: read
21+
security-events: read
22+
statuses: read
23+
jobs:
24+
TagBot:
25+
if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot'
26+
runs-on: ubuntu-latest
27+
steps:
28+
- uses: JuliaRegistries/TagBot@v1
29+
with:
30+
token: ${{ secrets.GITHUB_TOKEN }}
31+
# Edit the following line to reflect the actual name of the GitHub Secret containing your private key
32+
ssh: ${{ secrets.DOCUMENTER_KEY }}
33+
# ssh: ${{ secrets.NAME_OF_MY_SSH_PRIVATE_KEY_SECRET }}

.github/workflows/Test.yml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Test
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
9+
# needed to allow julia-actions/cache to delete old caches that it has created
10+
permissions:
11+
actions: write
12+
contents: read
13+
14+
jobs:
15+
test:
16+
runs-on: ubuntu-latest
17+
strategy:
18+
matrix:
19+
julia-version: ['1.6', '1']
20+
21+
steps:
22+
- uses: actions/checkout@v4
23+
- uses: julia-actions/setup-julia@v2
24+
with:
25+
version: ${{ matrix.julia-version }}
26+
arch: x64
27+
- uses: julia-actions/cache@v2
28+
- uses: julia-actions/julia-buildpkg@v1
29+
- uses: julia-actions/julia-runtest@v1
30+
- uses: julia-actions/julia-processcoverage@v1
31+
- uses: codecov/codecov-action@v4
32+
with:
33+
files: lcov.info
34+
token: ${{ secrets.CODECOV_TOKEN }}
35+
fail_ci_if_error: false

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ deps/src/
1616
# Build artifacts for creating documentation generated by the Documenter package
1717
docs/build/
1818
docs/site/
19+
docs/src/index.md
1920

2021
# File generated by Pkg, the package manager, based on a corresponding Project.toml
2122
# It records a fixed state of all packages used by the project. As such, it should not be

Project.toml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
name = "SparseMatrixColorings"
2+
uuid = "0a514795-09f3-496d-8182-132a7b665d35"
3+
authors = ["Guillaume Dalle <22795598+gdalle@users.noreply.github.com>"]
4+
version = "0.1.0"
5+
6+
[deps]
7+
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
8+
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
9+
10+
[compat]
11+
Random = "1"
12+
SparseArrays = "1"
13+
julia = "1.6"

README.md

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,27 @@
11
# SparseMatrixColorings.jl
2-
Coloring algorithms for sparse Jacobian and Hessian matrices
2+
3+
[![Build Status](https://github.com/gdalle/SparseMatrixColorings.jl/actions/workflows/Test.yml/badge.svg?branch=main)](https://github.com/gdalle/SparseMatrixColorings.jl/actions/workflows/Test.yml?query=branch%3Amain)
4+
[![Dev Documentation](https://img.shields.io/badge/docs-dev-blue.svg)](https://gdalle.github.io/SparseMatrixColorings.jl/dev/)
5+
[![Coverage](https://codecov.io/gh/gdalle/SparseMatrixColorings.jl/branch/main/graph/badge.svg)](https://app.codecov.io/gh/gdalle/SparseMatrixColorings.jl)
6+
[![Code Style: Blue](https://img.shields.io/badge/code%20style-blue-4495d1.svg)](https://github.com/JuliaDiff/BlueStyle)
7+
8+
Coloring algorithms for sparse Jacobian and Hessian matrices.
9+
10+
## Getting started
11+
12+
To install this package, run the following in a Julia Pkg REPL:
13+
14+
```julia
15+
pkg> add https://github.com/gdalle/SparseMatrixColorings.jl
16+
```
17+
18+
## Background
19+
20+
The algorithms implemented in this package are all taken from the following survey:
21+
22+
> [_What Color Is Your Jacobian? Graph Coloring for Computing Derivatives_](https://epubs.siam.org/doi/10.1137/S0036144504444711), Gebremedhin et al. (2005)
23+
24+
## Alternatives
25+
26+
- [ColPack.jl](https://github.com/michel2323/ColPack.jl)
27+
- [SparseDiffTools.jl](https://github.com/JuliaDiff/SparseDiffTools.jl)

docs/Project.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[deps]
2+
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
3+
SparseMatrixColorings = "0a514795-09f3-496d-8182-132a7b665d35"

docs/make.jl

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
using Documenter
2+
using SparseMatrixColorings
3+
4+
cp(joinpath(@__DIR__, "..", "README.md"), joinpath(@__DIR__, "src", "index.md"); force=true)
5+
6+
makedocs(;
7+
modules=[SparseMatrixColorings],
8+
authors="Guillaume Dalle",
9+
sitename="SparseMatrixColorings.jl",
10+
format=Documenter.HTML(),
11+
pages=["Home" => "index.md", "API reference" => "api.md"],
12+
)
13+
14+
deploydocs(; repo="github.com/gdalle/SparseMatrixColorings.jl", devbranch="main")

0 commit comments

Comments
 (0)