ctao-datapipe 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- ctao_datapipe-0.1.0/.gitignore +133 -0
- ctao_datapipe-0.1.0/.gitlab-ci.yml +83 -0
- ctao_datapipe-0.1.0/.gitmodules +3 -0
- ctao_datapipe-0.1.0/.pre-commit-config.yaml +42 -0
- ctao_datapipe-0.1.0/AUTHORS +34 -0
- ctao_datapipe-0.1.0/CHANGES.rst +9 -0
- ctao_datapipe-0.1.0/Dockerfile +33 -0
- ctao_datapipe-0.1.0/LICENSE +29 -0
- ctao_datapipe-0.1.0/MANIFEST.in +2 -0
- ctao_datapipe-0.1.0/PKG-INFO +51 -0
- ctao_datapipe-0.1.0/README.md +16 -0
- ctao_datapipe-0.1.0/aiv-config.yml +13 -0
- ctao_datapipe-0.1.0/docs/Makefile +23 -0
- ctao_datapipe-0.1.0/docs/_static/cta.png +0 -0
- ctao_datapipe-0.1.0/docs/_static/custom.css +1 -0
- ctao_datapipe-0.1.0/docs/changelog.rst +7 -0
- ctao_datapipe-0.1.0/docs/changes/22.maintenance.rst +2 -0
- ctao_datapipe-0.1.0/docs/changes/README.md +22 -0
- ctao_datapipe-0.1.0/docs/changes/template.rst +43 -0
- ctao_datapipe-0.1.0/docs/conf.py +78 -0
- ctao_datapipe-0.1.0/docs/index.rst +72 -0
- ctao_datapipe-0.1.0/docs/installation.rst +35 -0
- ctao_datapipe-0.1.0/docs/reference.rst +7 -0
- ctao_datapipe-0.1.0/docs/user-guide.rst +198 -0
- ctao_datapipe-0.1.0/environment.yml +27 -0
- ctao_datapipe-0.1.0/pyproject.toml +182 -0
- ctao_datapipe-0.1.0/report/inspection.tex +24 -0
- ctao_datapipe-0.1.0/report/performance_verification.tex +0 -0
- ctao_datapipe-0.1.0/report/preamble.tex +17 -0
- ctao_datapipe-0.1.0/setup.cfg +4 -0
- ctao_datapipe-0.1.0/sonar-project.properties +11 -0
- ctao_datapipe-0.1.0/src/ctao_datapipe.egg-info/PKG-INFO +51 -0
- ctao_datapipe-0.1.0/src/ctao_datapipe.egg-info/SOURCES.txt +43 -0
- ctao_datapipe-0.1.0/src/ctao_datapipe.egg-info/dependency_links.txt +1 -0
- ctao_datapipe-0.1.0/src/ctao_datapipe.egg-info/requires.txt +25 -0
- ctao_datapipe-0.1.0/src/ctao_datapipe.egg-info/top_level.txt +1 -0
- ctao_datapipe-0.1.0/src/datapipe/__init__.py +10 -0
- ctao_datapipe-0.1.0/src/datapipe/_version.py +21 -0
- ctao_datapipe-0.1.0/src/datapipe/tests/__init__.py +0 -0
- ctao_datapipe-0.1.0/src/datapipe/tests/test_version.py +4 -0
- ctao_datapipe-0.1.0/src/datapipe/version.py +22 -0
- ctao_datapipe-0.1.0/workflow_tests/test_simple_workflows.py +140 -0
- ctao_datapipe-0.1.0/workflows/process_dl0_dl1.cwl +56 -0
- ctao_datapipe-0.1.0/workflows/process_dl1_dl2.cwl +59 -0
- ctao_datapipe-0.1.0/workflows/workflow_dl0_to_dl2.cwl +46 -0
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
# setuptools_scm generated version file
|
|
2
|
+
_version.py
|
|
3
|
+
|
|
4
|
+
# Byte-compiled / optimized / DLL files
|
|
5
|
+
__pycache__/
|
|
6
|
+
*.py[cod]
|
|
7
|
+
*$py.class
|
|
8
|
+
|
|
9
|
+
# C extensions
|
|
10
|
+
*.so
|
|
11
|
+
|
|
12
|
+
# Distribution / packaging
|
|
13
|
+
.Python
|
|
14
|
+
build/
|
|
15
|
+
develop-eggs/
|
|
16
|
+
dist/
|
|
17
|
+
downloads/
|
|
18
|
+
eggs/
|
|
19
|
+
.eggs/
|
|
20
|
+
lib/
|
|
21
|
+
lib64/
|
|
22
|
+
parts/
|
|
23
|
+
sdist/
|
|
24
|
+
var/
|
|
25
|
+
wheels/
|
|
26
|
+
pip-wheel-metadata/
|
|
27
|
+
share/python-wheels/
|
|
28
|
+
*.egg-info/
|
|
29
|
+
.installed.cfg
|
|
30
|
+
*.egg
|
|
31
|
+
MANIFEST
|
|
32
|
+
|
|
33
|
+
# PyInstaller
|
|
34
|
+
# Usually these files are written by a python script from a template
|
|
35
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
36
|
+
*.manifest
|
|
37
|
+
*.spec
|
|
38
|
+
|
|
39
|
+
# Installer logs
|
|
40
|
+
pip-log.txt
|
|
41
|
+
pip-delete-this-directory.txt
|
|
42
|
+
|
|
43
|
+
# Unit test / coverage reports
|
|
44
|
+
htmlcov/
|
|
45
|
+
.tox/
|
|
46
|
+
.nox/
|
|
47
|
+
.coverage
|
|
48
|
+
.coverage.*
|
|
49
|
+
.cache
|
|
50
|
+
nosetests.xml
|
|
51
|
+
coverage.xml
|
|
52
|
+
*.cover
|
|
53
|
+
*.py,cover
|
|
54
|
+
.hypothesis/
|
|
55
|
+
.pytest_cache/
|
|
56
|
+
|
|
57
|
+
# Translations
|
|
58
|
+
*.mo
|
|
59
|
+
*.pot
|
|
60
|
+
|
|
61
|
+
# Django stuff:
|
|
62
|
+
*.log
|
|
63
|
+
local_settings.py
|
|
64
|
+
db.sqlite3
|
|
65
|
+
db.sqlite3-journal
|
|
66
|
+
|
|
67
|
+
# Flask stuff:
|
|
68
|
+
instance/
|
|
69
|
+
.webassets-cache
|
|
70
|
+
|
|
71
|
+
# Scrapy stuff:
|
|
72
|
+
.scrapy
|
|
73
|
+
|
|
74
|
+
# Sphinx documentation
|
|
75
|
+
docs/_build/
|
|
76
|
+
docs/api
|
|
77
|
+
|
|
78
|
+
# PyBuilder
|
|
79
|
+
target/
|
|
80
|
+
|
|
81
|
+
# Jupyter Notebook
|
|
82
|
+
.ipynb_checkpoints
|
|
83
|
+
|
|
84
|
+
# IPython
|
|
85
|
+
profile_default/
|
|
86
|
+
ipython_config.py
|
|
87
|
+
|
|
88
|
+
# pyenv
|
|
89
|
+
.python-version
|
|
90
|
+
|
|
91
|
+
# pipenv
|
|
92
|
+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
|
93
|
+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
|
94
|
+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
|
95
|
+
# install all needed dependencies.
|
|
96
|
+
#Pipfile.lock
|
|
97
|
+
|
|
98
|
+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
|
|
99
|
+
__pypackages__/
|
|
100
|
+
|
|
101
|
+
# Celery stuff
|
|
102
|
+
celerybeat-schedule
|
|
103
|
+
celerybeat.pid
|
|
104
|
+
|
|
105
|
+
# SageMath parsed files
|
|
106
|
+
*.sage.py
|
|
107
|
+
|
|
108
|
+
# Environments
|
|
109
|
+
.env
|
|
110
|
+
.venv
|
|
111
|
+
env/
|
|
112
|
+
venv/
|
|
113
|
+
ENV/
|
|
114
|
+
env.bak/
|
|
115
|
+
venv.bak/
|
|
116
|
+
|
|
117
|
+
# Spyder project settings
|
|
118
|
+
.spyderproject
|
|
119
|
+
.spyproject
|
|
120
|
+
|
|
121
|
+
# Rope project settings
|
|
122
|
+
.ropeproject
|
|
123
|
+
|
|
124
|
+
# mkdocs documentation
|
|
125
|
+
/site
|
|
126
|
+
|
|
127
|
+
# mypy
|
|
128
|
+
.mypy_cache/
|
|
129
|
+
.dmypy.json
|
|
130
|
+
dmypy.json
|
|
131
|
+
|
|
132
|
+
# Pyre type checker
|
|
133
|
+
.pyre/
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
include:
|
|
2
|
+
- project: 'cta-computing/dpps/aiv/dpps-aiv-toolkit'
|
|
3
|
+
ref: dd87c1aaf379ece916a8e11c069e79d07b521b56
|
|
4
|
+
file: "ci-functions.yml"
|
|
5
|
+
- "aiv-config.yml"
|
|
6
|
+
|
|
7
|
+
stages:
|
|
8
|
+
- prepare
|
|
9
|
+
- lint
|
|
10
|
+
- build
|
|
11
|
+
- sign
|
|
12
|
+
- tests
|
|
13
|
+
- sonarqube
|
|
14
|
+
- publish
|
|
15
|
+
- report
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
# full test for report, including summary and coverage xml artifacts
|
|
19
|
+
test:
|
|
20
|
+
stage: tests
|
|
21
|
+
image: harbor.cta-observatory.org/proxy_cache/python:3.12
|
|
22
|
+
|
|
23
|
+
before_script:
|
|
24
|
+
- python --version
|
|
25
|
+
- pip install -e .[test]
|
|
26
|
+
- apt update --yes && apt install --yes nodejs
|
|
27
|
+
|
|
28
|
+
script:
|
|
29
|
+
- >-
|
|
30
|
+
pytest -v --color=yes
|
|
31
|
+
--doctest-modules --doctest-glob='docs/**/*.rst'
|
|
32
|
+
--ignore-glob='src/datapipe/_dev_version/*'
|
|
33
|
+
--cov --cov-report=xml:test/coverage.xml
|
|
34
|
+
--junitxml=test/report.xml
|
|
35
|
+
--log-cli-level=INFO
|
|
36
|
+
|
|
37
|
+
after_script: []
|
|
38
|
+
|
|
39
|
+
artifacts:
|
|
40
|
+
paths:
|
|
41
|
+
- test/coverage.xml
|
|
42
|
+
- test/report.xml
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
collect-test-artifacts:
|
|
46
|
+
needs:
|
|
47
|
+
- job: collect-manual-tests
|
|
48
|
+
artifacts: true
|
|
49
|
+
- job: test
|
|
50
|
+
artifacts: true
|
|
51
|
+
|
|
52
|
+
# unit tests using a matrix of python versions
|
|
53
|
+
unittests:
|
|
54
|
+
stage: tests
|
|
55
|
+
parallel:
|
|
56
|
+
matrix:
|
|
57
|
+
- PYTHON_VERSION:
|
|
58
|
+
- "3.11"
|
|
59
|
+
- "3.12"
|
|
60
|
+
- "3.13"
|
|
61
|
+
|
|
62
|
+
image: "harbor.cta-observatory.org/proxy_cache/python:$PYTHON_VERSION"
|
|
63
|
+
|
|
64
|
+
before_script:
|
|
65
|
+
- apt update --yes
|
|
66
|
+
- apt install --yes nodejs # needed for cwl with JS
|
|
67
|
+
- python --version
|
|
68
|
+
- pip install -e .[test]
|
|
69
|
+
|
|
70
|
+
script:
|
|
71
|
+
- >-
|
|
72
|
+
pytest -v --color=yes
|
|
73
|
+
--doctest-modules
|
|
74
|
+
--doctest-glob='docs/**/*.rst' --ignore-glob='src/datapipe/_dev_version/*'
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
k8s-integration-tests:
|
|
78
|
+
rules:
|
|
79
|
+
- when: never
|
|
80
|
+
|
|
81
|
+
publish-chart:
|
|
82
|
+
rules:
|
|
83
|
+
- when: never
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
repos:
|
|
2
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
3
|
+
rev: v5.0.0 # Use the ref you want to point at
|
|
4
|
+
hooks:
|
|
5
|
+
- id: trailing-whitespace
|
|
6
|
+
exclude: ".*\\.fits(\\.fz)?"
|
|
7
|
+
- id: check-added-large-files
|
|
8
|
+
- id: check-case-conflict
|
|
9
|
+
- id: check-merge-conflict
|
|
10
|
+
exclude: ".*\\.fits(\\.fz)?"
|
|
11
|
+
- id: end-of-file-fixer
|
|
12
|
+
exclude: ".*\\.fits(\\.fz)?"
|
|
13
|
+
|
|
14
|
+
- repo: https://github.com/codespell-project/codespell
|
|
15
|
+
rev: v2.4.1
|
|
16
|
+
hooks:
|
|
17
|
+
- id: codespell
|
|
18
|
+
additional_dependencies:
|
|
19
|
+
- tomli
|
|
20
|
+
|
|
21
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
22
|
+
rev: v0.9.5
|
|
23
|
+
hooks:
|
|
24
|
+
- id: ruff
|
|
25
|
+
args: [ --fix, --show-fixes ]
|
|
26
|
+
- id: ruff-format
|
|
27
|
+
|
|
28
|
+
- repo: https://github.com/scientific-python/cookie
|
|
29
|
+
rev: "2025.01.22"
|
|
30
|
+
hooks:
|
|
31
|
+
- id: sp-repo-review
|
|
32
|
+
|
|
33
|
+
- repo: local
|
|
34
|
+
hooks:
|
|
35
|
+
- id: CI yaml check
|
|
36
|
+
args: [ dpps-aiv-toolkit ]
|
|
37
|
+
name: CI yaml check
|
|
38
|
+
description: CI yaml check
|
|
39
|
+
language: script
|
|
40
|
+
entry: dpps-aiv-toolkit/cicheck.sh
|
|
41
|
+
always_run: true
|
|
42
|
+
pass_filenames: false
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
Karl Kosack <karl.kosack@cta-observatory.org>
|
|
2
|
+
Maximilian Linhoff <maximillian.linhoff@cta-observatory.org>
|
|
3
|
+
Thierry Stolarczyk <thierry.stolarczyk@cta-consortium.org>
|
|
4
|
+
Abelardo Moralejo Olaizola <abelardo.moralejo@cta-consortium.org>
|
|
5
|
+
Armelle Jardin-Blicq <armelle.jardin-blicq@cta-consortium.org>
|
|
6
|
+
Clara Escanuela <clara.escanuelanieves@cta-consortium.org>
|
|
7
|
+
Daniel Morcuende-Parrilla <daniel.morcuende@cta-observatory.org>
|
|
8
|
+
Daniel Parsons <daniel.parsons@cta-consortium.org>
|
|
9
|
+
David Berge <david.berge@cta-consortium.org>
|
|
10
|
+
David Sanchez <david.sanchez@cta-consortium.org>
|
|
11
|
+
Denis Dumora <denis.dumora@cta-consortium.org>
|
|
12
|
+
Dominik Elsässer <dominik.elsasser@cta-consortium.org>
|
|
13
|
+
Franca Cassol <franca.cassol@cta-consortium.org>
|
|
14
|
+
Gabriel Emery <gabriel.emery@cta-consortium.org>
|
|
15
|
+
Georg Schwefer <georg.schwefer@cta-consortium.org>
|
|
16
|
+
Gilles Maurin <gilles.maurin@cta-consortium.org>
|
|
17
|
+
Heide Costantini <heide.costantini@cta-consortium.org>
|
|
18
|
+
Ivan Agudo <ivan.agudo@cta-consortium.org>
|
|
19
|
+
Jim Hinton <jim.hinton@cta-observatory.org>
|
|
20
|
+
Jonas Hackfeld <jonas.hackfeld@cta-consortium.org>
|
|
21
|
+
Jose Contreras <jose.contreras@cta-consortium.org>
|
|
22
|
+
Lukas Beiske <lukas.beiske@cta-consortium.org>
|
|
23
|
+
Lukas Nickel <lukas.nickel@cta-consortium.org>
|
|
24
|
+
Marianne Lemoine-Goumard <marianne.lemoine-goumard@cta-consortium.org>
|
|
25
|
+
Mathieu de Bony <mathieu.debony@cta-consortium.org>
|
|
26
|
+
Rubén López Coto <ruben.lopez@cta-consortium.org>
|
|
27
|
+
Rune Dominik <rune.dominik@cta-consortium.org>
|
|
28
|
+
Ruo Yu Shang <ruoyu.shang@cta-consortium.org>
|
|
29
|
+
Stefan Fröse <stefan.frose@cta-consortium.org>
|
|
30
|
+
Thomas Vuillaume <thomas.vuillaume@cta-consortium.org>
|
|
31
|
+
Tjark Miener <tjark.miener@cta-consortium.org>
|
|
32
|
+
Tomas Bylund <tomas.bylund@cta-consortium.org>
|
|
33
|
+
Vincent Pollet <vincent.pollet@cta-consortium.org>
|
|
34
|
+
Weidong Jin <weidong.jin@cta-consortium.org>
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# See https://testdriven.io/blog/docker-best-practices/ for recommendations
|
|
2
|
+
# on writing dockerfiles for python projects.
|
|
3
|
+
|
|
4
|
+
# We use a build stage to build a wheel which we then copy and install
|
|
5
|
+
# in the second stage to minimize image size. This is mostly needed
|
|
6
|
+
# because setuptools_scm needs the full version info from git and git
|
|
7
|
+
# itself but including that in the final image would bloat its size.
|
|
8
|
+
|
|
9
|
+
# we are using the official python image with just a version tag here
|
|
10
|
+
# it comes with many tools needed to build and compile python packages
|
|
11
|
+
# which increases it's size but is helpful for building
|
|
12
|
+
FROM python:3.12 AS builder
|
|
13
|
+
|
|
14
|
+
# add necessary sources, including .git for version info
|
|
15
|
+
COPY . /repo/
|
|
16
|
+
|
|
17
|
+
# build the wheel
|
|
18
|
+
RUN python -m pip install --no-cache-dir build \
|
|
19
|
+
&& cd repo \
|
|
20
|
+
&& python -m build --wheel
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
# second stage, copy and install wheel
|
|
24
|
+
# We are using the official python 3.12 image
|
|
25
|
+
# as base image in the slim variant to reduce image size.
|
|
26
|
+
FROM python:3.12-slim
|
|
27
|
+
COPY --from=builder /repo/dist /tmp/dist
|
|
28
|
+
|
|
29
|
+
RUN python -m pip install --no-cache-dir /tmp/dist/* \
|
|
30
|
+
&& rm -r /tmp/dist
|
|
31
|
+
|
|
32
|
+
RUN useradd --create-home --system --user-group ctao
|
|
33
|
+
USER ctao
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
BSD 3-Clause License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2022, Cherenkov Telescope Array Observatory Consortium
|
|
4
|
+
All rights reserved.
|
|
5
|
+
|
|
6
|
+
Redistribution and use in source and binary forms, with or without
|
|
7
|
+
modification, are permitted provided that the following conditions are met:
|
|
8
|
+
|
|
9
|
+
1. Redistributions of source code must retain the above copyright notice, this
|
|
10
|
+
list of conditions and the following disclaimer.
|
|
11
|
+
|
|
12
|
+
2. Redistributions in binary form must reproduce the above copyright notice,
|
|
13
|
+
this list of conditions and the following disclaimer in the documentation
|
|
14
|
+
and/or other materials provided with the distribution.
|
|
15
|
+
|
|
16
|
+
3. Neither the name of the copyright holder nor the names of its
|
|
17
|
+
contributors may be used to endorse or promote products derived from
|
|
18
|
+
this software without specific prior written permission.
|
|
19
|
+
|
|
20
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
21
|
+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
22
|
+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
23
|
+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
|
24
|
+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
25
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
26
|
+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
27
|
+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
28
|
+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
29
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: ctao-datapipe
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: CTAO Data Processing Pipeline Software
|
|
5
|
+
Maintainer-email: Karl Kosack <karl.kosack@cta-observatory.org>, Maximilian Linhoff <maximilian.linhoff@cta-observatory.org>
|
|
6
|
+
License-Expression: BSD-3-Clause
|
|
7
|
+
Project-URL: repository, https://gitlab.cta-observatory.org/cta-computing/dpps/datapipe/datapipe
|
|
8
|
+
Project-URL: documentation, http://cta-computing.gitlab-pages.cta-observatory.org/dpps/datapipe/datapipe
|
|
9
|
+
Requires-Python: >=3.11
|
|
10
|
+
Description-Content-Type: text/markdown
|
|
11
|
+
License-File: LICENSE
|
|
12
|
+
License-File: AUTHORS
|
|
13
|
+
Requires-Dist: ctapipe~=0.25.0
|
|
14
|
+
Requires-Dist: ctapipe-io-zfits~=0.2.0
|
|
15
|
+
Requires-Dist: pyirf~=0.12
|
|
16
|
+
Requires-Dist: eventio~=1.15.0
|
|
17
|
+
Requires-Dist: iminuit>=2
|
|
18
|
+
Requires-Dist: matplotlib~=3.0
|
|
19
|
+
Provides-Extra: test
|
|
20
|
+
Requires-Dist: pytest; extra == "test"
|
|
21
|
+
Requires-Dist: pytest-cov; extra == "test"
|
|
22
|
+
Requires-Dist: pytest-requirements; extra == "test"
|
|
23
|
+
Requires-Dist: cwltool; extra == "test"
|
|
24
|
+
Provides-Extra: doc
|
|
25
|
+
Requires-Dist: sphinx; extra == "doc"
|
|
26
|
+
Requires-Dist: numpydoc; extra == "doc"
|
|
27
|
+
Requires-Dist: ctao-sphinx-theme~=0.1.2; extra == "doc"
|
|
28
|
+
Requires-Dist: sphinx-changelog; extra == "doc"
|
|
29
|
+
Provides-Extra: dev
|
|
30
|
+
Requires-Dist: setuptools_scm; extra == "dev"
|
|
31
|
+
Requires-Dist: towncrier; extra == "dev"
|
|
32
|
+
Provides-Extra: all
|
|
33
|
+
Requires-Dist: ctao-datapipe[dev,doc,test]; extra == "all"
|
|
34
|
+
Dynamic: license-file
|
|
35
|
+
|
|
36
|
+
# CTAO Data Processing Pipeline Subsystem
|
|
37
|
+
|
|
38
|
+
This package provides the software and workflow definitions for the [CTAO][1]
|
|
39
|
+
_Data Processing and Preservation System_ (DPPS) **Data Processing Pipeline**
|
|
40
|
+
subsystem (DataPipe). It is responsible for transforming raw (DL0) observed and
|
|
41
|
+
simulated data products produced by the observatory into "science-ready" data
|
|
42
|
+
products (DL3), including reconstructed event lists and instrumental response
|
|
43
|
+
functions.
|
|
44
|
+
|
|
45
|
+
- [Documentation][2]
|
|
46
|
+
- [Code Repository][3]
|
|
47
|
+
- [PyPI: ctao-datapipe](https://pypi.org/project/ctao-datapipe/)
|
|
48
|
+
|
|
49
|
+
[1]: https://www.ctao.org "CTAO website"
|
|
50
|
+
[2]: http://cta-computing.gitlab-pages.cta-observatory.org/dpps/datapipe/datapipe/latest/ "DataPipe documentation"
|
|
51
|
+
[3]: https://gitlab.cta-observatory.org/cta-computing/dpps/datapipe/datapipe "DataPipe code"
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# CTAO Data Processing Pipeline Subsystem
|
|
2
|
+
|
|
3
|
+
This package provides the software and workflow definitions for the [CTAO][1]
|
|
4
|
+
_Data Processing and Preservation System_ (DPPS) **Data Processing Pipeline**
|
|
5
|
+
subsystem (DataPipe). It is responsible for transforming raw (DL0) observed and
|
|
6
|
+
simulated data products produced by the observatory into "science-ready" data
|
|
7
|
+
products (DL3), including reconstructed event lists and instrumental response
|
|
8
|
+
functions.
|
|
9
|
+
|
|
10
|
+
- [Documentation][2]
|
|
11
|
+
- [Code Repository][3]
|
|
12
|
+
- [PyPI: ctao-datapipe](https://pypi.org/project/ctao-datapipe/)
|
|
13
|
+
|
|
14
|
+
[1]: https://www.ctao.org "CTAO website"
|
|
15
|
+
[2]: http://cta-computing.gitlab-pages.cta-observatory.org/dpps/datapipe/datapipe/latest/ "DataPipe documentation"
|
|
16
|
+
[3]: https://gitlab.cta-observatory.org/cta-computing/dpps/datapipe/datapipe "DataPipe code"
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
variables:
|
|
2
|
+
# used to select requirements
|
|
3
|
+
DPPS_UC_GROUPS: DataPipe
|
|
4
|
+
DPPS_RELEASE: v0.1
|
|
5
|
+
|
|
6
|
+
RELEASE_PLAN_FN: dpps-aiv-toolkit/dpps-release-plan/release_development_document/dpps-release-plan.tex
|
|
7
|
+
TRACEABILITY_CSV_FN: dpps-aiv-toolkit/requirements-traceability/DPPS_Requirements_Traceability_Matrix.csv
|
|
8
|
+
|
|
9
|
+
APPLICATION_NAME: DataPipe
|
|
10
|
+
APPLICATION_AUTHOR: DataPipe Team
|
|
11
|
+
APPLICATION_AUTHOR_ORGANIZATION: CTAO
|
|
12
|
+
DOCKER_IMAGE_CONTEXT: $CI_PROJECT_DIR
|
|
13
|
+
#EXTRA_CONFIG_FILES: aiv-config-dependencies.yml
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Minimal makefile for Sphinx documentation
|
|
2
|
+
|
|
3
|
+
# You can set these variables from the command line, and also
|
|
4
|
+
# from the environment for the first two.
|
|
5
|
+
SPHINXOPTS ?= -W --keep-going -n --color
|
|
6
|
+
SPHINXBUILD ?= sphinx-build
|
|
7
|
+
SOURCEDIR = .
|
|
8
|
+
BUILDDIR = build
|
|
9
|
+
|
|
10
|
+
# Put it first so that "make" without argument is like "make help".
|
|
11
|
+
help:
|
|
12
|
+
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
13
|
+
|
|
14
|
+
.PHONY: help Makefile clean
|
|
15
|
+
|
|
16
|
+
# Catch-all target: route all unknown targets to Sphinx using the new
|
|
17
|
+
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
|
|
18
|
+
%: Makefile
|
|
19
|
+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
20
|
+
|
|
21
|
+
clean:
|
|
22
|
+
rm -rf docs/api
|
|
23
|
+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Space+Grotesk:wght@300..700&display=swap');
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# How to use towncrier
|
|
2
|
+
|
|
3
|
+
An overview can be found [here](https://towncrier.readthedocs.io/en/stable/quickstart.html#).
|
|
4
|
+
|
|
5
|
+
1. Create a new file for your changes `<MERGE REQUEST NUMBER>.<TYPE>.rst` in the corresponding folder.
|
|
6
|
+
The following types are available:
|
|
7
|
+
- feature: `New feature`
|
|
8
|
+
- bugfix: `Bugfix`
|
|
9
|
+
- api: `API Changes`
|
|
10
|
+
- optimization: `Refactoring and Optimization`
|
|
11
|
+
- maintenance: `Maintenance`
|
|
12
|
+
|
|
13
|
+
2. Write a suitable message for the change:
|
|
14
|
+
```
|
|
15
|
+
Fixed ``crazy_function`` to be consistent with ``not_so_crazy_function``
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
3. (For maintainers) How to generate a change log:
|
|
19
|
+
Execute the following command in the base directory of the project
|
|
20
|
+
```
|
|
21
|
+
towncrier build --version=<VERSION NUMBER>
|
|
22
|
+
```
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{% if render_title %}
|
|
2
|
+
{% if versiondata.name %}
|
|
3
|
+
{{ versiondata.name | lower }} {{ versiondata.version }} ({{ versiondata.date }})
|
|
4
|
+
{{ top_underline * ((versiondata.name + versiondata.version + versiondata.date)|length + 4)}}
|
|
5
|
+
{% else %}
|
|
6
|
+
{{ versiondata.version }} ({{ versiondata.date }})
|
|
7
|
+
{{ top_underline * ((versiondata.version + versiondata.date)|length + 3)}}
|
|
8
|
+
{% endif %}
|
|
9
|
+
{% endif %}
|
|
10
|
+
|
|
11
|
+
{% for category, val in definitions.items() %}
|
|
12
|
+
|
|
13
|
+
{% set underline = underlines[0] %}
|
|
14
|
+
{{ definitions[category]['name'] }}
|
|
15
|
+
{{ underline * definitions[category]['name']|length }}
|
|
16
|
+
{% set underline = underlines[1] %}
|
|
17
|
+
|
|
18
|
+
{% for section, _ in sections.items() %}
|
|
19
|
+
{% if section and category in sections[section] %}
|
|
20
|
+
{{section}}
|
|
21
|
+
{{ underline * section|length }}
|
|
22
|
+
|
|
23
|
+
{% endif %}
|
|
24
|
+
{% if sections[section] and category in sections[section] %}
|
|
25
|
+
{% if definitions[category]['showcontent'] %}
|
|
26
|
+
{% for text, values in sections[section][category].items() %}
|
|
27
|
+
- {{ text }} [{{ values|join(', ') }}]
|
|
28
|
+
|
|
29
|
+
{% endfor %}
|
|
30
|
+
{% else %}
|
|
31
|
+
- {{ sections[section][category]['']|join(', ') }}
|
|
32
|
+
|
|
33
|
+
{% endif %}
|
|
34
|
+
{% if sections[section][category]|length == 0 %}
|
|
35
|
+
No significant changes.
|
|
36
|
+
|
|
37
|
+
{% else %}
|
|
38
|
+
{% endif %}
|
|
39
|
+
{% else %}
|
|
40
|
+
{# No significant changes. #}
|
|
41
|
+
{% endif %}
|
|
42
|
+
{% endfor %}
|
|
43
|
+
{% endfor %}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"""Configuration file for the Sphinx documentation builder."""
|
|
2
|
+
|
|
3
|
+
#
|
|
4
|
+
# This file only contains a selection of the most common options. For a full
|
|
5
|
+
# list see the documentation:
|
|
6
|
+
# https://www.sphinx-doc.org/en/master/usage/configuration.html
|
|
7
|
+
|
|
8
|
+
# -- Project information -----------------------------------------------------
|
|
9
|
+
import datapipe
|
|
10
|
+
|
|
11
|
+
project = "datapipe"
|
|
12
|
+
copyright = "2023, Cherenkov Telescope Array Observatory gGmbH"
|
|
13
|
+
author = "Karl Kosack"
|
|
14
|
+
version = datapipe.__version__
|
|
15
|
+
# The full version, including alpha/beta/rc tags.
|
|
16
|
+
release = version
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
# -- General configuration ---------------------------------------------------
|
|
20
|
+
|
|
21
|
+
# Add any Sphinx extension module names here, as strings. They can be
|
|
22
|
+
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
|
23
|
+
# ones.
|
|
24
|
+
extensions = [
|
|
25
|
+
"sphinx.ext.githubpages",
|
|
26
|
+
"sphinx.ext.intersphinx",
|
|
27
|
+
"sphinx.ext.autodoc",
|
|
28
|
+
"sphinx.ext.autosummary",
|
|
29
|
+
"numpydoc",
|
|
30
|
+
"sphinx_changelog",
|
|
31
|
+
]
|
|
32
|
+
|
|
33
|
+
# Add any paths that contain templates here, relative to this directory.
|
|
34
|
+
templates_path = []
|
|
35
|
+
|
|
36
|
+
# List of patterns, relative to source directory, that match files and
|
|
37
|
+
# directories to ignore when looking for source files.
|
|
38
|
+
# This pattern also affects html_static_path and html_extra_path.
|
|
39
|
+
exclude_patterns = ["changes"]
|
|
40
|
+
|
|
41
|
+
# have all links automatically associated with the right domain.
|
|
42
|
+
default_role = "py:obj"
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
# intersphinx allows referencing other packages sphinx docs
|
|
46
|
+
intersphinx_mapping = {
|
|
47
|
+
"python": ("https://docs.python.org/3/", None),
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
# -- Options for HTML output -------------------------------------------------
|
|
51
|
+
|
|
52
|
+
html_theme = "ctao"
|
|
53
|
+
html_theme_options = dict(
|
|
54
|
+
navigation_with_keys=False,
|
|
55
|
+
# setup for displaying multiple versions, also see setup in .gitlab-ci.yml
|
|
56
|
+
switcher=dict(
|
|
57
|
+
json_url="http://cta-computing.gitlab-pages.cta-observatory.org/dpps/datapipe/datapipe/versions.json", # noqa: E501
|
|
58
|
+
version_match="latest" if ".dev" in version else f"v{version}",
|
|
59
|
+
),
|
|
60
|
+
navbar_center=["version-switcher", "navbar-nav"],
|
|
61
|
+
gitlab_url="https://gitlab.cta-observatory.org/cta-computing/dpps/datapipe/datapipe",
|
|
62
|
+
logo=dict(
|
|
63
|
+
image_light="_static/cta.png",
|
|
64
|
+
image_dark="_static/cta_dark.png",
|
|
65
|
+
alt_text="ctao-logo",
|
|
66
|
+
text=" | data<b>pipe</b>",
|
|
67
|
+
),
|
|
68
|
+
)
|
|
69
|
+
|
|
70
|
+
# Add any paths that contain custom static files (such as style sheets) here,
|
|
71
|
+
# relative to this directory. They are copied after the builtin static files,
|
|
72
|
+
# so a file named "default.css" will overwrite the builtin "default.css".
|
|
73
|
+
html_static_path = [
|
|
74
|
+
"_static",
|
|
75
|
+
]
|
|
76
|
+
html_css_files = [
|
|
77
|
+
"custom.css",
|
|
78
|
+
]
|