-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This PR merges the latest state of dev into the main and starts the initial release pipeline for `v0.1.0`. For more details on this release pipeline, see #32 (cf. QEDjl-project/QEDbase.jl#39) A full list of PRs that go into this release can be found here: https://github.com/QEDjl-project/QEDprocesses.jl/milestone/2?closed=1 # Todos - [x] tick up the version in Project.toml - [x] add CHANGELOG.md with a section to summarize the changes made - [x] tag the PRs related to this release (using milestones) --------- Co-authored-by: Simeon Ehrig <[email protected]> Co-authored-by: Uwe Hernandez Acosta <[email protected]> Co-authored-by: Tom Jungnickel <[email protected]> Co-authored-by: Anton Reinhard <[email protected]> Co-authored-by: Mithilesh Sharma <[email protected]> Co-authored-by: AntonReinhard <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: CompatHelper Julia <[email protected]>
- Loading branch information
1 parent
3022746
commit 9e9e96d
Showing
25 changed files
with
1,274 additions
and
174 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
style = "blue" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
[deps] | ||
JuliaFormatter = "98e50ef6-434e-11e9-1051-2b60c6c9e899" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
using JuliaFormatter | ||
|
||
# we asume the format_all.jl script is located in QEDfields.jl/.formatting | ||
project_path = Base.Filesystem.joinpath(Base.Filesystem.dirname(Base.source_path()), "..") | ||
|
||
not_formatted = format(project_path; verbose=true) | ||
if not_formatted | ||
@info "Formatting verified." | ||
else | ||
@warn "Formatting verification failed: Some files are not properly formatted!" | ||
end | ||
exit(not_formatted ? 0 : 1) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
name: Build and Deploy Documentation | ||
|
||
on: | ||
push: | ||
branches: | ||
- master | ||
- dev | ||
tags: '*' | ||
pull_request: | ||
|
||
jobs: | ||
build: | ||
permissions: | ||
contents: write | ||
statuses: write | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: julia-actions/setup-julia@v1 | ||
with: | ||
version: '1.9' | ||
- name: Add custom registry | ||
run: | | ||
julia --project=docs/ -e 'import Pkg; Pkg.Registry.add(Pkg.RegistrySpec(url="https://github.com/QEDjl-project/registry.git"));' | ||
julia --project=docs/ -e 'import Pkg; Pkg.Registry.add(Pkg.RegistrySpec(url="https://github.com/JuliaRegistries/General"));' | ||
- name: Install dependencies | ||
run: julia --project=docs/ -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate()' | ||
- name: Build and deploy | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # If authenticating with GitHub Actions token | ||
run: julia --project=docs/ docs/make.jl |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
name: formatter | ||
on: [pull_request] | ||
jobs: | ||
formatter: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: checkout repo | ||
uses: actions/checkout@v4 | ||
- name: install Julia | ||
uses: julia-actions/setup-julia@v1 | ||
with: | ||
version: 1.9 | ||
- name: Install Julia requirements | ||
run: julia --project=${GITHUB_WORKSPACE}/.formatting -e 'import Pkg; Pkg.instantiate()' | ||
- name: Check code style | ||
run: julia --project=${GITHUB_WORKSPACE}/.formatting ${GITHUB_WORKSPACE}/.formatting/format_all.jl |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,7 @@ | ||
/docs/build/ | ||
|
||
# File generated by Pkg, the package manager, based on a corresponding Project.toml | ||
# It records a fixed state of all packages used by the project. As such, it should not be | ||
# committed for packages, but should be committed for applications that require a static | ||
# environment. | ||
Manifest.toml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,120 @@ | ||
stages: | ||
- unit-test | ||
- generate_integration_test | ||
- run_integration_test | ||
- verify-unit-test-deps | ||
|
||
.untit_test_template: | ||
stage: unit-test | ||
script: | ||
- apt update && apt install -y git | ||
- git clone --depth 1 -b dev https://github.com/QEDjl-project/QED.jl.git /QEDjl | ||
- julia --project=. -e 'import Pkg; Pkg.Registry.add(Pkg.RegistrySpec(url="https://github.com/QEDjl-project/registry.git"));' | ||
- julia --project=. -e 'import Pkg; Pkg.Registry.add(Pkg.RegistrySpec(url="https://github.com/JuliaRegistries/General"));' | ||
- > | ||
if [[ $CI_COMMIT_BRANCH == "main" || $CI_COMMIT_REF_NAME == "main" || $CI_COMMIT_BRANCH == "dev" || $CI_COMMIT_REF_NAME == "dev" ]]; then | ||
# set name of the commit message from CI_COMMIT_MESSAGE to NO_MESSAGE, that the script does not read accidentally custom packages from the commit message of a merge commit | ||
julia --project=. /QEDjl/.ci/SetupDevEnv/src/SetupDevEnv.jl ${CI_PROJECT_DIR}/Project.toml NO_MESSAGE | ||
else | ||
julia --project=. /QEDjl/.ci/SetupDevEnv/src/SetupDevEnv.jl ${CI_PROJECT_DIR}/Project.toml | ||
fi | ||
- julia --project=. -e 'import Pkg; Pkg.instantiate()' | ||
- julia --project=. -e 'import Pkg; Pkg.test(; coverage = true)' | ||
interruptible: true | ||
tags: | ||
- cpuonly | ||
|
||
unit_tests_releases: | ||
extends: .untit_test_template | ||
parallel: | ||
matrix: | ||
- JULIA_VERSION: ["1.6", "1.7", "1.8", "1.9"] | ||
image: julia:$JULIA_VERSION | ||
|
||
unit_tests_nightly: | ||
extends: .untit_test_template | ||
# use the same baseimage like the official julia images | ||
image: debian:bookworm-slim | ||
variables: | ||
# path where julia tar bal should be downloaded | ||
JULIA_DONWLOAD: /julia/download | ||
# path where julia should be extracted | ||
JULIA_EXTRACT: /julia/extract | ||
before_script: | ||
- apt update && apt install -y wget | ||
- mkdir -p $JULIA_DONWLOAD | ||
- mkdir -p $JULIA_EXTRACT | ||
- > | ||
if [[ $CI_RUNNER_EXECUTABLE_ARCH == "linux/arm64" ]]; then | ||
wget https://julialangnightlies-s3.julialang.org/bin/linux/aarch64/julia-latest-linux-aarch64.tar.gz -O $JULIA_DONWLOAD/julia-nightly.tar.gz | ||
elif [[ $CI_RUNNER_EXECUTABLE_ARCH == "linux/amd64" ]]; then | ||
wget https://julialangnightlies-s3.julialang.org/bin/linux/x86_64/julia-latest-linux-x86_64.tar.gz -O $JULIA_DONWLOAD/julia-nightly.tar.gz | ||
else | ||
echo "unknown runner architecture -> $CI_RUNNER_EXECUTABLE_ARCH" | ||
exit 1 | ||
fi | ||
- tar -xf $JULIA_DONWLOAD/julia-nightly.tar.gz -C $JULIA_EXTRACT | ||
# we need to search for the julia base folder name, because the second part of the name is the git commit hash | ||
# e.g. julia-b0c6781676f | ||
- JULIA_EXTRACT_FOLDER=${JULIA_EXTRACT}/$(ls $JULIA_EXTRACT | grep -m1 julia) | ||
# copy everything to /usr to make julia public available | ||
# mv is not possible, because it cannot merge folder | ||
- cp -r $JULIA_EXTRACT_FOLDER/* /usr | ||
allow_failure: true | ||
|
||
generate_integration_tests: | ||
image: julia:1.9 | ||
stage: generate_integration_test | ||
script: | ||
# extract package name | ||
- export CI_DEPENDENCY_NAME=$(cat $CI_PROJECT_DIR/Project.toml | grep name | awk '{ print $3 }' | tr -d '"') | ||
- echo "CI_DEPENDENCY_NAME -> $CI_DEPENDENCY_NAME" | ||
- apt update && apt install -y git | ||
- git clone --depth 1 -b dev https://github.com/QEDjl-project/QED.jl.git /QEDjl | ||
- cd /QEDjl/.ci/integTestGen/ | ||
# use local registry of the QED project | ||
- julia --project=. -e 'import Pkg; Pkg.Registry.add(Pkg.RegistrySpec(url="https://github.com/QEDjl-project/registry.git"));' | ||
# needs to add General registry again, if local registry was added | ||
- julia --project=. -e 'import Pkg; Pkg.Registry.add(Pkg.RegistrySpec(url="https://github.com/JuliaRegistries/General"));' | ||
- julia --project=. -e 'import Pkg; Pkg.instantiate()' | ||
# paths of artifacts are relative to CI_PROJECT_DIR | ||
- > | ||
if [[ $CI_COMMIT_BRANCH == "main" || $CI_COMMIT_REF_NAME == "main" || $CI_COMMIT_BRANCH == "dev" || $CI_COMMIT_REF_NAME == "dev" ]]; then | ||
# set name of the commit message from CI_COMMIT_MESSAGE to NO_MESSAGE, that the script does not read accidentally custom packages from the commit message of a merge commit | ||
julia --project=. src/integTestGen.jl NO_MESSAGE > $CI_PROJECT_DIR/integrationjobs.yaml | ||
else | ||
julia --project=. src/integTestGen.jl > $CI_PROJECT_DIR/integrationjobs.yaml | ||
fi | ||
- cat $CI_PROJECT_DIR/integrationjobs.yaml | ||
artifacts: | ||
paths: | ||
- integrationjobs.yaml | ||
expire_in: 1 week | ||
interruptible: true | ||
tags: | ||
- cpuonly | ||
|
||
run_integration_tests: | ||
stage: run_integration_test | ||
trigger: | ||
include: | ||
- artifact: integrationjobs.yaml | ||
job: generate_integration_tests | ||
strategy: depend | ||
|
||
verify-unit-test-deps_julia1.9: | ||
image: julia:1.9 | ||
stage: verify-unit-test-deps | ||
script: | ||
- apt update && apt install -y git | ||
- git clone --depth 1 -b dev https://github.com/QEDjl-project/QED.jl.git /QEDjl | ||
- > | ||
if [[ $CI_COMMIT_BRANCH == "main" || $CI_COMMIT_REF_NAME == "main" || $CI_COMMIT_BRANCH == "dev" || $CI_COMMIT_REF_NAME == "dev" ]]; then | ||
# does not check for custom package URLs on the main and dev branch | ||
echo "no custom package URL check necessary" | ||
else | ||
julia /QEDjl/.ci/verify_env.jl | ||
fi | ||
interruptible: true | ||
tags: | ||
- cpuonly |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# Changelog | ||
|
||
## Version 0.1.0 | ||
|
||
This is the initial verison of QEDprocesses. | ||
|
||
[Diff since inital commit](https://github.com/QEDjl-project/QEDprocesses.jl/compare/302274695d82225f4a810c252d6919839bc59fd7...release-v0.1.0) | ||
[Full list of PRs](https://github.com/QEDjl-project/QEDprocesses.jl/milestone/2?closed=1) | ||
|
||
|
||
### Highlights | ||
* interface for scattering processes described by physical models (general properties, differential/total cross sections) https://github.com/QEDjl-project/QEDprocesses.jl/pull/11 | ||
* interface for abstract setups (general computation setup and process dedicated | ||
setups) https://github.com/QEDjl-project/QEDprocesses.jl/pull/14 | ||
* setup ci for unit and integration testing https://github.com/QEDjl-project/QEDprocesses.jl/pull/5 https://github.com/QEDjl-project/QEDprocesses.jl/pull/7 https://github.com/QEDjl-project/QEDprocesses.jl/pull/21 | ||
* setup ci/cd for docs https://github.com/QEDjl-project/QEDprocesses.jl/pull/19 |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,5 +3,11 @@ uuid = "46de9c38-1bb3-4547-a1ec-da24d767fdad" | |
authors = ["Uwe Hernandez Acosta <[email protected]>", "Simeon Ehrig", "Klaus Steiniger", "Tom Jungnickel", "Anton Reinhard"] | ||
version = "0.1.0" | ||
|
||
[deps] | ||
DocStringExtensions = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" | ||
QEDbase = "10e22c08-3ccb-4172-bfcf-7d7aa3d04d93" | ||
|
||
[compat] | ||
julia = "1.9" | ||
DocStringExtensions = "0.9" | ||
QEDbase = "0.1" | ||
julia = "1.6" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,55 @@ | ||
# QEDprocesses | ||
|
||
[![Doc Stable](https://img.shields.io/badge/docs-stable-blue.svg)](https://qedjl-project.github.io/QEDprocesses.jl/main) | ||
[![Doc Dev](https://img.shields.io/badge/docs-dev-blue.svg)](https://qedjl-project.github.io/QEDprocesses.jl/dev) | ||
[![Code Style: Blue](https://img.shields.io/badge/code%20style-blue-4495d1.svg)](https://github.com/invenia/BlueStyle) | ||
|
||
## Installation | ||
|
||
To install the current stable version of `QEDprocesses.jl` you may use the standard julia package manager within the julia REPL | ||
|
||
```julia | ||
julia> using Pkg | ||
|
||
# add local registry, where QEDprocesses is registered | ||
julia> Pkg.Registry.add(Pkg.RegistrySpec(url="https://github.com/QEDjl-project/registry")) | ||
# add general registry again to have it join the local registry | ||
julia> Pkg.Registry.add(Pkg.RegistrySpec(url="https://github.com/JuliaRegistries/General")) | ||
|
||
julia> Pkg.add("QEDprocesses") | ||
``` | ||
|
||
or you use the Pkg prompt by hitting `]` within the Julia REPL and then type | ||
|
||
```julia | ||
# add local registry, where QEDprocesses is registered | ||
(@v1.9) pkg> registry add https://github.com/QEDjl-project/registry | ||
# add general registry again to have it join the local registry | ||
(@v1.9) pkg> registry add https://github.com/JuliaRegistries/General | ||
|
||
(@v1.9) pkg> add QEDprocesses | ||
``` | ||
|
||
To install the locally downloaded package on Windows, change to the parent directory and type within the Pkg prompt | ||
|
||
```julia | ||
(@v1.9) pkg> add ./QEDprocesses.jl | ||
``` | ||
|
||
## Building the documentation locally | ||
|
||
To build the documentation of `QEDprocesses.jl` locally, first clone this | ||
repository. Then, you instantiate the documentation subpackage by hitting | ||
|
||
```julia | ||
julia --project=docs -e 'using Pkg; Pkg.instantiate(); Pkg.develop(PackageSpec(path=pwd()))' | ||
``` | ||
in the root directory of this repository. Afterwards, the dokumentation can be | ||
built by running | ||
|
||
```julia | ||
julia --project=docs --color=yes docs/make.jl | ||
``` | ||
|
||
To access the documentation site, just open the file `docs/_build/index.html` in | ||
your favorite browser. |
Oops, something went wrong.