Skip to content

Commit

Permalink
Add src and some profiles
Browse files Browse the repository at this point in the history
  • Loading branch information
charleskawczynski committed Feb 9, 2022
1 parent 63688f9 commit a0fad09
Show file tree
Hide file tree
Showing 25 changed files with 908 additions and 0 deletions.
44 changes: 44 additions & 0 deletions .github/workflows/CodeCov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: CodeCov

on:
push:
branches:
- main
- trying
- staging
tags: '*'
pull_request:

jobs:
codecov:
runs-on: ubuntu-latest

steps:
- uses: actions/[email protected]

- name: Set up Julia
uses: julia-actions/setup-julia@latest
with:
version: 1.7.0

- name: Test with coverage
env:
JULIA_PROJECT: "@."
run: |
julia --project=@. -e 'using Pkg; Pkg.instantiate()'
julia --project=@. -e 'using Pkg; Pkg.test(coverage=true)'
- name: Generate coverage file
env:
JULIA_PROJECT: "@."
run: julia --project=@. -e 'using Pkg; Pkg.add("Coverage");
using Coverage;
LCOV.writefile("coverage-lcov.info", Codecov.process_folder())'
if: success()

- name: Submit coverage
uses: codecov/[email protected]
with:
token: ${{secrets.CODECOV_TOKEN}}
if: success()

16 changes: 16 additions & 0 deletions .github/workflows/CompatHelper.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: CompatHelper
on:
schedule:
- cron: '00 00 * * *'
workflow_dispatch:
jobs:
CompatHelper:
runs-on: ubuntu-latest
steps:
- name: Pkg.add("CompatHelper")
run: julia -e 'using Pkg; Pkg.add("CompatHelper")'
- name: CompatHelper.main()
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COMPATHELPER_PRIV: ${{ secrets.COMPATHELPER_PRIV }} # optional
run: julia -e 'using CompatHelper; CompatHelper.main()'
28 changes: 28 additions & 0 deletions .github/workflows/DocCleanUp.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Doc Preview Cleanup

on:
pull_request:
types: [closed]

jobs:
doc-preview-cleanup:
runs-on: ubuntu-latest
steps:
- name: Checkout gh-pages branch
uses: actions/checkout@v2
with:
ref: gh-pages

- name: Delete preview and history
run: |
git config user.name "Documenter.jl"
git config user.email "[email protected]"
git rm -rf "previews/PR$PRNUM"
git commit -m "delete preview"
git branch gh-pages-new $(echo "delete history" | git commit-tree HEAD^{tree})
env:
PRNUM: ${{ github.event.number }}

- name: Push changes
run: |
git push --force origin gh-pages-new:gh-pages
67 changes: 67 additions & 0 deletions .github/workflows/TagBot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: TagBot
on:
issue_comment:
types:
- created
workflow_dispatch:
jobs:
TagBot:
if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot'
runs-on: ubuntu-latest
steps:
- uses: JuliaRegistries/TagBot@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
ssh: ${{ secrets.DOCUMENTER_KEY }}
changelog: |
## {{ package }} {{ version }}
{% if previous_release %}
[Diff since {{ previous_release }}]({{ compare_url }})
{% endif %}
{% if custom %}
{{ custom }}
{% endif %}
### 📢 API Changes:
{% if issues %}
{% for issue in issues if 'API' in issue.labels %}
- {{ issue.title }} (#{{ issue.number }})
{% endfor %}
{% endif %}
{% if pulls %}
{% for pull in pulls if 'API' in pull.labels %}
- {{ pull.title }} (#{{ pull.number }}) (@{{ pull.author.username }})
{% endfor %}
{% endif %}
### 🚀 Features
{% if issues %}
{% for issue in issues if 'enhancement' in issue.labels or 'feature' in issue.labels %}
- {{ issue.title }} (#{{ issue.number }})
{% endfor %}
{% endif %}
{% if pulls %}
{% for pull in pulls if 'enhancement' in pull.labels or 'feature' in pull.labels %}
- {{ pull.title }} (#{{ pull.number }}) (@{{ pull.author.username }})
{% endfor %}
{% endif %}
### 📑 Documentation
{% if issues %}
{% for issue in issues if 'documentation' in issue.labels %}
- {{ issue.title }} (#{{ issue.number }})
{% endfor %}
{% endif %}
{% if pulls %}
{% for pull in pulls if 'documentation' in pull.labels %}
- {{ pull.title }} (#{{ pull.number }}) (@{{ pull.author.username }})
{% endfor %}
{% endif %}
### 🐛 Fixes
{% if issues %}
{% for issue in issues if 'bug' in issue.labels or 'bugfix' in issue.labels %}
- {{ issue.title }} (#{{ issue.number }})
{% endfor %}
{% endif %}
{% if pulls %}
{% for pull in pulls if 'bug' in pull.labels or 'bugfix' in pull.labels %}
- {{ pull.title }} (#{{ pull.number }}) (@{{ pull.author.username }})
{% endfor %}
{% endif %}
47 changes: 47 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: ci
on:
push:
branches:
- main
- trying
- staging
tags: '*'
pull_request:

jobs:
test:
name: ci ${{ matrix.version }} - ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
version:
- '1.7.0'
os:
- ubuntu-latest
- macOS-latest
- windows-latest
arch:
- x64
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
with:
version: ${{ matrix.version }}
arch: ${{ matrix.arch }}
# - uses: actions/cache@v1
# env:
# cache-name: cache-artifacts
# with:
# path: ~/.julia/artifacts
# key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
# restore-keys: |
# ${{ runner.os }}-test-${{ env.cache-name }}-
# ${{ runner.os }}-test-
# ${{ runner.os }}-
- 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
26 changes: 26 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Documentation

on:
push:
branches:
- main
- trying
- staging
tags: '*'
pull_request:

jobs:
docbuild:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@latest
with:
version: 1.7.0
- 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 }} # For authentication with GitHub Actions token
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }} # For authentication with SSH deploy key
run: julia --project=docs/ docs/make.jl
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,11 @@ deps/src/
# Build artifacts for creating documentation generated by the Documenter package
docs/build/
docs/site/
# Auto-generated file
docs/src/generated_profile_library.md

# Data files
*.png

# 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
Expand Down
11 changes: 11 additions & 0 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name = "AtmosphericProfilesLibrary"
uuid = "86bc3604-9858-485a-bdbe-831ec50de11d"
authors = ["Charles Kawczynski <[email protected]>"]
version = "0.1.0"

[deps]
Dierckx = "39dd38d3-220a-591b-8e3c-4c3a8c710a94"

[compat]
Dierckx = "0.5"
julia = "1"
23 changes: 23 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,25 @@
# AtmosphericProfilesLibrary.jl

A library of atmospheric profiles

|||
|---------------------:|:----------------------------------------------|
| **Docs Build** | [![docs build][docs-bld-img]][docs-bld-url] |
| **Documentation** | [![dev][docs-dev-img]][docs-dev-url] |
| **GHA CI** | [![gha ci][gha-ci-img]][gha-ci-url] |
| **Bors enabled** | [![bors][bors-img]][bors-url] |

[docs-bld-img]: https://github.com/CliMA/AtmosphericProfilesLibrary.jl/actions/workflows/docs.yml/badge.svg
[docs-bld-url]: https://github.com/CliMA/AtmosphericProfilesLibrary.jl/actions/workflows/docs.yml

[docs-dev-img]: https://img.shields.io/badge/docs-dev-blue.svg
[docs-dev-url]: https://CliMA.github.io/AtmosphericProfilesLibrary.jl/dev/

[gha-ci-img]: https://github.com/CliMA/AtmosphericProfilesLibrary.jl/actions/workflows/ci.yml/badge.svg
[gha-ci-url]: https://github.com/CliMA/AtmosphericProfilesLibrary.jl/actions/workflows/ci.yml

[bors-img]: https://bors.tech/images/badge_small.svg
[bors-url]: https://app.bors.tech/repositories/41911

See our [docs](https://CliMA.github.io/AtmosphericProfilesLibrary.jl/dev/) for usage and how to contribute.

10 changes: 10 additions & 0 deletions docs/Project.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[deps]
AtmosphericProfilesLibrary = "86bc3604-9858-485a-bdbe-831ec50de11d"
Dierckx = "39dd38d3-220a-591b-8e3c-4c3a8c710a94"
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
DocumenterCitations = "daee34ce-89f3-4625-b898-19384cb65244"
Glob = "c27321d9-0574-5035-807b-f59d2c89b15c"
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"

[compat]
Dierckx = "0.5"
26 changes: 26 additions & 0 deletions docs/bibliography.bib
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# The citation keys have been formatted as:
# Last author name (titlecase), followed by
# (no characters in-between) the year.
@article{Grabowski2006,
title = {Daytime convective development over land: A model intercomparison based on LBA observations},
author = {Grabowski, WW and Bechtold, P and Cheng, A and Forbes, R and Halliwell, C and Khairoutdinov, M and Lang, S and Nasuno, T and Petch, J and Tao, W-K and others},
journal = {Quarterly Journal of the Royal Meteorological Society: A journal of the atmospheric sciences, applied meteorology and physical oceanography},
volume = {132},
number = {615},
pages = {317--344},
year = {2006},
publisher = {Wiley Online Library}
}

@article{Soares2004,
title = {An eddy-diffusivity/mass-flux parametrization for dry and shallow cumulus convection},
author = {Soares, PMM and Miranda, PMA and Siebesma, AP and Teixeira, J},
journal = {Quarterly Journal of the Royal Meteorological Society: A journal of the atmospheric sciences, applied meteorology and physical oceanography},
volume = {130},
number = {604},
pages = {3365--3383},
year = {2004},
publisher = {Wiley Online Library},
doi = {https://doi.org/10.1256/qj.03.223}
}
62 changes: 62 additions & 0 deletions docs/generate_profile_library.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@

# Generate figures:
include(joinpath(@__DIR__, "src", "plot_profiles.jl"))

prof_lib = joinpath(@__DIR__, "src", "generated_profile_library.md")
open(prof_lib, "w") do io

println(io, "```@meta")
println(io, "# ****************************************************")
println(io, "# ****************************************************")
println(io, "# THIS FILE IS AUTO-GENERATED, PLEASE DO NOT EDIT.")
println(io, "# ****************************************************")
println(io, "# ****************************************************")
println(io, "```")

println(io, "# Profile library")

println(io, "")
println(io, "```@meta")
println(io, "CurrentModule = AtmosphericProfilesLibrary")
println(io, "```")

println(io, "")
println(io, "```@example")
println(io, "include(joinpath(@__DIR__, \"plot_profiles.jl\"))")
println(io, "```")
println(io, "")

println(io, "## z-profiles")
for profile in z_profiles
fname = nameof(profile.func)
println(io, "```@docs")
println(io, "$fname")
println(io, "```")
println(io, "![](z_$fname.png)")
println(io, "")
end

if !isempty(t_profiles)
println(io, "## t-profiles")
for profile in t_profiles
fname = nameof(profile.func)
println(io, "```@docs")
println(io, "$fname")
println(io, "```")
println(io, "![](t_$fname.png)")
println(io, "")
end
end

println(io, "## tz-profiles")
for profile in tz_profiles
fname = nameof(profile.func)
println(io, "```@docs")
println(io, "$fname")
println(io, "```")
println(io, "![](tz_$fname.png)")
println(io, "")
end
end

@assert isfile(prof_lib)
Loading

2 comments on commit a0fad09

@charleskawczynski
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JuliaRegistrator
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Registration pull request created: JuliaRegistries/General/54233

After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.

This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:

git tag -a v0.1.0 -m "<description of version>" a0fad094e32bfba9d2d2ab161c97f539a24c4838
git push origin v0.1.0

Please sign in to comment.