Skip to content

Commit 585d743

Browse files
InterdisciplinaryPhysicsTeamClaudMorpitmonticone
committed
Create MultilayerGraphs.jl
Co-Authored-By: Claudio Moroni <43729990+ClaudMor@users.noreply.github.com> Co-Authored-By: Pietro Monticone <38562595+pitmonticone@users.noreply.github.com>
0 parents  commit 585d743

35 files changed

+4613
-0
lines changed

.github/FUNDING.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# These are supported funding model platforms
2+
3+
github: [pitmonticone, ClaudMor]

.github/workflows/CI.yml

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: CI
2+
on:
3+
push:
4+
branches:
5+
- main
6+
tags: '*'
7+
pull_request:
8+
concurrency:
9+
# Skip intermediate builds: always.
10+
# Cancel intermediate builds: only if it is a pull request build.
11+
group: ${{ github.workflow }}-${{ github.ref }}
12+
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
13+
jobs:
14+
test:
15+
name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }}
16+
runs-on: ${{ matrix.os }}
17+
strategy:
18+
fail-fast: false
19+
matrix:
20+
version:
21+
- '1.7'
22+
- 'nightly'
23+
os:
24+
- ubuntu-latest
25+
- macOS-latest
26+
- windows-latest
27+
arch:
28+
- x64
29+
steps:
30+
- uses: actions/checkout@v2
31+
- uses: julia-actions/setup-julia@v1
32+
with:
33+
version: ${{ matrix.version }}
34+
arch: ${{ matrix.arch }}
35+
- uses: actions/cache@v1
36+
env:
37+
cache-name: cache-artifacts
38+
with:
39+
path: ~/.julia/artifacts
40+
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
41+
restore-keys: |
42+
${{ runner.os }}-test-${{ env.cache-name }}-
43+
${{ runner.os }}-test-
44+
${{ runner.os }}-
45+
- uses: julia-actions/julia-buildpkg@v1
46+
- uses: julia-actions/julia-runtest@v1
47+
- uses: julia-actions/julia-processcoverage@v1
48+
- uses: codecov/codecov-action@v2
49+
with:
50+
token: ${{ secrets.CODECOV_TOKEN }}
51+
files: lcov.info
52+
- uses: coverallsapp/github-action@v1.1.2
53+
with:
54+
github-token: ${{ github.token }}
55+
path-to-lcov: lcov.info
56+
docs:
57+
name: Documentation
58+
runs-on: ubuntu-latest
59+
steps:
60+
- uses: actions/checkout@v2
61+
- uses: julia-actions/setup-julia@v1
62+
with:
63+
version: '1'
64+
- uses: julia-actions/julia-buildpkg@v1
65+
- uses: julia-actions/julia-docdeploy@v1
66+
env:
67+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
68+
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }}
69+
- run: |
70+
julia --project=docs -e '
71+
using Documenter: DocMeta, doctest
72+
using MultilayerGraphs
73+
DocMeta.setdocmeta!(MultilayerGraphs, :DocTestSetup, :(using MultilayerGraphs); recursive=true)
74+
doctest(MultilayerGraphs)'

.github/workflows/CompatHelper.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
name: CompatHelper
2+
on:
3+
schedule:
4+
- cron: 0 0 * * *
5+
workflow_dispatch:
6+
jobs:
7+
CompatHelper:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- name: Pkg.add("CompatHelper")
11+
run: julia -e 'using Pkg; Pkg.add("CompatHelper")'
12+
- name: CompatHelper.main()
13+
env:
14+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
15+
COMPATHELPER_PRIV: ${{ secrets.DOCUMENTER_KEY }}
16+
run: julia -e 'using CompatHelper; CompatHelper.main()'
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
name: Register Package
2+
on:
3+
workflow_dispatch:
4+
inputs:
5+
version:
6+
description: Version to register or component to bump
7+
required: true
8+
jobs:
9+
register:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: julia-actions/RegisterAction@latest
13+
with:
14+
token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/TagBot.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
name: TagBot
2+
on:
3+
issue_comment:
4+
types:
5+
- created
6+
workflow_dispatch:
7+
jobs:
8+
TagBot:
9+
if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot'
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: JuliaRegistries/TagBot@v1
13+
with:
14+
token: ${{ secrets.GITHUB_TOKEN }}
15+
ssh: ${{ secrets.DOCUMENTER_KEY }}

.gitignore

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Files generated by invoking Julia with --code-coverage
2+
*.jl.cov
3+
*.jl.*.cov
4+
5+
# Files generated by invoking Julia with --track-allocation
6+
*.jl.mem
7+
8+
# System-specific files and directories generated by the BinaryProvider and BinDeps packages
9+
# They contain absolute paths specific to the host computer, and so should not be committed
10+
deps/deps.jl
11+
deps/build.log
12+
deps/downloads/
13+
deps/usr/
14+
deps/src/
15+
16+
# Development environment files and directories
17+
dev/
18+
19+
# Chekpoint files
20+
.DS_Store
21+
22+
# Build artifacts for creating documentation generated by the Documenter package
23+
docs/build/
24+
docs/site/
25+
26+
# File generated by Pkg, the package manager, based on a corresponding Project.toml
27+
# It records a fixed state of all packages used by the project. As such, it should not be
28+
# committed for packages, but should be committed for applications that require a static
29+
# environment.
30+
Manifest.toml

CITATION.bib

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
@software{Monticone_Moroni_MultilayerGraphs_2022,
2+
abstract = {A Julia package for the construction, manipulation and analysis of multilayer graphs.},
3+
author = {Monticone, Pietro and Moroni, Claudio},
4+
doi = {XX.XXXX/zenodo.XXXXXXX},
5+
institution = {University of Turin (UniTO)},
6+
keywords = {Julia Language, Julia Package, Graph Theory, Applied Graph Theory, Network Theory, Network Science, Graphs, Multilayer Graphs, Multilevel Graphs, Hierarchical Graphs, Networks, Multilayer Networks, Multilevel Networks, Hierarchical Networks, Complexity, Complex Systems},
7+
license = {MIT},
8+
organization = {Interdisciplinary Physics Team (InPhyT)},
9+
title = {MultilayerGraphs.jl},
10+
url = {https://doi.org/XX.XXXX/zenodo.XXXXXXX},
11+
year = {2022}
12+
}

JULIA_CITATION.bib

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
@misc{besard2018juliagpu,
2+
doi = {10.1109/TPDS.2018.2872064},
3+
primaryClass = {cs.PL},
4+
author = {Besard, Tim and Foket, Christophe and De Sutter, Bjorn},
5+
issn = {1045-9219},
6+
eprint = {1712.03112},
7+
year = {2018},
8+
url = {https://arxiv.org/abs/1712.03112},
9+
journal = {IEEE Transactions on Parallel and Distributed Systems},
10+
archivePrefix = {arXiv},
11+
title = {Effective Extensible Programming: Unleashing {Julia} on {GPUs}}
12+
}
13+
14+
@article{besard2019prototyping,
15+
publisher = {Elsevier},
16+
pages = {29--46},
17+
author = {Besard, Tim and Churavy, Valentin and Edelman, Alan and De Sutter, Bjorn},
18+
year = {2019},
19+
volume = {132},
20+
journal = {Advances in Engineering Software},
21+
title = {Rapid software prototyping for heterogeneous and distributed platforms}
22+
}
23+
24+
@misc{Graphs2021,
25+
author = {Fairbanks, James and Besan{\c{e}}on, Mathieu and Simon, Sch{\"o}lly and Hoffiman, J{\'u}lio and Eubank, Nick and Karpinski, Stefan},
26+
year = {2021},
27+
url = {https://github.com/JuliaGraphs/Graphs.jl/},
28+
title = {JuliaGraphs/Graphs.jl: an optimized graphs package for the Julia programming language}
29+
}
30+
31+
@article{LLVM.jl-2017,
32+
doi = {10.1109/TPDS.2018.2872064},
33+
author = {Besard, Tim and Foket, Christophe and De Sutter, Bjorn},
34+
issn = {1045-9219},
35+
year = {2018},
36+
journal = {IEEE Transactions on Parallel and Distributed Systems},
37+
title = {Effective Extensible Programming: Unleashing {Julia} on {GPUs}}
38+
}

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2022 Interdisciplinary Physics Team (InPhyT)
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

Project.toml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name = "MultilayerGraphs"
2+
uuid = "af984530-d72f-4904-8b81-b992bbbeaf3f"
3+
authors = ["Pietro Monticone <38562595+pitmonticone@users.noreply.github.com>", "Claudio Moroni <43729990+ClaudMor@users.noreply.github.com>"]
4+
version = "0.1.0"
5+
6+
[deps]
7+
DataStructures = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
8+
Graphs = "86223c79-3864-5bf0-83f7-82e725a168b6"
9+
InteractiveUtils = "b77e0a4c-d291-57a0-90e8-8db25a27a240"
10+
IterTools = "c8e1da08-722c-5040-9ed9-7db0dc04731e"
11+
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
12+
MetaGraphs = "626554b9-1ddb-594c-aa3c-2596fe9399a5"
13+
OMEinsum = "ebe7aa44-baf0-506c-a96f-8464559b3922"
14+
PkgCite = "50d0efc5-baaf-4329-a409-faca2d9bd902"
15+
SimpleTraits = "699a6c99-e7fa-54fc-8d76-47d257e15c1d"
16+
SimpleValueGraphs = "b43c691f-cac2-5415-8122-396fe16a49fc"
17+
SimpleWeightedGraphs = "47aef6b3-ad0c-573a-a1e2-d07658019622"
18+
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
19+
Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
20+
TensorOperations = "6aa20fa7-93e2-5fca-9bc0-fbd0db3c71a2"
21+
22+
[compat]
23+
julia = "1.7"

0 commit comments

Comments
 (0)