sertit 1.44.1.dev0__tar.gz → 1.44.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 (83) hide show
  1. sertit-1.44.2/.github/ISSUE_TEMPLATE/bug_report.md +27 -0
  2. sertit-1.44.2/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  3. sertit-1.44.2/.github/dependabot.yml +12 -0
  4. sertit-1.44.2/.github/pull_request_template.md +13 -0
  5. sertit-1.44.2/.github/workflows/publish.yml +44 -0
  6. sertit-1.44.2/.github/workflows/test.yml +21 -0
  7. sertit-1.44.2/.gitignore +35 -0
  8. sertit-1.44.2/.gitlab-ci.yml +66 -0
  9. sertit-1.44.2/.pre-commit-config.yaml +28 -0
  10. sertit-1.44.2/CHANGES.md +816 -0
  11. sertit-1.44.2/CODE_OF_CONDUCT.md +110 -0
  12. {sertit-1.44.1.dev0/sertit.egg-info → sertit-1.44.2}/PKG-INFO +30 -15
  13. sertit-1.44.2/ci/__init__.py +1 -0
  14. sertit-1.44.2/ci/script_utils.py +106 -0
  15. sertit-1.44.2/ci/test_arcpy.py +30 -0
  16. sertit-1.44.2/ci/test_ci.py +207 -0
  17. sertit-1.44.2/ci/test_display.py +59 -0
  18. sertit-1.44.2/ci/test_files.py +282 -0
  19. sertit-1.44.2/ci/test_geometry.py +194 -0
  20. sertit-1.44.2/ci/test_logs.py +135 -0
  21. sertit-1.44.2/ci/test_misc.py +161 -0
  22. sertit-1.44.2/ci/test_network.py +66 -0
  23. sertit-1.44.2/ci/test_path.py +184 -0
  24. sertit-1.44.2/ci/test_rasters.py +969 -0
  25. sertit-1.44.2/ci/test_rasters_rio.py +476 -0
  26. sertit-1.44.2/ci/test_s3.py +100 -0
  27. sertit-1.44.2/ci/test_snap.py +59 -0
  28. sertit-1.44.2/ci/test_strings.py +106 -0
  29. sertit-1.44.2/ci/test_types.py +49 -0
  30. sertit-1.44.2/ci/test_unistra.py +94 -0
  31. sertit-1.44.2/ci/test_vectors.py +359 -0
  32. sertit-1.44.2/ci/test_xml.py +171 -0
  33. sertit-1.44.2/docs/_build/.jupyter_cache/executed/6018a5c26455cc16a08db900745f3655/base.ipynb +2207 -0
  34. sertit-1.44.2/docs/_build/.jupyter_cache/global.db +0 -0
  35. {sertit-1.44.1.dev0 → sertit-1.44.2}/docs/_templates/custom-module-template.rst +13 -13
  36. {sertit-1.44.1.dev0 → sertit-1.44.2}/docs/conf.py +19 -6
  37. {sertit-1.44.1.dev0 → sertit-1.44.2}/docs/index.md +9 -0
  38. sertit-1.44.2/docs/notebooks/01_getting_started.ipynb +388 -0
  39. sertit-1.44.2/environment.yml +8 -0
  40. sertit-1.44.2/pyproject.toml +104 -0
  41. sertit-1.44.2/readthedocs.yml +17 -0
  42. sertit-1.44.2/requirements-doc.txt +15 -0
  43. {sertit-1.44.1.dev0 → sertit-1.44.2}/requirements.txt +4 -1
  44. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/__init__.py +1 -8
  45. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/__meta__.py +2 -10
  46. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/arcpy.py +2 -1
  47. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/ci.py +84 -97
  48. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/dask.py +3 -4
  49. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/display.py +1 -1
  50. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/files.py +40 -29
  51. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/geometry.py +3 -3
  52. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/logs.py +2 -2
  53. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/misc.py +2 -3
  54. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/network.py +1 -2
  55. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/path.py +40 -23
  56. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/rasters.py +118 -147
  57. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/rasters_rio.py +47 -55
  58. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/s3.py +14 -13
  59. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/snap.py +5 -5
  60. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/strings.py +2 -3
  61. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/types.py +8 -6
  62. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/unistra.py +39 -7
  63. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/vectors.py +22 -12
  64. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit/xml.py +14 -14
  65. {sertit-1.44.1.dev0 → sertit-1.44.2/sertit.egg-info}/PKG-INFO +30 -15
  66. sertit-1.44.2/sertit.egg-info/SOURCES.txt +78 -0
  67. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit.egg-info/requires.txt +5 -7
  68. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit.egg-info/top_level.txt +0 -1
  69. sertit-1.44.2/setup.cfg +4 -0
  70. sertit-1.44.1.dev0/sertit.egg-info/SOURCES.txt +0 -42
  71. sertit-1.44.1.dev0/setup.cfg +0 -18
  72. sertit-1.44.1.dev0/setup.py +0 -76
  73. {sertit-1.44.1.dev0 → sertit-1.44.2}/LICENSE +0 -0
  74. {sertit-1.44.1.dev0 → sertit-1.44.2}/MANIFEST.in +0 -0
  75. {sertit-1.44.1.dev0 → sertit-1.44.2}/NOTICE +0 -0
  76. {sertit-1.44.1.dev0 → sertit-1.44.2}/README.md +0 -0
  77. {sertit-1.44.1.dev0 → sertit-1.44.2}/docs/Makefile +0 -0
  78. {sertit-1.44.1.dev0 → sertit-1.44.2}/docs/_static/favicon.png +0 -0
  79. {sertit-1.44.1.dev0 → sertit-1.44.2}/docs/_static/sertit_utils.png +0 -0
  80. {sertit-1.44.1.dev0 → sertit-1.44.2}/docs/_templates/custom-base-template.rst +0 -0
  81. {sertit-1.44.1.dev0 → sertit-1.44.2}/docs/_templates/custom-class-template.rst +0 -0
  82. {sertit-1.44.1.dev0 → sertit-1.44.2}/docs/history.md +0 -0
  83. {sertit-1.44.1.dev0 → sertit-1.44.2}/sertit.egg-info/dependency_links.txt +0 -0
@@ -0,0 +1,27 @@
1
+ ---
2
+ name: Bug report
3
+ about: Create a report to help us improve
4
+ title: ''
5
+ labels: bug
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Describe the bug**
11
+ A clear and concise description of what the bug is.
12
+
13
+ **Code To Reproduce**
14
+ CLI commands or Python code snippet to reproduce the bug
15
+
16
+ ```python
17
+ ```
18
+
19
+ **Output**
20
+ Compete output obtained with maximal verbosity.
21
+
22
+ **Environment:**
23
+ - Python version: `python --version`
24
+ - sertit-utils version: `import sertit; sertit.__version__`
25
+
26
+ **Additional context**
27
+ Add any other context about the bug here.
@@ -0,0 +1,20 @@
1
+ ---
2
+ name: Feature request
3
+ about: Suggest an idea for this project
4
+ title: ''
5
+ labels: enhancement
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Is your feature request related to a problem? Please describe.**
11
+ A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12
+
13
+ **Describe the solution you'd like**
14
+ A clear and concise description of what you want to happen.
15
+
16
+ **Describe alternatives you've considered**
17
+ A clear and concise description of any alternative solutions or features you've considered.
18
+
19
+ **Additional context**
20
+ Add any other context about the feature request here.
@@ -0,0 +1,12 @@
1
+ # To get started with Dependabot version updates, you'll need to specify which
2
+ # package ecosystems to update and where the package manifests are located.
3
+ # Please see the documentation for all configuration options:
4
+ # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5
+
6
+ version: 2
7
+ updates:
8
+ - package-ecosystem: 'github-actions'
9
+ directory: '/'
10
+ schedule:
11
+ # Check for updates once a week
12
+ interval: 'weekly'
@@ -0,0 +1,13 @@
1
+ ### Your checklist for this pull request
2
+ Please review the [guidelines for contributing](../CONTRIBUTING.md) to this repository.
3
+
4
+ - [ ] Check the commit's or even all commits' message styles matches our requested structure.
5
+ - [ ] Check your code additions will fail neither code linting checks nor unit test.
6
+
7
+ ### Description
8
+ Please describe your pull request.
9
+
10
+ ### Further comments
11
+ If this is a relatively large or complex change, kick off the discussion by explaining why you chose the solution you did and what alternatives you considered, etc...
12
+
13
+ Thank you!
@@ -0,0 +1,44 @@
1
+ name: Publish to PyPI
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - "v*"
7
+ workflow_dispatch:
8
+
9
+ jobs:
10
+ build-n-publish:
11
+ name: Build and publish to PyPI
12
+ runs-on: ubuntu-latest
13
+ environment:
14
+ name: release
15
+ permissions:
16
+ id-token: write # IMPORTANT: this permission is mandatory for trusted publishing
17
+ steps:
18
+ - name: Checkout source
19
+ uses: actions/checkout@v4
20
+ with:
21
+ # Get history and tags for SCM versioning to work
22
+ fetch-depth: 0
23
+ - name: Install the latest version of uv with cache enabled
24
+ uses: astral-sh/setup-uv@v3
25
+ with:
26
+ version: "latest"
27
+ enable-cache: true
28
+ cache-dependency-glob: ""
29
+
30
+ - name: Check that the current version isn't already on PyPi
31
+ run: |
32
+ if [ "$(./get_pypi_latest_version.sh)" != "$(git describe --tags)" ]
33
+ then
34
+ echo "Current version is not on PyPI, proceed with bulding"
35
+ else
36
+ echo "Current version is the latest version uploaded to PyPI"
37
+ exit 1
38
+ fi
39
+
40
+ - name: Build a binary wheel and a source tarball
41
+ run: uvx --from build pyproject-build --sdist --wheel
42
+
43
+ - name: Publish distribution to PyPI
44
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,21 @@
1
+ name: Mirror and run GitLab CI
2
+
3
+ on: [ push ]
4
+
5
+ jobs:
6
+ build:
7
+ runs-on: ubuntu-latest
8
+ steps:
9
+ - uses: actions/checkout@v4
10
+ with:
11
+ fetch-depth: 0
12
+ - name: Mirror + trigger CI
13
+ uses: SvanBoxel/gitlab-mirror-and-ci-action@master
14
+ with:
15
+ args: "https://${{ secrets.GITLAB_HOSTNAME }}/sertit/libraries/sertit-utils"
16
+ env:
17
+ GITLAB_HOSTNAME: ${{ secrets.GITLAB_HOSTNAME }}
18
+ GITLAB_USERNAME: ${{ secrets.GITLAB_USERNAME }}
19
+ GITLAB_PASSWORD: ${{ secrets.GITLAB_PASSWORD }}
20
+ GITLAB_PROJECT_ID: ${{ secrets.GITLAB_PROJECT_ID }}
21
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,35 @@
1
+ # Generic extension to ignore
2
+ *.py[cod]
3
+ .idea
4
+ *.txt
5
+ !test.txt
6
+ !*requirements.txt
7
+ !*requirements-doc.txt
8
+ *.aux.xml
9
+ __pycache__/
10
+ .tox
11
+ .coverage
12
+ cov.xml
13
+ *.lock
14
+
15
+ # Build options
16
+ build/
17
+ *.egg-info/
18
+ dist
19
+
20
+ # Vectors
21
+ *.gfs
22
+
23
+ # dask
24
+ dask-worker-space/*
25
+
26
+ # Data in CI
27
+ ci/*.tif
28
+ ci/*.zip
29
+ ci/*.vrt
30
+
31
+ # Docs & Notebooks
32
+ docs/_build/*
33
+ !docs/_build/.jupyter_cache
34
+ docs/api
35
+ .ipynb_checkpoints
@@ -0,0 +1,66 @@
1
+ stages:
2
+ - lint
3
+ - test
4
+ - weekly_tests
5
+
6
+ variables:
7
+ EO_CONTAINERS: $REGISTRY_GITLAB/eo-containers
8
+ SU_CHANGES: sertit/[^_]*.{py,xml}
9
+
10
+ lint:
11
+ image: python:3.9-buster
12
+ stage: lint
13
+ script:
14
+ - python -m pip install --upgrade pip
15
+ - pip install ruff
16
+ - ruff format && ruff check
17
+ except:
18
+ - tags
19
+
20
+ pytest:
21
+ image: $EO_CONTAINERS:geo_latest
22
+ stage: test
23
+ variables:
24
+ CI_SERTIT_USE_S3: "0"
25
+ before_script:
26
+ - python -m pip install --upgrade pip
27
+ - pip install --ignore-installed PyYAML
28
+ - pip install -e .[full]
29
+ script:
30
+ - python -m pytest -v --durations=0 --cov-report term --cov-report xml:cov.xml --cov=sertit ci --cov-config=.coveragerc --log-cli-level DEBUG --capture=sys
31
+ coverage: '/TOTAL\s+\d+\s+\d+\s+(\d+%)/'
32
+ tags:
33
+ - sertit
34
+ - linux
35
+ rules:
36
+ - if: $CI_COMMIT_TAG
37
+ when: never
38
+ - changes:
39
+ - $SU_CHANGES
40
+ - ci/**/*.{py,xml}
41
+ - .gitlab-ci.yml
42
+ - pytest.ini
43
+ needs: [ "lint" ]
44
+
45
+ pytest_s3:
46
+ image: $EO_CONTAINERS:geo_latest
47
+ stage: test
48
+ before_script:
49
+ - python -m pip install --upgrade pip
50
+ - pip install --ignore-installed PyYAML
51
+ - pip install -e .[full]
52
+ script:
53
+ - python -m pytest -v --durations=0 --cov-report term --cov-report xml:cov.xml --cov=sertit ci --cov-config=.coveragerc --log-cli-level DEBUG --capture=sys
54
+ coverage: '/TOTAL\s+\d+\s+\d+\s+(\d+%)/'
55
+ tags:
56
+ - sertit
57
+ - linux
58
+ rules:
59
+ - if: $CI_COMMIT_TAG
60
+ when: never
61
+ - changes:
62
+ - $SU_CHANGES
63
+ - ci/**/*.{py,xml}
64
+ - .gitlab-ci.yml
65
+ - pytest.ini
66
+ needs: [ "lint" ]
@@ -0,0 +1,28 @@
1
+ exclude: |
2
+ (?x)^(
3
+ docs/.*
4
+ )$
5
+ fail_fast: false
6
+ ci:
7
+ autoupdate_schedule: monthly
8
+ repos:
9
+
10
+ - repo: https://github.com/pre-commit/pre-commit-hooks.git
11
+ rev: v5.0.0
12
+ hooks:
13
+ - id: check-json
14
+ - id: check-yaml
15
+ args: [ --allow-multiple-documents, --unsafe ]
16
+ - id: check-xml
17
+ - id: check-added-large-files
18
+ args: [ '--maxkb=1600' ]
19
+
20
+ - repo: https://github.com/astral-sh/ruff-pre-commit
21
+ # Ruff version.
22
+ rev: v0.8.3
23
+ hooks:
24
+ # Run the linter.
25
+ - id: ruff
26
+ args: [ --fix ]
27
+ # Run the formatter.
28
+ - id: ruff-format