climdata 0.0.2__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 (51) hide show
  1. climdata-0.0.2/.editorconfig +21 -0
  2. climdata-0.0.2/.github/ISSUE_TEMPLATE/bug_report.md +25 -0
  3. climdata-0.0.2/.github/ISSUE_TEMPLATE/config.yml +10 -0
  4. climdata-0.0.2/.github/ISSUE_TEMPLATE/feature_request.md +18 -0
  5. climdata-0.0.2/.github/workflows/docs-build.yml +55 -0
  6. climdata-0.0.2/.github/workflows/docs.yml +31 -0
  7. climdata-0.0.2/.github/workflows/installation.yml +31 -0
  8. climdata-0.0.2/.github/workflows/macos.yml +42 -0
  9. climdata-0.0.2/.github/workflows/pypi.yml +30 -0
  10. climdata-0.0.2/.github/workflows/ubuntu.yml +47 -0
  11. climdata-0.0.2/.github/workflows/windows.yml +34 -0
  12. climdata-0.0.2/.gitignore +110 -0
  13. climdata-0.0.2/LICENSE +22 -0
  14. climdata-0.0.2/MANIFEST.in +7 -0
  15. climdata-0.0.2/PKG-INFO +253 -0
  16. climdata-0.0.2/README.md +191 -0
  17. climdata-0.0.2/climdata/__init__.py +8 -0
  18. climdata-0.0.2/climdata/__main__.py +5 -0
  19. climdata-0.0.2/climdata/conf/config.yaml +23 -0
  20. climdata-0.0.2/climdata/conf/mappings/parameters.yaml +172 -0
  21. climdata-0.0.2/climdata/datasets/DWD.py +73 -0
  22. climdata-0.0.2/climdata/datasets/MSWX.py +195 -0
  23. climdata-0.0.2/climdata/main.py +56 -0
  24. climdata-0.0.2/climdata/requirements.txt +20 -0
  25. climdata-0.0.2/climdata/utils/__init__.py +0 -0
  26. climdata-0.0.2/climdata/utils/config.py +30 -0
  27. climdata-0.0.2/climdata/utils/utils_download.py +976 -0
  28. climdata-0.0.2/climdata.egg-info/PKG-INFO +253 -0
  29. climdata-0.0.2/climdata.egg-info/SOURCES.txt +49 -0
  30. climdata-0.0.2/climdata.egg-info/dependency_links.txt +1 -0
  31. climdata-0.0.2/climdata.egg-info/entry_points.txt +2 -0
  32. climdata-0.0.2/climdata.egg-info/requires.txt +43 -0
  33. climdata-0.0.2/climdata.egg-info/top_level.txt +1 -0
  34. climdata-0.0.2/docs/changelog.md +11 -0
  35. climdata-0.0.2/docs/climdata.md +4 -0
  36. climdata-0.0.2/docs/common.md +3 -0
  37. climdata-0.0.2/docs/contributing.md +108 -0
  38. climdata-0.0.2/docs/examples/run_downloader.ipynb +1244 -0
  39. climdata-0.0.2/docs/faq.md +1 -0
  40. climdata-0.0.2/docs/index.md +16 -0
  41. climdata-0.0.2/docs/installation.md +21 -0
  42. climdata-0.0.2/docs/overrides/main.html +11 -0
  43. climdata-0.0.2/docs/usage.md +7 -0
  44. climdata-0.0.2/dwd_tas_LAT52.507_LON14.1372_1989-01-01_2020-12-31.csv +11506 -0
  45. climdata-0.0.2/mkdocs.yml +86 -0
  46. climdata-0.0.2/pyproject.toml +82 -0
  47. climdata-0.0.2/requirements.txt +48 -0
  48. climdata-0.0.2/requirements_dev.txt +29 -0
  49. climdata-0.0.2/setup.cfg +4 -0
  50. climdata-0.0.2/tests/__init__.py +1 -0
  51. climdata-0.0.2/tests/test_climdata.py +21 -0
@@ -0,0 +1,21 @@
1
+ # http://editorconfig.org
2
+
3
+ root = true
4
+
5
+ [*]
6
+ indent_style = space
7
+ indent_size = 4
8
+ trim_trailing_whitespace = true
9
+ insert_final_newline = true
10
+ charset = utf-8
11
+ end_of_line = lf
12
+
13
+ [*.bat]
14
+ indent_style = tab
15
+ end_of_line = crlf
16
+
17
+ [LICENSE]
18
+ insert_final_newline = false
19
+
20
+ [Makefile]
21
+ indent_style = tab
@@ -0,0 +1,25 @@
1
+ ---
2
+ name: Bug Report
3
+ about: Create a bug report to help us improve
4
+ labels: bug
5
+ ---
6
+
7
+ <!-- Please search existing issues to avoid creating duplicates. -->
8
+
9
+ ### Environment Information
10
+
11
+ - climdata version:
12
+ - Python version:
13
+ - Operating System:
14
+
15
+ ### Description
16
+
17
+ Describe what you were trying to get done.
18
+ Tell us what happened, what went wrong, and what you expected to happen.
19
+
20
+ ### What I Did
21
+
22
+ ```
23
+ Paste the command(s) you ran and the output.
24
+ If there was a crash, please include the traceback here.
25
+ ```
@@ -0,0 +1,10 @@
1
+ contact_links:
2
+ - name: Ask questions
3
+ url: https://github.com/Kaushikreddym/climdata/discussions/categories/q-a
4
+ about: Please ask and answer questions here.
5
+ - name: Ideas
6
+ url: https://github.com/Kaushikreddym/climdata/discussions/categories/ideas
7
+ about: Please share your ideas here.
8
+ - name: Ask questions from the GIS community
9
+ url: https://gis.stackexchange.com
10
+ about: To get answers from questions in the GIS community, please ask and answer questions here.
@@ -0,0 +1,18 @@
1
+ ---
2
+ name: Feature Request
3
+ about: Submit a feature request to help us improve
4
+ labels: Feature Request
5
+ ---
6
+
7
+ <!-- Please search existing issues to avoid creating duplicates. -->
8
+
9
+ ### Description
10
+
11
+ Describe the feature (e.g., new functions/tutorials) you would like to propose.
12
+ Tell us what can be achieved with this new feature and what's the expected outcome.
13
+
14
+ ### Source code
15
+
16
+ ```
17
+ Paste your source code here if have sample code to share.
18
+ ```
@@ -0,0 +1,55 @@
1
+ name: docs-build
2
+ on:
3
+ pull_request:
4
+ branches:
5
+ - main
6
+ - master
7
+
8
+ jobs:
9
+ deploy:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v4
13
+ with:
14
+ fetch-depth: 0
15
+ - uses: actions/setup-python@v5
16
+ with:
17
+ python-version: "3.11"
18
+
19
+ - name: Install GDAL
20
+ run: |
21
+ python -m pip install --upgrade pip
22
+ pip install --find-links=https://girder.github.io/large_image_wheels --no-cache GDAL pyproj
23
+ - name: Test GDAL installation
24
+ run: |
25
+ python -c "from osgeo import gdal"
26
+ gdalinfo --version
27
+ - name: Install dependencies
28
+ run: |
29
+ pip install --no-cache-dir Cython
30
+ pip install -r requirements.txt -r requirements_dev.txt
31
+ pip install .
32
+ - name: Discover typos with codespell
33
+ run: codespell --skip="*.csv,*.geojson,*.json,*.js,*.html,*cff,*.pdf,./.git" --ignore-words-list="aci,acount,hist"
34
+ - name: PKG-TEST
35
+ run: |
36
+ python -m unittest discover tests/
37
+ - name: Build docs
38
+ run: |
39
+ mkdocs build
40
+ # - name: Deploy to Netlify
41
+ # uses: nwtgck/actions-netlify@v2.0
42
+ # with:
43
+ # publish-dir: "./site"
44
+ # production-branch: main
45
+
46
+ # github-token: ${{ secrets.GITHUB_TOKEN }}
47
+ # deploy-message: "Deploy from GitHub Actions"
48
+ # enable-pull-request-comment: true
49
+ # enable-commit-comment: false
50
+ # overwrites-pull-request-comment: true
51
+ # env:
52
+ # NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
53
+ # NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
54
+ # timeout-minutes: 10
55
+
@@ -0,0 +1,31 @@
1
+ name: docs
2
+ on:
3
+ push:
4
+ branches:
5
+ - main
6
+ - master
7
+ jobs:
8
+ deploy:
9
+ runs-on: ubuntu-latest
10
+ steps:
11
+ - uses: actions/checkout@v4
12
+ with:
13
+ fetch-depth: 0
14
+ - uses: actions/setup-python@v5
15
+ with:
16
+ python-version: "3.11"
17
+
18
+ - name: Install dependencies
19
+ run: |
20
+ python -m pip install --upgrade pip
21
+ pip install --user --no-cache-dir Cython
22
+ pip install --user -r requirements.txt -r requirements_dev.txt
23
+ pip install .
24
+ - name: Discover typos with codespell
25
+ run: |
26
+ codespell --skip="*.csv,*.geojson,*.json,*.js,*.html,*cff,./.git" --ignore-words-list="aci,hist"
27
+ - name: PKG-TEST
28
+ run: |
29
+ python -m unittest discover tests/
30
+ - run: mkdocs gh-deploy --force
31
+
@@ -0,0 +1,31 @@
1
+ on:
2
+ push:
3
+ branches:
4
+ - main
5
+ - master
6
+ pull_request:
7
+ branches:
8
+ - main
9
+ - master
10
+
11
+
12
+ name: Linux installation
13
+ jobs:
14
+ test-ubuntu:
15
+ runs-on: ubuntu-latest
16
+ strategy:
17
+ fail-fast: false
18
+ matrix:
19
+ python-version: ["3.11"]
20
+
21
+ steps:
22
+ - uses: actions/checkout@v4
23
+ - name: Set up Python
24
+ uses: actions/setup-python@v5
25
+ with:
26
+ python-version: ${{ matrix.python-version }}
27
+
28
+ - name: Install package
29
+ run: pip install .
30
+ - name: Test import
31
+ run: python -c "import climdata; print('climdata import successful')"
@@ -0,0 +1,42 @@
1
+ on:
2
+ push:
3
+ branches:
4
+ - main
5
+ - master
6
+ pull_request:
7
+ branches:
8
+ - main
9
+ - master
10
+
11
+ name: macOS build
12
+ jobs:
13
+ test-macOS:
14
+ runs-on: ${{ matrix.os }}
15
+ name: ${{ matrix.os }} (${{ matrix.python-version}})
16
+
17
+ strategy:
18
+ fail-fast: false
19
+ matrix:
20
+ os: ["macOS-latest"]
21
+ python-version: ["3.11"]
22
+
23
+ steps:
24
+ - name: Checkout code
25
+ uses: actions/checkout@v4
26
+
27
+ - name: Set up Python
28
+ uses: actions/setup-python@v5
29
+ with:
30
+ python-version: ${{ matrix.python-version}}
31
+ - name: Install GDAL
32
+ run: |
33
+ brew install gdal
34
+ - name: Test GDAL installation
35
+ run: |
36
+ gdalinfo --version
37
+ - name: Install dependencies
38
+ run: |
39
+ python -m pip install --upgrade pip
40
+ pip install --no-cache-dir Cython
41
+ pip install -r requirements.txt
42
+ pip install .
@@ -0,0 +1,30 @@
1
+ # This workflows will upload a Python Package using Twine when a release is created
2
+ # For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries
3
+
4
+ name: pypi
5
+
6
+ on:
7
+ release:
8
+ types: [created]
9
+
10
+ jobs:
11
+ deploy:
12
+ runs-on: ubuntu-latest
13
+
14
+ steps:
15
+ - uses: actions/checkout@v4
16
+ - name: Set up Python
17
+ uses: actions/setup-python@v5
18
+ with:
19
+ python-version: "3.x"
20
+ - name: Install dependencies
21
+ run: |
22
+ python -m pip install --upgrade pip
23
+ pip install setuptools wheel twine build
24
+ - name: Build and publish
25
+ env:
26
+ TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
27
+ TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
28
+ run: |
29
+ python -m build
30
+ twine upload dist/*
@@ -0,0 +1,47 @@
1
+ on:
2
+ push:
3
+ branches:
4
+ - main
5
+ - master
6
+ pull_request:
7
+ branches:
8
+ - main
9
+ - master
10
+
11
+ name: Linux build
12
+ jobs:
13
+ py-check:
14
+ runs-on: ${{ matrix.config.os }}
15
+ name: ${{ matrix.config.os }} (${{ matrix.config.py }})
16
+ strategy:
17
+ fail-fast: false
18
+ matrix:
19
+ config:
20
+ - { os: ubuntu-latest, py: "3.9" }
21
+ - { os: ubuntu-latest, py: "3.10" }
22
+ - { os: ubuntu-latest, py: "3.11" }
23
+ - { os: ubuntu-latest, py: "3.12" }
24
+ steps:
25
+ - name: Checkout Code
26
+ uses: actions/checkout@v4
27
+ - name: Setup Python
28
+ uses: actions/setup-python@v5
29
+ with:
30
+ python-version: ${{ matrix.config.py }}
31
+ - name: Install GDAL
32
+ run: |
33
+ python -m pip install --upgrade pip
34
+ pip install --no-cache-dir Cython
35
+ pip install --find-links=https://girder.github.io/large_image_wheels --no-cache GDAL
36
+ - name: Test GDAL installation
37
+ run: |
38
+ python -c "from osgeo import gdal"
39
+ gdalinfo --version
40
+ - name: Install dependencies
41
+ run: |
42
+ pip install --user -r requirements.txt
43
+ pip install .
44
+ - name: PKG-TEST
45
+ run: |
46
+ python -m unittest discover tests/
47
+
@@ -0,0 +1,34 @@
1
+ on:
2
+ push:
3
+ branches:
4
+ - main
5
+ - master
6
+ pull_request:
7
+ branches:
8
+ - main
9
+ - master
10
+
11
+ name: Windows build
12
+ jobs:
13
+ test-windows:
14
+ runs-on: windows-latest
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+ - name: Install miniconda
18
+ uses: conda-incubator/setup-miniconda@v2
19
+ with:
20
+ auto-activate-base: true
21
+ python-version: "3.11"
22
+
23
+ - name: Install GDAL
24
+ run: conda install -c conda-forge gdal --yes
25
+ - name: Test GDAL installation
26
+ run: |
27
+ python -c "from osgeo import gdal"
28
+ gdalinfo --version
29
+ - name: Install dependencies
30
+ run: |
31
+ python -m pip install --upgrade pip
32
+ pip install --no-cache-dir Cython
33
+ pip install -r requirements.txt
34
+ pip install .
@@ -0,0 +1,110 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ private/
4
+ *.py[cod]
5
+ *$py.class
6
+
7
+ # C extensions
8
+ *.so
9
+
10
+ # Distribution / packaging
11
+ .Python
12
+ env/
13
+ build/
14
+ develop-eggs/
15
+ dist/
16
+ downloads/
17
+ private/
18
+ eggs/
19
+ .eggs/
20
+ lib/
21
+ lib64/
22
+ parts/
23
+ sdist/
24
+ var/
25
+ wheels/
26
+ *.egg-info/
27
+ .installed.cfg
28
+ *.egg
29
+
30
+ # PyInstaller
31
+ # Usually these files are written by a python script from a template
32
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
33
+ *.manifest
34
+ *.spec
35
+
36
+ # Installer logs
37
+ pip-log.txt
38
+ pip-delete-this-directory.txt
39
+
40
+ # Unit test / coverage reports
41
+ htmlcov/
42
+ .tox/
43
+ .coverage
44
+ .coverage.*
45
+ .cache
46
+ nosetests.xml
47
+ coverage.xml
48
+ *.cover
49
+ .hypothesis/
50
+ .pytest_cache/
51
+
52
+ # Translations
53
+ *.mo
54
+ *.pot
55
+
56
+ # Django stuff:
57
+ *.log
58
+ local_settings.py
59
+
60
+ # Flask stuff:
61
+ instance/
62
+ .webassets-cache
63
+
64
+ # Scrapy stuff:
65
+ .scrapy
66
+
67
+ # Sphinx documentation
68
+ docs/_build/
69
+
70
+ # PyBuilder
71
+ target/
72
+
73
+ # Jupyter Notebook
74
+ .ipynb_checkpoints
75
+
76
+ # pyenv
77
+ .python-version
78
+ climdata/data
79
+ # celery beat schedule file
80
+ celerybeat-schedule
81
+
82
+ # SageMath parsed files
83
+ *.sage.py
84
+
85
+ # dotenv
86
+ .env
87
+
88
+ # virtualenv
89
+ .venv
90
+ venv/
91
+ ENV/
92
+
93
+ # Spyder project settings
94
+ .spyderproject
95
+ .spyproject
96
+
97
+ # Rope project settings
98
+ .ropeproject
99
+
100
+ # mkdocs documentation
101
+ /site
102
+
103
+ # mypy
104
+ .mypy_cache/
105
+
106
+ # IDE settings
107
+ .vscode/
108
+ climdata/conf/service.json
109
+ outputs
110
+ *.csv
climdata-0.0.2/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025, Kaushik Muduchuru
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
@@ -0,0 +1,7 @@
1
+ include LICENSE
2
+ include README.md
3
+ include requirements.txt
4
+
5
+ recursive-exclude * __pycache__
6
+ recursive-exclude * *.py[co]
7
+