From c8a4f5882e09c5a9784a254bed1ada9dbbe9b912 Mon Sep 17 00:00:00 2001 From: Pascal Aellig Date: Tue, 27 Feb 2024 11:31:03 +0100 Subject: [PATCH 1/6] add contributing --- CONTRIBUTING.md | 54 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..2d3d08cc --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,54 @@ +# Contributing + +GeophysicalModelGenerator.jl is an open-source project and we are very happy to accept contributions +from the community. Please feel free to open issues or submit patches (preferably +as pull requests) any time. For planned larger contributions, it is often +beneficial to get in contact with one of the principal developers first (see +[AUTHORS.md](AUTHORS.md)). + +GeophysicalModelGenerator.jl and its contributions are licensed under the MIT license (see +[LICENSE.md](LICENSE.md)). As a contributor, you certify that all your +contributions are in conformance with the *Developer Certificate of Origin +(Version 1.1)*, which is reproduced below. + +## Developer Certificate of Origin (Version 1.1) +The following text was taken from +[https://developercertificate.org](https://developercertificate.org): + + Developer Certificate of Origin + Version 1.1 + + Copyright (C) 2004, 2006 The Linux Foundation and its contributors. + 1 Letterman Drive + Suite D4700 + San Francisco, CA, 94129 + + Everyone is permitted to copy and distribute verbatim copies of this + license document, but changing it is not allowed. + + + Developer's Certificate of Origin 1.1 + + By making a contribution to this project, I certify that: + + (a) The contribution was created in whole or in part by me and I + have the right to submit it under the open source license + indicated in the file; or + + (b) The contribution is based upon previous work that, to the best + of my knowledge, is covered under an appropriate open source + license and I have the right under that license to submit that + work with modifications, whether created in whole or in part + by me, under the same open source license (unless I am + permitted to submit under a different license), as indicated + in the file; or + + (c) The contribution was provided directly to me by some other + person who certified (a), (b) or (c) and I have not modified + it. + + (d) I understand and agree that this project and the contribution + are public and that a record of the contribution (including all + personal information I submit with it, including my sign-off) is + maintained indefinitely and may be redistributed consistent with + this project or the open source license(s) involved. From ae63e725b69b9004b1ae2ba8f696639fad1ecf28 Mon Sep 17 00:00:00 2001 From: Pascal Aellig Date: Tue, 27 Feb 2024 12:10:08 +0100 Subject: [PATCH 2/6] add orcid --- docs/paper/paper.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/paper/paper.md b/docs/paper/paper.md index 02aae798..b250d2b3 100644 --- a/docs/paper/paper.md +++ b/docs/paper/paper.md @@ -20,13 +20,13 @@ authors: orcid: 0000-0002-3615-5923 affiliation: 3 - name: Pascal Aellig - #orcid: 0000-0003-1185-3730 + orcid: 0009-0008-9039-5646 affiliation: 1 - name: Jacob Frasukiewicz #orcid: 0000-0003-1185-3730 affiliation: 1 affiliations: - - name: Johannes Gutenberg University Mainz, Germany + - name: Johannes Gutenberg University Mainz, Germany index: 1 - name: University of Bayreuth, Germany index: 2 @@ -116,4 +116,4 @@ Figure sizes can be customized by adding an optional second parameter: We acknowledge contributions from Brigitta Sipocz, Syrtis Major, and Semyeong Oh, and support from Kathryn Johnston during the genesis of this project. -# References \ No newline at end of file +# References From 35e82e298486de8643ecdda6076dc066321dd5ca Mon Sep 17 00:00:00 2001 From: Pascal Aellig Date: Tue, 27 Feb 2024 12:10:24 +0100 Subject: [PATCH 3/6] update docs --- AUTHORS.md | 25 +++++++++ CODE_OF_CONDUCT.md | 131 +++++++++++++++++++++++++++++++++++++++++++++ docs/make.jl | 41 ++++++++++++-- 3 files changed, 193 insertions(+), 4 deletions(-) create mode 100644 AUTHORS.md create mode 100644 CODE_OF_CONDUCT.md diff --git a/AUTHORS.md b/AUTHORS.md new file mode 100644 index 00000000..c5c6b37e --- /dev/null +++ b/AUTHORS.md @@ -0,0 +1,25 @@ +# Authors + +GeophysicalModelGenerator.jl's development is coordinated by a group of *principal developers*, +who are also its main contributors and who can be contacted in case of +questions about GeophysicalModelGenerator.jl. In addition, there are *contributors* who have +provided substantial additions or modifications. Together, these two groups form +"The GeophysicalModelGenerator.jl Authors" as mentioned in the [LICENSE.md](LICENSE.md) file. + +## Principal Developers +* [Boris Kaus](https://www.geosciences.uni-mainz.de/geophysics-and-geodynamics/team/univ-prof-dr-boris-kaus/), + Johannes Gutenberg University Mainz, Germany +* [Marcel Thielmann](https://www.staff.uni-bayreuth.de/~bt303651/), + Bayrisches Geoinstitut, University of Bayreuth, Germany + + +## Contributors +The following people contributed major additions or modifications to GeophysicalModelGenerator.jl and +are listed in alphabetical order: + +* Pascal Aellig +* Luca De Siena +* Andrea Piccolo +* Christian Schuler +* Arne Spang +* Tatjana Weiler diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 00000000..37e79e31 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,131 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, religion, or sexual identity +and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +* Demonstrating empathy and kindness toward other people +* Being respectful of differing opinions, viewpoints, and experiences +* Giving and gracefully accepting constructive feedback +* Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +* Focusing on what is best not just for us as individuals, but for the + overall community + +Examples of unacceptable behavior include: + +* The use of sexualized language or imagery, and sexual attention or + advances of any kind +* Trolling, insulting or derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or email + address, without their explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to +[Michael Schlottke-Lakemper](mailto:m.schlottke-lakemper@acom.rwth-aachen.de), +[Hendrik Ranocha](mailto:mail@ranocha.de), +or any other of the principal developers responsible for enforcement listed in +[AUTHORS.md](AUTHORS.md). +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +**Community Impact**: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +**Consequence**: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +**Community Impact**: A violation through a single incident or series +of actions. + +**Consequence**: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or +permanent ban. + +### 3. Temporary Ban + +**Community Impact**: A serious violation of community standards, including +sustained inappropriate behavior. + +**Consequence**: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +**Community Impact**: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals. + +**Consequence**: A permanent ban from any sort of public interaction within +the community. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], +version 2.0, available at +https://www.contributor-covenant.org/version/2/0/code_of_conduct.html. + +Community Impact Guidelines were inspired by [Mozilla's code of conduct +enforcement ladder](https://github.com/mozilla/diversity). + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see the FAQ at +https://www.contributor-covenant.org/faq. Translations are available at +https://www.contributor-covenant.org/translations. diff --git a/docs/make.jl b/docs/make.jl index c01b742c..bbc8073c 100644 --- a/docs/make.jl +++ b/docs/make.jl @@ -4,6 +4,36 @@ using Documenter #DocMeta.setdocmeta!(GeophysicalModelGenerator, :DocTestSetup, :(using GeophysicalModelGenerator); recursive=true) +# Get GeophysicalModelGenerator.jl root directory +GMG_root_dir = dirname(@__DIR__) + +include(joinpath(GMG_root_dir, "docs", "man", "make.jl")) + +# Copy list of authors to not need to synchronize it manually +authors_text = read(joinpath(GMG_root_dir, "AUTHORS.md"), String) +authors_text = replace(authors_text, "in the [LICENSE.md](LICENSE.md) file" => "under [License](@ref)") +write(joinpath(@__DIR__, "src", "man", "authors.md"), authors_text) + + +# Copy some files from the repository root directory to the docs and modify them +# as necessary +# Based on: https://github.com/ranocha/SummationByPartsOperators.jl/blob/0206a74140d5c6eb9921ca5021cb7bf2da1a306d/docs/make.jl#L27-L41 +open(joinpath(@__DIR__, "src", "man", "code_of_conduct.md"), "w") do io + # Point to source license file + println(io, """ + ```@meta + EditURL = "https://github.com/JuliaGeodynamics/GeophysicalModelGenerator.jl/blob/main/CODE_OF_CONDUCT.md" + ``` + """) + # Write the modified contents + println(io, "# [Code of Conduct](@id code-of-conduct)") + println(io, "") + for line in eachline(joinpath(dirname(@__DIR__), "CODE_OF_CONDUCT.md")) + line = replace(line, "[AUTHORS.md](AUTHORS.md)" => "[Authors](@ref)") + println(io, "> ", line) + end +end + makedocs(; modules=[GeophysicalModelGenerator], authors="Marcel Thielmann, Boris Kaus", @@ -26,7 +56,7 @@ makedocs(; "ISC earthquake data" => "man/tutorial_ISC_data.md", "Plot GPS vectors" => "man/tutorial_GPS.md", "Read UTM data" => "man/tutorial_UTM.md", - "VoteMaps" => "man/Tutorial_Votemaps.md", + "VoteMaps" => "man/Tutorial_Votemaps.md", "Kilometer-scale volcano" => "man/tutorial_local_Flegrei.md", "Generating LaMEM model" => "man/LaPalma_example.md", "Create movies" => "man/tutorial_time_Seismicity.md" @@ -43,8 +73,12 @@ makedocs(; "LaMEM" => "man/lamem.md", "Profile Processing" => "man/profile_processing.md" ], - "List of functions" => "man/listfunctions.md" - ], + "List of functions" => "man/listfunctions.md", + "Authors" => "man/authors.md", + "Contributing" => "man/contributing.md", + "Code of Conduct" => "code_of_conduct.md", + "License" => "license.md", + ], ) deploydocs(; @@ -56,4 +90,3 @@ deploydocs(; forcepush=true, push_preview = true ) - From eb19d5f24abc47b87d00548be569af41961b419f Mon Sep 17 00:00:00 2001 From: Pascal Aellig Date: Tue, 27 Feb 2024 12:39:22 +0100 Subject: [PATCH 4/6] update license to include GMG authors --- CODE_OF_CONDUCT.md | 4 ++-- LICENSE.md | 21 +++++++++++++++++++++ docs/make.jl | 9 ++++----- 3 files changed, 27 insertions(+), 7 deletions(-) create mode 100644 LICENSE.md diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 37e79e31..8a1dfa1d 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -60,8 +60,8 @@ representative at an online or offline event. Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to -[Michael Schlottke-Lakemper](mailto:m.schlottke-lakemper@acom.rwth-aachen.de), -[Hendrik Ranocha](mailto:mail@ranocha.de), +[Boris Kaus](https://www.geosciences.uni-mainz.de/geophysics-and-geodynamics/team/univ-prof-dr-boris-kaus/), +[Marcel Thielmann](https://www.staff.uni-bayreuth.de/~bt303651/), or any other of the principal developers responsible for enforcement listed in [AUTHORS.md](AUTHORS.md). All complaints will be reviewed and investigated promptly and fairly. diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 00000000..89bc148a --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2021 Boris Kaus, Marcel Thielmann and Authors (see AUTHORS.md) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/docs/make.jl b/docs/make.jl index bbc8073c..dca5a8b3 100644 --- a/docs/make.jl +++ b/docs/make.jl @@ -7,13 +7,13 @@ using Documenter # Get GeophysicalModelGenerator.jl root directory GMG_root_dir = dirname(@__DIR__) -include(joinpath(GMG_root_dir, "docs", "man", "make.jl")) - # Copy list of authors to not need to synchronize it manually authors_text = read(joinpath(GMG_root_dir, "AUTHORS.md"), String) authors_text = replace(authors_text, "in the [LICENSE.md](LICENSE.md) file" => "under [License](@ref)") write(joinpath(@__DIR__, "src", "man", "authors.md"), authors_text) - +#Contributing +contributing = read(joinpath(GMG_root_dir, "CONTRIBUTING.md"), String) +write(joinpath(@__DIR__, "src", "man", "contributing.md"), contributing) # Copy some files from the repository root directory to the docs and modify them # as necessary @@ -76,8 +76,7 @@ makedocs(; "List of functions" => "man/listfunctions.md", "Authors" => "man/authors.md", "Contributing" => "man/contributing.md", - "Code of Conduct" => "code_of_conduct.md", - "License" => "license.md", + "Code of Conduct" => "man/code_of_conduct.md" ], ) From 6fc0112b9f99a554e2d0e436533e3722eff67d02 Mon Sep 17 00:00:00 2001 From: Pascal Aellig Date: Tue, 27 Feb 2024 13:35:11 +0100 Subject: [PATCH 5/6] update `make.jl` --- LICENSE | 21 --------------------- docs/make.jl | 17 +++++++++++++++++ 2 files changed, 17 insertions(+), 21 deletions(-) delete mode 100644 LICENSE diff --git a/LICENSE b/LICENSE deleted file mode 100644 index b4f733c8..00000000 --- a/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2021 Boris Kaus, Marcel Thielmann, JuliaGeodynamics development team - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/docs/make.jl b/docs/make.jl index dca5a8b3..bd96f315 100644 --- a/docs/make.jl +++ b/docs/make.jl @@ -33,6 +33,23 @@ open(joinpath(@__DIR__, "src", "man", "code_of_conduct.md"), "w") do io println(io, "> ", line) end end +open(joinpath(@__DIR__, "src", "man", "contributing.md"), "w") do io + # Point to source license file + println(io, """ + ```@meta + EditURL = "https://github.com/JuliaGeodynamics/GeophysicalModelGenerator.jl/blob/main/CONTRIBUTING.md" + ``` + """) + # Write the modified contents + println(io, "# [Contributing](@id contributing)") + println(io, "") + for line in eachline(joinpath(dirname(@__DIR__), "CONTRIBUTING.md")) + line = replace(line, "[LICENSE.md](LICENSE.md)" => "[License](@ref)") + line = replace(line, "[AUTHORS.md](AUTHORS.md)" => "[Authors](@ref)") + # line = replace(line, "[AUTHORS.md](AUTHORS.md)" => "[Authors](@ref)") + println(io, "> ", line) + end + end makedocs(; modules=[GeophysicalModelGenerator], From ddfa23407b1c21531a8f3d6ba2a6497ee36e601a Mon Sep 17 00:00:00 2001 From: Pascal Aellig Date: Tue, 27 Feb 2024 14:28:47 +0100 Subject: [PATCH 6/6] address requested changes --- AUTHORS.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/AUTHORS.md b/AUTHORS.md index c5c6b37e..e162fdf5 100644 --- a/AUTHORS.md +++ b/AUTHORS.md @@ -9,8 +9,8 @@ provided substantial additions or modifications. Together, these two groups form ## Principal Developers * [Boris Kaus](https://www.geosciences.uni-mainz.de/geophysics-and-geodynamics/team/univ-prof-dr-boris-kaus/), Johannes Gutenberg University Mainz, Germany -* [Marcel Thielmann](https://www.staff.uni-bayreuth.de/~bt303651/), - Bayrisches Geoinstitut, University of Bayreuth, Germany +* [Marcel Thielmann](https://quakeid.github.io/author/marcel-thielmann/), + Bayerisches Geoinstitut, University of Bayreuth, Germany ## Contributors