envlib 0.0.2__tar.gz → 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.
@@ -0,0 +1,119 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ env/
12
+ build/
13
+ develop-eggs/
14
+ dist/
15
+ downloads/
16
+ eggs/
17
+ .eggs/
18
+ lib/
19
+ lib64/
20
+ parts/
21
+ sdist/
22
+ var/
23
+ wheels/
24
+ *.egg-info/
25
+ .installed.cfg
26
+ *.egg
27
+
28
+ # PyInstaller
29
+ # Usually these files are written by a python script from a template
30
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
31
+ *.manifest
32
+ *.spec
33
+
34
+ # Installer logs
35
+ pip-log.txt
36
+ pip-delete-this-directory.txt
37
+
38
+ # Unit test / coverage reports
39
+ htmlcov/
40
+ .tox/
41
+ .coverage
42
+ .coverage.*
43
+ .cache
44
+ nosetests.xml
45
+ coverage.xml
46
+ *.cover
47
+ .hypothesis/
48
+ .pytest_cache/
49
+ junit/
50
+ junit.xml
51
+ test.db
52
+
53
+ # Translations
54
+ *.mo
55
+ *.pot
56
+
57
+ # Django stuff:
58
+ *.log
59
+ local_settings.py
60
+
61
+ # Flask stuff:
62
+ instance/
63
+ .webassets-cache
64
+
65
+ # Scrapy stuff:
66
+ .scrapy
67
+
68
+ # Sphinx documentation
69
+ docs/_build/
70
+
71
+ # PyBuilder
72
+ target/
73
+
74
+ # Jupyter Notebook
75
+ .ipynb_checkpoints
76
+
77
+ # pyenv
78
+ .python-version
79
+
80
+ # celery beat schedule file
81
+ celerybeat-schedule
82
+
83
+ # SageMath parsed files
84
+ *.sage.py
85
+
86
+ # dotenv
87
+ .env
88
+
89
+ # virtualenv
90
+ .venv
91
+ venv/
92
+ ENV/
93
+ .ruff*
94
+
95
+ # Spyder project settings
96
+ .spyderproject
97
+ .spyproject
98
+
99
+ # Rope project settings
100
+ .ropeproject
101
+
102
+ # mkdocs documentation
103
+ /site
104
+
105
+ # mypy
106
+ .mypy_cache/
107
+
108
+ # .vscode
109
+ .vscode/
110
+
111
+ # OS files
112
+ .DS_Store
113
+
114
+ # Temp data
115
+ data/*
116
+
117
+ # Test config files
118
+ /envlib/tests/*.toml
119
+ /envlib/tests/*.yml
envlib-0.1.0/LICENSE ADDED
@@ -0,0 +1,16 @@
1
+ Apache Software License 2.0
2
+
3
+ Copyright (c) 2026, Mike Kittridge
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+
envlib-0.1.0/PKG-INFO ADDED
@@ -0,0 +1,75 @@
1
+ Metadata-Version: 2.4
2
+ Name: envlib
3
+ Version: 0.1.0
4
+ Summary: The environmental library
5
+ Project-URL: Documentation, https://mullenkamp.github.io/envlib/
6
+ Project-URL: Source, https://github.com/envlib
7
+ Author-email: mullenkamp <mullenkamp1@gmail.com>
8
+ License-File: LICENSE
9
+ Classifier: Programming Language :: Python :: 3 :: Only
10
+ Requires-Python: >=3.10
11
+ Requires-Dist: booklet>=0.12.5
12
+ Requires-Dist: cfdb>=0.9.0
13
+ Requires-Dist: ebooklet>=0.9.1
14
+ Requires-Dist: pyproj
15
+ Requires-Dist: shapely>=2.0
16
+ Requires-Dist: urllib3
17
+ Description-Content-Type: text/markdown
18
+
19
+ # envlib
20
+
21
+ <p align="center">
22
+ <em>The environmental library</em>
23
+ </p>
24
+
25
+ [![build](https://github.com/envlib/workflows/Build/badge.svg)](https://github.com/envlib/actions)
26
+ [![codecov](https://codecov.io/gh/mullenkamp/envlib/branch/main/graph/badge.svg)](https://codecov.io/gh/mullenkamp/envlib)
27
+ [![PyPI version](https://badge.fury.io/py/envlib.svg)](https://badge.fury.io/py/envlib)
28
+
29
+ ---
30
+
31
+ **Source Code**: <a href="https://github.com/envlib" target="_blank">https://github.com/envlib</a>
32
+
33
+ ---
34
+ ## Overview
35
+ envlib is a distributed database and catalogue for environmental data. It uses controlled vocabulary and standarized metadata to make it easy for users to query and access data. It uses cfdb as the backend. The metadata structure is based on tethysts.
36
+
37
+
38
+ ## Development
39
+
40
+ ### Setup environment
41
+
42
+ We use [UV](https://docs.astral.sh/uv/) to manage the development environment and production build.
43
+
44
+ ```bash
45
+ uv sync
46
+ ```
47
+
48
+ ### Run unit tests
49
+
50
+ You can run all the tests with:
51
+
52
+ ```bash
53
+ uv run pytest
54
+ ```
55
+
56
+ ### Format the code
57
+
58
+ Execute the following commands to apply linting and check typing:
59
+
60
+ ```bash
61
+ uv run ruff check .
62
+ uv run black --check --diff .
63
+ uv run mypy --install-types --non-interactive envlib
64
+ ```
65
+
66
+ To auto-format:
67
+
68
+ ```bash
69
+ uv run black .
70
+ uv run ruff check --fix .
71
+ ```
72
+
73
+ ## License
74
+
75
+ This project is licensed under the terms of the Apache Software License 2.0.
envlib-0.1.0/README.md ADDED
@@ -0,0 +1,57 @@
1
+ # envlib
2
+
3
+ <p align="center">
4
+ <em>The environmental library</em>
5
+ </p>
6
+
7
+ [![build](https://github.com/envlib/workflows/Build/badge.svg)](https://github.com/envlib/actions)
8
+ [![codecov](https://codecov.io/gh/mullenkamp/envlib/branch/main/graph/badge.svg)](https://codecov.io/gh/mullenkamp/envlib)
9
+ [![PyPI version](https://badge.fury.io/py/envlib.svg)](https://badge.fury.io/py/envlib)
10
+
11
+ ---
12
+
13
+ **Source Code**: <a href="https://github.com/envlib" target="_blank">https://github.com/envlib</a>
14
+
15
+ ---
16
+ ## Overview
17
+ envlib is a distributed database and catalogue for environmental data. It uses controlled vocabulary and standarized metadata to make it easy for users to query and access data. It uses cfdb as the backend. The metadata structure is based on tethysts.
18
+
19
+
20
+ ## Development
21
+
22
+ ### Setup environment
23
+
24
+ We use [UV](https://docs.astral.sh/uv/) to manage the development environment and production build.
25
+
26
+ ```bash
27
+ uv sync
28
+ ```
29
+
30
+ ### Run unit tests
31
+
32
+ You can run all the tests with:
33
+
34
+ ```bash
35
+ uv run pytest
36
+ ```
37
+
38
+ ### Format the code
39
+
40
+ Execute the following commands to apply linting and check typing:
41
+
42
+ ```bash
43
+ uv run ruff check .
44
+ uv run black --check --diff .
45
+ uv run mypy --install-types --non-interactive envlib
46
+ ```
47
+
48
+ To auto-format:
49
+
50
+ ```bash
51
+ uv run black .
52
+ uv run ruff check --fix .
53
+ ```
54
+
55
+ ## License
56
+
57
+ This project is licensed under the terms of the Apache Software License 2.0.
@@ -0,0 +1,9 @@
1
+ """envlib: a distributed database and catalogue for environmental data."""
2
+
3
+ from envlib import vocabularies
4
+ from envlib.catalogue import Catalogue, DatasetRef
5
+ from envlib.metadata import Metadata, ValidationError, compute_station_id
6
+
7
+ __version__ = '0.1.0'
8
+
9
+ __all__ = ['Catalogue', 'DatasetRef', 'Metadata', 'ValidationError', 'compute_station_id', 'vocabularies']