sgn-dq 0.0.1__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.
Files changed (30) hide show
  1. sgn_dq-0.0.1/.gitignore +10 -0
  2. sgn_dq-0.0.1/.gitlab-ci.yml +50 -0
  3. sgn_dq-0.0.1/CHANGELOG.md +10 -0
  4. sgn_dq-0.0.1/Makefile +42 -0
  5. sgn_dq-0.0.1/PKG-INFO +90 -0
  6. sgn_dq-0.0.1/README.md +29 -0
  7. sgn_dq-0.0.1/docs/gen_ref_nav.py +58 -0
  8. sgn_dq-0.0.1/docs/index.md +1 -0
  9. sgn_dq-0.0.1/mkdocs.yml +60 -0
  10. sgn_dq-0.0.1/pyproject.toml +217 -0
  11. sgn_dq-0.0.1/src/sgn_dq/__init__.py +1 -0
  12. sgn_dq-0.0.1/src/sgn_dq/_version.py +24 -0
  13. sgn_dq-0.0.1/src/sgn_dq/py.typed +0 -0
  14. sgn_dq-0.0.1/src/sgn_dq/tests/__init__.py +0 -0
  15. sgn_dq-0.0.1/src/sgn_dq/tests/test_band_rms_check.py +287 -0
  16. sgn_dq-0.0.1/src/sgn_dq/tests/test_bitmask_check.py +288 -0
  17. sgn_dq-0.0.1/src/sgn_dq/tests/test_boolean_gate.py +181 -0
  18. sgn_dq-0.0.1/src/sgn_dq/tests/test_boolean_not.py +86 -0
  19. sgn_dq-0.0.1/src/sgn_dq/tests/test_overflow_check.py +265 -0
  20. sgn_dq-0.0.1/src/sgn_dq/tests/test_rms_check.py +198 -0
  21. sgn_dq-0.0.1/src/sgn_dq/tests/test_valid_check.py +339 -0
  22. sgn_dq-0.0.1/src/sgn_dq/transforms/__init__.py +1 -0
  23. sgn_dq-0.0.1/src/sgn_dq/transforms/boolean_gate.py +95 -0
  24. sgn_dq-0.0.1/src/sgn_dq/transforms/boolean_not.py +53 -0
  25. sgn_dq-0.0.1/src/sgn_dq/transforms/evaluators/__init__.py +19 -0
  26. sgn_dq-0.0.1/src/sgn_dq/transforms/evaluators/band_rms_check.py +207 -0
  27. sgn_dq-0.0.1/src/sgn_dq/transforms/evaluators/bitmask_check.py +100 -0
  28. sgn_dq-0.0.1/src/sgn_dq/transforms/evaluators/overflow_check.py +208 -0
  29. sgn_dq-0.0.1/src/sgn_dq/transforms/evaluators/rms_check.py +103 -0
  30. sgn_dq-0.0.1/src/sgn_dq/transforms/evaluators/valid_check.py +101 -0
@@ -0,0 +1,10 @@
1
+ *.egg-info
2
+ build/
3
+ dist/
4
+ site/
5
+ __pycache__
6
+ _version.py
7
+ .coverage
8
+ .vscode/
9
+ .idea/
10
+ *.patch
@@ -0,0 +1,50 @@
1
+ include:
2
+ # -- python
3
+ - component: git.ligo.org/computing/gitlab/components/python/sdist@1
4
+ - component: git.ligo.org/computing/gitlab/components/python/wheel@1
5
+ - component: git.ligo.org/computing/gitlab/components/python/code-quality@1
6
+ inputs:
7
+ analyzer: "ruff"
8
+ requirements: "-r requirements-lint.txt"
9
+ - component: git.ligo.org/computing/gitlab/components/python/dependency-scanning@1
10
+ - component: git.ligo.org/computing/gitlab/components/python/type-checking@1
11
+ inputs:
12
+ project_dir: "src"
13
+ - component: git.ligo.org/computing/gitlab/components/python/test@1
14
+ inputs:
15
+ install_extra: test
16
+ python_versions:
17
+ - "3.11"
18
+ - "3.12"
19
+ - "3.13"
20
+ # -- docs
21
+ - component: git.ligo.org/computing/gitlab/components/mkdocs/build@1
22
+ inputs:
23
+ requirements: "-r requirements-docs.txt"
24
+ - component: git.ligo.org/computing/gitlab/components/mkdocs/pages@1
25
+ inputs:
26
+ pages_when: "default"
27
+
28
+ # -- customizations
29
+ ruff:
30
+ needs:
31
+ - requirements
32
+
33
+ mkdocs:
34
+ needs:
35
+ - requirements
36
+
37
+ # -- requirements
38
+ requirements:
39
+ stage: build
40
+ image: python:3.12
41
+ script:
42
+ - python -m pip install pipx
43
+ - pipx ensurepath
44
+ - source ~/.bashrc
45
+ - pipx install hatch
46
+ - hatch dep show requirements --feature docs > requirements-docs.txt
47
+ - hatch dep show requirements --feature lint > requirements-lint.txt
48
+ artifacts:
49
+ paths:
50
+ - requirements-*.txt
@@ -0,0 +1,10 @@
1
+ # Changelog
2
+
3
+ ## [Unreleased]
4
+
5
+ ## [0.0.1] - 2026-04-20
6
+
7
+ - Initial release.
8
+
9
+ [unreleased]: https://git.ligo.org/detchar/sgn-dq/sgn-dq/-/compare/0.0.1...main
10
+ [0.0.1]: https://git.ligo.org/detchar/sgn-dq/sgn-dq/-/tags/0.0.1
sgn_dq-0.0.1/Makefile ADDED
@@ -0,0 +1,42 @@
1
+ ifeq ($(PYTHONPATH),)
2
+ PYTHONPATH := src
3
+ else
4
+ PYTHONPATH := src:$(PYTHONPATH)
5
+ endif
6
+ export PYTHONPATH
7
+
8
+ .PHONY: all
9
+ all : format lint check test
10
+
11
+ .PHONY: help
12
+ help :
13
+ @echo
14
+ @echo 'Commands:'
15
+ @echo
16
+ @echo ' make test run tests'
17
+ @echo ' make lint run linter'
18
+ @echo ' make format run code formatter'
19
+ @echo ' make check run static type checker'
20
+ @echo ' make docs build documentation'
21
+ @echo
22
+
23
+ .PHONY: test
24
+ test :
25
+ pytest -v --cov=sgn_dq --cov-report=term-missing src/sgn_dq/tests
26
+
27
+ .PHONY: lint
28
+ lint :
29
+ ruff check
30
+
31
+ .PHONY: format
32
+ format :
33
+ ruff format
34
+ ruff check --fix
35
+
36
+ .PHONY: check
37
+ check :
38
+ mypy src
39
+
40
+ .PHONY: docs
41
+ docs :
42
+ mkdocs build -c
sgn_dq-0.0.1/PKG-INFO ADDED
@@ -0,0 +1,90 @@
1
+ Metadata-Version: 2.4
2
+ Name: sgn-dq
3
+ Version: 0.0.1
4
+ Summary: Data quality elements for sgn
5
+ Project-URL: Homepage, https://git.ligo.org/detchar/sgn-dq/sgn-dq
6
+ Project-URL: Documentation, https://detchar.docs.ligo.org/sgn-dq/sgn-dq
7
+ Project-URL: Repository, https://git.ligo.org/detchar/sgn-dq/sgn-dq.git
8
+ Project-URL: Issues, https://git.ligo.org/detchar/sgn-dq/sgn-dq/issues
9
+ Author-email: Derek Davis <derek.davis@ligo.org>, Olivia Godwin <olivia.godwin@ligo.org>, Zach Yarbrough <zach.yarbrough@ligo.org>
10
+ Maintainer-email: Derek Davis <derek.davis@ligo.org>, Olivia Godwin <olivia.godwin@ligo.org>, Zach Yarbrough <zach.yarbrough@ligo.org>
11
+ License-Expression: GPL-3.0-or-later
12
+ Classifier: Development Status :: 3 - Alpha
13
+ Classifier: Intended Audience :: Science/Research
14
+ Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Topic :: Scientific/Engineering :: Astronomy
17
+ Classifier: Topic :: Scientific/Engineering :: Physics
18
+ Requires-Python: >=3.11
19
+ Requires-Dist: sgn-arrakis
20
+ Requires-Dist: sgn-gwframe
21
+ Requires-Dist: sgn-ligo
22
+ Requires-Dist: sgn-ts
23
+ Requires-Dist: sgn>=0.6
24
+ Provides-Extra: dev
25
+ Requires-Dist: markdown-callouts>=0.2; extra == 'dev'
26
+ Requires-Dist: markdown-exec>=0.5; extra == 'dev'
27
+ Requires-Dist: mkdocs-coverage>=0.2; extra == 'dev'
28
+ Requires-Dist: mkdocs-gen-files>=0.3; extra == 'dev'
29
+ Requires-Dist: mkdocs-literate-nav>=0.4; extra == 'dev'
30
+ Requires-Dist: mkdocs-material-igwn; extra == 'dev'
31
+ Requires-Dist: mkdocs-section-index>=0.3; extra == 'dev'
32
+ Requires-Dist: mkdocs>=1.3; extra == 'dev'
33
+ Requires-Dist: mkdocstrings[python]; extra == 'dev'
34
+ Requires-Dist: mypy; extra == 'dev'
35
+ Requires-Dist: mypy-extensions; extra == 'dev'
36
+ Requires-Dist: pip; extra == 'dev'
37
+ Requires-Dist: pytest; extra == 'dev'
38
+ Requires-Dist: pytest-cov; extra == 'dev'
39
+ Requires-Dist: ruff; extra == 'dev'
40
+ Requires-Dist: toml>=0.10; extra == 'dev'
41
+ Provides-Extra: docs
42
+ Requires-Dist: markdown-callouts>=0.2; extra == 'docs'
43
+ Requires-Dist: markdown-exec>=0.5; extra == 'docs'
44
+ Requires-Dist: mkdocs-coverage>=0.2; extra == 'docs'
45
+ Requires-Dist: mkdocs-gen-files>=0.3; extra == 'docs'
46
+ Requires-Dist: mkdocs-literate-nav>=0.4; extra == 'docs'
47
+ Requires-Dist: mkdocs-material-igwn; extra == 'docs'
48
+ Requires-Dist: mkdocs-section-index>=0.3; extra == 'docs'
49
+ Requires-Dist: mkdocs>=1.3; extra == 'docs'
50
+ Requires-Dist: mkdocstrings[python]; extra == 'docs'
51
+ Requires-Dist: toml>=0.10; extra == 'docs'
52
+ Provides-Extra: lint
53
+ Requires-Dist: mypy; extra == 'lint'
54
+ Requires-Dist: mypy-extensions; extra == 'lint'
55
+ Requires-Dist: pip; extra == 'lint'
56
+ Requires-Dist: ruff; extra == 'lint'
57
+ Provides-Extra: test
58
+ Requires-Dist: pytest; extra == 'test'
59
+ Requires-Dist: pytest-cov; extra == 'test'
60
+ Description-Content-Type: text/markdown
61
+
62
+ <h1 align="center">sgn-dq</h1>
63
+
64
+ <p align="center">Data quality elements for <a href="https://git.ligo.org/greg/sgn">sgn</a></p>
65
+
66
+ <p align="center">
67
+ <a href="https://git.ligo.org/detchar/sgn-dq/sgn-dq/-/pipelines/latest">
68
+ <img alt="ci" src="https://git.ligo.org/detchar/sgn-dq/sgn-dq/badges/main/pipeline.svg" />
69
+ </a>
70
+ <a href="https://git.ligo.org/detchar/sgn-dq/sgn-dq/-/pipelines/latest">
71
+ <img alt="coverage" src="https://git.ligo.org/detchar/sgn-dq/sgn-dq/badges/main/coverage.svg" />
72
+ </a>
73
+ <a href="https://detchar.docs.ligo.org/sgn-dq/sgn-dq">
74
+ <img alt="documentation" src="https://img.shields.io/badge/docs-mkdocs%20material-blue.svg?style=flat" />
75
+ </a>
76
+ </p>
77
+
78
+ ---
79
+
80
+ ## Resources
81
+
82
+ * [Documentation](https://detchar.docs.ligo.org/sgn-dq/sgn-dq)
83
+ * [Source Code](https://git.ligo.org/detchar/sgn-dq/sgn-dq)
84
+ * [Issue Tracker](https://git.ligo.org/detchar/sgn-dq/sgn-dq/-/issues)
85
+
86
+ ## Installation
87
+
88
+ ```
89
+ pip install sgn-dq
90
+ ```
sgn_dq-0.0.1/README.md ADDED
@@ -0,0 +1,29 @@
1
+ <h1 align="center">sgn-dq</h1>
2
+
3
+ <p align="center">Data quality elements for <a href="https://git.ligo.org/greg/sgn">sgn</a></p>
4
+
5
+ <p align="center">
6
+ <a href="https://git.ligo.org/detchar/sgn-dq/sgn-dq/-/pipelines/latest">
7
+ <img alt="ci" src="https://git.ligo.org/detchar/sgn-dq/sgn-dq/badges/main/pipeline.svg" />
8
+ </a>
9
+ <a href="https://git.ligo.org/detchar/sgn-dq/sgn-dq/-/pipelines/latest">
10
+ <img alt="coverage" src="https://git.ligo.org/detchar/sgn-dq/sgn-dq/badges/main/coverage.svg" />
11
+ </a>
12
+ <a href="https://detchar.docs.ligo.org/sgn-dq/sgn-dq">
13
+ <img alt="documentation" src="https://img.shields.io/badge/docs-mkdocs%20material-blue.svg?style=flat" />
14
+ </a>
15
+ </p>
16
+
17
+ ---
18
+
19
+ ## Resources
20
+
21
+ * [Documentation](https://detchar.docs.ligo.org/sgn-dq/sgn-dq)
22
+ * [Source Code](https://git.ligo.org/detchar/sgn-dq/sgn-dq)
23
+ * [Issue Tracker](https://git.ligo.org/detchar/sgn-dq/sgn-dq/-/issues)
24
+
25
+ ## Installation
26
+
27
+ ```
28
+ pip install sgn-dq
29
+ ```
@@ -0,0 +1,58 @@
1
+ # Copyright (c) 2021, Timothee Mazzucotelli
2
+ #
3
+ # Permission to use, copy, modify, and/or distribute this software for any
4
+ # purpose with or without fee is hereby granted, provided that the above
5
+ # copyright notice and this permission notice appear in all copies.
6
+ #
7
+ # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8
+ # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
9
+ # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
10
+ # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
11
+ # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
12
+ # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
13
+ # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
14
+
15
+ """Generate the code reference pages and navigation."""
16
+
17
+ from pathlib import Path
18
+
19
+ import mkdocs_gen_files
20
+
21
+ nav = mkdocs_gen_files.Nav()
22
+
23
+ src = Path("src")
24
+
25
+ for path in sorted(src.joinpath("sgn_dq").rglob("*.py")):
26
+ if path.name[0] == "_" or "tests" in path.parts:
27
+ continue
28
+
29
+ # Module path relative to src/ (e.g., sgn_dq/sources/frame)
30
+ module_path = path.relative_to(src).with_suffix("")
31
+ # Doc path mirrors module structure
32
+ doc_path = path.relative_to(src).with_suffix(".md")
33
+ full_doc_path = Path("reference", doc_path)
34
+
35
+ parts = tuple(module_path.parts)
36
+
37
+ if parts[-1] == "__init__":
38
+ parts = parts[:-1]
39
+ doc_path = doc_path.with_name("index.md")
40
+ full_doc_path = full_doc_path.with_name("index.md")
41
+ elif parts[-1] == "__main__":
42
+ continue
43
+
44
+ nav[parts] = doc_path.as_posix()
45
+
46
+ with mkdocs_gen_files.open(full_doc_path, "w") as fd:
47
+ ident = ".".join(parts)
48
+ fd.write(f"::: {ident}")
49
+
50
+ mkdocs_gen_files.set_edit_path(full_doc_path, path.relative_to(src))
51
+
52
+ with mkdocs_gen_files.open("reference/SUMMARY.md", "w") as nav_file:
53
+ nav_file.writelines(nav.build_literate_nav())
54
+
55
+ changelog = Path("CHANGELOG.md")
56
+ if changelog.exists():
57
+ with mkdocs_gen_files.open("changelog.md", "w") as fd:
58
+ fd.write(changelog.read_text())
@@ -0,0 +1 @@
1
+ --8<-- "README.md"
@@ -0,0 +1,60 @@
1
+ site_name: sgn-dq
2
+ site_description: Data quality elements for sgn
3
+ site_url: https://detchar.docs.ligo.org/sgn-dq/sgn-dq
4
+ repo_url: https://git.ligo.org/detchar/sgn-dq/sgn-dq
5
+ repo_name: detchar/sgn-dq/sgn-dq
6
+ site_dir: site
7
+ watch: [README.md, src/sgn_dq]
8
+
9
+ nav:
10
+ - Home:
11
+ - Overview: index.md
12
+ # defer to gen-files + literate-nav
13
+ - API Reference: reference/
14
+ - Changelog: changelog.md
15
+
16
+ theme:
17
+ name: material_igwn
18
+ features:
19
+ - content.code.copy
20
+ - content.code.annotate
21
+
22
+ markdown_extensions:
23
+ - admonition
24
+ - callouts:
25
+ strip_period: no
26
+ - pymdownx.highlight
27
+ - pymdownx.inlinehilite
28
+ - pymdownx.magiclink
29
+ - pymdownx.snippets:
30
+ check_paths: true
31
+ - pymdownx.superfences
32
+ - toc:
33
+ permalink: true
34
+ toc_depth: 4
35
+
36
+ plugins:
37
+ - search
38
+ - markdown-exec
39
+ - gen-files:
40
+ scripts:
41
+ - docs/gen_ref_nav.py
42
+ - literate-nav:
43
+ nav_file: SUMMARY.md
44
+ - section-index
45
+ - mkdocstrings:
46
+ handlers:
47
+ python:
48
+ paths: [src]
49
+ inventories:
50
+ - https://docs.python.org/3/objects.inv
51
+ - https://mkdocstrings.github.io/objects.inv
52
+ - https://mkdocstrings.github.io/griffe/objects.inv
53
+ - https://numpy.org/doc/stable/objects.inv
54
+ options:
55
+ docstring_style: numpy
56
+ docstring_options:
57
+ ignore_init_summary: yes
58
+ merge_init_into_class: yes
59
+ separate_signature: yes
60
+ show_root_full_path: no
@@ -0,0 +1,217 @@
1
+ [build-system]
2
+ requires = [
3
+ "hatchling",
4
+ "hatch-vcs",
5
+ ]
6
+ build-backend = "hatchling.build"
7
+
8
+ [project]
9
+ name = "sgn-dq"
10
+ authors = [
11
+ { name = "Derek Davis", email = "derek.davis@ligo.org" },
12
+ { name = "Olivia Godwin", email = "olivia.godwin@ligo.org" },
13
+ { name = "Zach Yarbrough", email = "zach.yarbrough@ligo.org" },
14
+ ]
15
+ maintainers = [
16
+ { name = "Derek Davis", email = "derek.davis@ligo.org" },
17
+ { name = "Olivia Godwin", email = "olivia.godwin@ligo.org" },
18
+ { name = "Zach Yarbrough", email = "zach.yarbrough@ligo.org" },
19
+ ]
20
+ description = "Data quality elements for sgn"
21
+ readme = "README.md"
22
+ license = "GPL-3.0-or-later"
23
+ classifiers = [
24
+ "Development Status :: 3 - Alpha",
25
+ "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)",
26
+ "Programming Language :: Python :: 3",
27
+ "Intended Audience :: Science/Research",
28
+ "Topic :: Scientific/Engineering :: Astronomy",
29
+ "Topic :: Scientific/Engineering :: Physics",
30
+ ]
31
+ dynamic = ["version"]
32
+ requires-python = ">=3.11"
33
+ dependencies = [
34
+ "sgn >= 0.6",
35
+ "sgn-arrakis",
36
+ "sgn-gwframe",
37
+ "sgn-ligo",
38
+ "sgn-ts",
39
+ ]
40
+
41
+ [project.optional-dependencies]
42
+ test = [
43
+ "pytest",
44
+ "pytest-cov",
45
+ ]
46
+ docs = [
47
+ "mkdocs >= 1.3",
48
+ "mkdocs-coverage >= 0.2",
49
+ "mkdocs-gen-files >= 0.3",
50
+ "mkdocs-literate-nav >= 0.4",
51
+ "mkdocs-material-igwn",
52
+ "mkdocs-section-index >= 0.3",
53
+ "mkdocstrings[python]",
54
+ "markdown-callouts >= 0.2",
55
+ "markdown-exec >= 0.5",
56
+ "toml >= 0.10",
57
+ ]
58
+ lint = [
59
+ "mypy",
60
+ "mypy-extensions",
61
+ "pip",
62
+ "ruff",
63
+ ]
64
+ dev = [
65
+ "sgn_dq[docs]",
66
+ "sgn_dq[lint]",
67
+ "sgn_dq[test]",
68
+ ]
69
+
70
+ [project.urls]
71
+ Homepage = "https://git.ligo.org/detchar/sgn-dq/sgn-dq"
72
+ Documentation = "https://detchar.docs.ligo.org/sgn-dq/sgn-dq"
73
+ Repository = "https://git.ligo.org/detchar/sgn-dq/sgn-dq.git"
74
+ Issues = "https://git.ligo.org/detchar/sgn-dq/sgn-dq/issues"
75
+
76
+ [project.entry-points.sgn_elements]
77
+ ValidCheck = "sgn_dq.transforms.evaluators:ValidCheck"
78
+ BitMaskCheck = "sgn_dq.transforms.evaluators:BitMaskCheck"
79
+ OverflowCheck = "sgn_dq.transforms.evaluators:OverflowCheck"
80
+ RmsCheck = "sgn_dq.transforms.evaluators:RmsCheck"
81
+ BandRmsCheck = "sgn_dq.transforms.evaluators:BandRmsCheck"
82
+
83
+ [tool.hatch.version]
84
+ source = "vcs"
85
+
86
+ [tool.hatch.build.hooks.vcs]
87
+ version-file = "src/sgn_dq/_version.py"
88
+
89
+ [tool.hatch.envs.default]
90
+ features = ["dev"]
91
+ installer = "uv"
92
+
93
+ [tool.hatch.envs.default.scripts]
94
+ check = "mypy --install-types --non-interactive sgn_dq"
95
+
96
+ [tool.hatch.envs.docs]
97
+ features = ["docs"]
98
+ scripts.build = "mkdocs build --clean --strict"
99
+ scripts.serve = "mkdocs serve"
100
+
101
+ [tool.hatch.envs.hatch-static-analysis]
102
+ config-path = "none"
103
+
104
+ [tool.hatch.envs.hatch-test]
105
+ features = ["test"]
106
+ default-args = ["sgn_dq/tests"]
107
+ extra-args = ["-ra", "-v", "-s"]
108
+
109
+ [[tool.hatch.envs.hatch-test.matrix]]
110
+ python = ["3.11", "3.12", "3.13"]
111
+
112
+ [tool.pytest.ini_options]
113
+ addopts = "--cov=sgn_dq --cov-report=term-missing"
114
+
115
+ [tool.coverage.paths]
116
+ source = [
117
+ "src/sgn_dq/",
118
+ "*/sgn_dq/",
119
+ ]
120
+
121
+ [tool.coverage.run]
122
+ source = ["sgn_dq"]
123
+ omit = [
124
+ "sgn_dq/tests/*",
125
+ "__init__.py",
126
+ "_version.py",
127
+ ]
128
+
129
+ [tool.coverage.report]
130
+ precision = 1
131
+ show_missing = true
132
+ omit = [
133
+ "sgn_dq/tests/*",
134
+ "__init__.py",
135
+ "_version.py",
136
+ ]
137
+
138
+ [tool.mypy]
139
+ check_untyped_defs = true
140
+ ignore_missing_imports = true
141
+ exclude = [
142
+ "docs",
143
+ "build",
144
+ "tests",
145
+ ]
146
+
147
+ [tool.ruff]
148
+ line-length = 88
149
+ indent-width = 4
150
+
151
+ [tool.ruff.lint]
152
+ select = [
153
+ # pycodestyle
154
+ "E",
155
+ "W",
156
+ # pyflakes
157
+ "F",
158
+ # isort
159
+ "I",
160
+ # pep8-naming
161
+ "N",
162
+ # flake8-bandit
163
+ "S",
164
+ # flake8-blind-except
165
+ "BLE",
166
+ # flake8-boolean-trap
167
+ "FBT",
168
+ # flake8-bugbear
169
+ "B",
170
+ # flake8-builtins
171
+ "A",
172
+ # flake8-comprehensions
173
+ "C4",
174
+ # flake8-datetimez
175
+ "DTZ",
176
+ # flake8-errmsg
177
+ "EM",
178
+ # flake8-executable
179
+ "EXE",
180
+ # flake8-future-annotations
181
+ "FA",
182
+ # flake8-logging
183
+ "LOG",
184
+ # flake8-logging-format
185
+ "G",
186
+ # flake8-pytest-style
187
+ "PT",
188
+ # flake8-return
189
+ "RET",
190
+ # flake8-self
191
+ "SLF",
192
+ # flake8-simplify
193
+ "SIM",
194
+ # flake8-slots
195
+ "SLOT",
196
+ # flake8-type-checking
197
+ "TCH",
198
+ # tryceratops
199
+ "TRY",
200
+ # refurb
201
+ "FURB",
202
+ # ruff-specific rules
203
+ "RUF",
204
+ ]
205
+ ignore = [
206
+ "E203", # flags whitespace on slicing
207
+ "S101", # assert statements
208
+ "B905", # strict zip
209
+ "C414", # unnecessary double-cast
210
+ "PT011", # pytest generic raises
211
+ "PT018", # assertion into multiple parts
212
+ ]
213
+
214
+ [tool.ruff.lint.per-file-ignores]
215
+ "__init__.py" = ["F401"]
216
+ "**/tests/*" = ["SLF001"]
217
+ "**/cli.py" = ["B008", "FBT001", "FBT002", "FBT003"]
@@ -0,0 +1 @@
1
+ """Data quality elements for sgn."""
@@ -0,0 +1,24 @@
1
+ # file generated by vcs-versioning
2
+ # don't change, don't track in version control
3
+ from __future__ import annotations
4
+
5
+ __all__ = [
6
+ "__version__",
7
+ "__version_tuple__",
8
+ "version",
9
+ "version_tuple",
10
+ "__commit_id__",
11
+ "commit_id",
12
+ ]
13
+
14
+ version: str
15
+ __version__: str
16
+ __version_tuple__: tuple[int | str, ...]
17
+ version_tuple: tuple[int | str, ...]
18
+ commit_id: str | None
19
+ __commit_id__: str | None
20
+
21
+ __version__ = version = '0.0.1'
22
+ __version_tuple__ = version_tuple = (0, 0, 1)
23
+
24
+ __commit_id__ = commit_id = None
File without changes
File without changes