Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
f50bcf4
refactor: remove all old files
lispandfound Feb 13, 2025
746923b
ci: update Jenkins to use docker container
lispandfound Feb 13, 2025
cd1233e
chore: update gitignore
lispandfound Feb 13, 2025
3bdba18
refactor: add plotting scripts from source_modelling
lispandfound Feb 13, 2025
2d35f48
chore: add pyproject file
lispandfound Feb 13, 2025
3f617f9
refactor: add dependencies
lispandfound Feb 13, 2025
a0310fc
docs: add missing wiki pages
lispandfound Feb 13, 2025
7a6c786
tests: add test files
lispandfound Feb 13, 2025
a38dae6
ci: install GMT for jenkins
lispandfound Feb 13, 2025
5f14e34
ci: move gmt install to new stage
lispandfound Feb 13, 2025
9f4d8cf
ci: no sudo for apt-get install
lispandfound Feb 13, 2025
17ac33d
ci: run apt-get update before gmt install
lispandfound Feb 13, 2025
05e20dd
ci: install everything gmt
lispandfound Feb 13, 2025
a150f82
chore: add workflow + source modelling dependencies
lispandfound Feb 13, 2025
393c8e0
ci: use pegasus branch of workflow
lispandfound Feb 13, 2025
c2c3b17
docs: add wiki images
lispandfound Feb 13, 2025
0ef696b
ci: add ghostscript dependency
lispandfound Feb 13, 2025
f60ccef
ci: add other github actions
lispandfound Feb 14, 2025
5f18ade
ci(git-extension): Correctly handle branch dependencies
lispandfound Feb 14, 2025
51c0dba
fix(git-extension): swap flag order
lispandfound Feb 14, 2025
f51a4c5
chore: ruff fix
lispandfound Feb 14, 2025
25bcce9
chore(requirements): remove unused scipy dependency
lispandfound Feb 14, 2025
55f1a1f
ci: run tests in parallel
lispandfound Feb 14, 2025
8238522
ci: use uv instead of pip for package install
lispandfound Feb 17, 2025
d7d88d4
cd: source environment for uv
lispandfound Feb 17, 2025
a0e7f6d
ci: don't use $HOME shell variable
lispandfound Feb 17, 2025
9acd8fe
fix(plot_slip_rise_rake): reset to default rcParams
lispandfound Feb 17, 2025
62d2776
test(sources): add test script for mw contribution
lispandfound Feb 17, 2025
ce5dd69
chore: ruff sort
lispandfound Feb 17, 2025
e9245aa
ci: numpydoc check should run on branches targetting master
lispandfound Feb 18, 2025
3ee5516
ci: master branch target wiki
lispandfound Feb 18, 2025
09e5879
feat(utils): automatic docstring -> typer interface parsing
lispandfound Feb 18, 2025
4951933
refactor(sources): update scripts to use docstring parsing
lispandfound Feb 18, 2025
51acffe
ci: apply numpydoc to the correct package
lispandfound Feb 18, 2025
786ac5a
ci: appease numpydoc
lispandfound Feb 18, 2025
6c9f07f
chore(ruff): make source_modelling first-party, ruff format
lispandfound Feb 18, 2025
575cb53
refactor: use qcore.cli module instead of visualisation.utils
lispandfound Feb 18, 2025
7a93a29
fix(utils): incorrect formatting for plot-srf-distribution
lispandfound Feb 20, 2025
bf7cda2
docs(utils): fix missing compact documentation
lispandfound Feb 20, 2025
a136914
chore: remove docstring_parser dependency
lispandfound Feb 20, 2025
ecada2f
ci: swap back to pip (maybe fixes dependency resolution?)
lispandfound Feb 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions .github/workflows/deptry.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Deptry Dependency Check

on: [pull_request]

jobs:
dependencies:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# Setup the minimum required python distribution
- uses: actions/setup-python@v5
with:
python-version: "3.13"
# Install deptry
- run: pip install deptry
# Remove testing related packages
- run: sed -e '/hypothesis*/d' -e '/pytest*/d' -i requirements.txt
# Install all other packages
- run: pip install -r requirements.txt
# Remove pyproject.toml so that deptry doesn't get confused
- run: rm pyproject.toml
# Remove the pytest modules because they are for testing only.
- run: sed -i -e '/pytest/d' -e '/hypothesis/d' -e '/diffimg/d' requirements.txt
# Install requirements
- run: pip install -r requirements.txt
# Run deptry to check that all dependencies are present.
- run: deptry .
18 changes: 18 additions & 0 deletions .github/workflows/git-extension.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Check requirements.txt git URLs are properly formatted

on: pull_request

permissions:
contents: read
pull-requests: write

jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: sed -ri '/git\+/ { /\.git(@\w+)?$/! s/(@\w+)?$/.git\1/ }' requirements.txt
- uses: parkerbxyz/suggest-changes@v2
with:
comment: 'Please change the following dependencies for consistency.'
event: 'REQUEST_CHANGES'
36 changes: 36 additions & 0 deletions .github/workflows/numpydoc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: Numpydoc Lint

on:
push:
branches:
- master
pull_request:
branches:
- master

jobs:
numpydoc-lint:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: fd-find
version: 1.0

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.12' # Adjust version as needed

- name: Install dependencies
run: |
pip install numpydoc
sudo apt-get install

- name: Run Numpydoc Lint
run: |
fdfind . visualisation/ -E "__init__.py" -E ccldpy.py --extension py -x numpydoc lint
8 changes: 8 additions & 0 deletions .github/workflows/ruff.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
name: Ruff
on: [pull_request]
jobs:
ruff:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: chartboost/ruff-action@v1
16 changes: 16 additions & 0 deletions .github/workflows/wiki.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# .github/workflows/deploy-wiki.yml
name: deploy-wiki
on:
push:
branches: "master"
paths: wiki/**
workflow_dispatch:
jobs:
deploy-wiki:
permissions:
contents: write
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: perl -i -pe 's;(\[.*?\])\((?!https:\/\/)(.*?)\.md\);\1(\2);g' wiki/*.md
- uses: actions4gh/deploy-wiki@v1
184 changes: 171 additions & 13 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,18 +1,176 @@
*.csv
*.info
*.srf
*.ll
# Created by https://www.toptal.com/developers/gitignore/api/python
# Edit at https://www.toptal.com/developers/gitignore?templates=python

*.pyc
*.idea
*.egg-info/
### Python ###
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# params_plot.py* will be generated by calling plot_station.py if no output dir is given to plot_station.py so needs to be ignored
*params_plot.py*
# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
**/__pycache__
**/sample1/output/
**/.cache/
**/.coverage
cover/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
.pybuilder/
target/

# Jupyter Notebook
.ipynb_checkpoints

# IPython
profile_default/
ipython_config.py

# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# .python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
#poetry.lock

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
#pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/#use-with-ide
.pdm.toml

# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
__pypackages__/

# Celery stuff
celerybeat-schedule
celerybeat.pid

# SageMath parsed files
*.sage.py

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

# pytype static type analyzer
.pytype/

# Cython debug symbols
cython_debug/

# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/

### Python Patch ###
# Poetry local configuration file - https://python-poetry.org/docs/configuration/#local-configuration
poetry.toml

# ruff
.ruff_cache/

# LSP config files
pyrightconfig.json

# End of https://www.toptal.com/developers/gitignore/api/python
20 changes: 0 additions & 20 deletions .travis.yml

This file was deleted.

Loading