Skip to content
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,5 @@
*.h5 filter=lfs diff=lfs merge=lfs -text
*.ipynb filter=lfs diff=lfs merge=lfs -text
*.min.js filter=lfs diff=lfs merge=lfs -text
# SCM syntax highlighting & preventing 3-way merges
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# SCM syntax highlighting & preventing 3-way merges
# SCM syntax highlighting & preventing 3-way merges

pixi.lock merge=binary linguist-language=YAML linguist-generated=true
4 changes: 2 additions & 2 deletions .github/workflows/python_analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,14 @@ jobs:
name: Static analysis
uses: MiraGeoscience/CI-tools/.github/workflows/reusable-python-static_analysis.yml@main
with:
package-manager: 'poetry'
package-manager: 'pixi'
app-name: 'las_geoh5'
python-version: '3.10'
call-workflow-pytest:
name: Pytest
uses: MiraGeoscience/CI-tools/.github/workflows/reusable-python-pytest.yml@main
with:
package-manager: 'poetry'
package-manager: 'pixi'
python-versions: '["3.10", "3.11", "3.12"]'
os: '["ubuntu-latest", "windows-latest"]'
cache-number: 1
Expand Down
8 changes: 7 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -142,5 +142,11 @@ dmypy.json
# geoh5 locks
*.geoh5.lock

#version ignore
# auto-generated version file
las_geoh5/_version.py
# not using poetry to lock, but pixi
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# not using poetry to lock, but pixi
# not using poetry to lock, but pixi

poetry.lock

# pixi environments
.pixi/*
!.pixi/config.toml
1 change: 0 additions & 1 deletion .pre-commit-config.yaml
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

replace call to poetry for pylint by: pixi run --locked pylint

Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ repos:
rev: 2.1.3
hooks:
- id: poetry-check
args: [--lock, --no-plugins]
- repo: https://github.com/hadialqattan/pycln
rev: v2.5.0
hooks:
Expand Down
4,609 changes: 4,609 additions & 0 deletions pixi.lock

Large diffs are not rendered by default.

108 changes: 108 additions & 0 deletions pixi.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
[workspace]
requires-pixi = ">=0.54"
channels = ["https://repo.prefix.dev/conda-forge"]
platforms = ["win-64", "linux-64"]

[dependencies]
# dependencies resolved from conda
## direct dependencies:
#----------------------
lasio = "0.31.*"
numpy = "1.26.*"
tqdm = ">=4.66.1, 4.*"

## indirect dependencies from remaining pip packages:
#----------------------------------------------------
h5py = ">=3.2.1, 3.*"
pydantic = ">=2.5.2, 2.*"

[pypi-dependencies]
las-geoh5 = { path = ".", editable = true }

[environments]
#prod-py310 = {features = ["py310", "mirageo"], solve-group = "prod-py310"}
#prod-py311 = {features = ["py311", "mirageo"], solve-group = "prod-py311"}
#prod-py312 = {features = ["py312", "mirageo"], solve-group = "prod-py312"}
#test-prod-py310 = {features = ["py310", "mirageo", "test"], solve-group = "prod-py310"}
#test-prod-py311 = {features = ["py311", "mirageo", "test"], solve-group = "prod-py311"}
#test-prod-py312 = {features = ["py312", "mirageo", "test"], solve-group = "prod-py312"}

py310 = {features = ["py310", "mirageo-git", "test"], solve-group = "default"}
py311 = {features = ["py311", "mirageo-git", "test"]}
py312 = {features = ["py312", "mirageo-git", "test"]}

default = {features = ["py310", "mirageo-git", "test", "dev"], solve-group = "default"}
docs = {features = ["py310", "mirageo-git", "doc"], solve-group = "default"}
test-docs = {features = ["py310", "mirageo-git", "test", "doc"], solve-group = "default"}
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not needed here (that was for OMF): there is not test of the docs

Suggested change
test-docs = {features = ["py310", "mirageo-git", "test", "doc"], solve-group = "default"}


[feature.py310.dependencies]
python = "3.10.*"

[feature.py311.dependencies]
python = "3.11.*"

[feature.py312.dependencies]
python = "3.12.*"

#[feature.mirageo.dependencies]
#geoh5py = ">=0.12.0a1, 0.12.*"

[feature.mirageo-git.pypi-dependencies]
geoh5py = { git = "https://github.com/MiraGeoscience/geoh5py.git", rev = "develop" }

[feature.dev.dependencies]
Pygments = '*'
ipython = "*"

[feature.dev.tasks]
repl = "ipython"

[feature.test.dependencies]
packaging = "*"
pylint = "*"
pytest = "*"
pytest-cov = "*"
pyyaml = "*"
jinja2 = "*"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

jinja is not needed anymore

Suggested change
jinja2 = "*"


[feature.test.tasks]
test = "pytest tests --cov --cov-report=xml"
_pytest-docs = "pytest docs"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

issue: thre are not tests in docs

Suggested change
_pytest-docs = "pytest docs"


[feature.test.tasks.test-local]
args = [{ arg = "packages", default = "geoh5py" }]
depends-on = [
{task = "use-local-deps", args = [ "{{ packages }}" ]},
{task = "show-pip-source", args = [ "{{ packages }}" ]},
{task = "test"}
]

[feature.doc.dependencies]
sphinx = ">=5.3, 5.*"
sphinx-rtd-theme = "*"
sphinx-autodoc-typehints = "*"

[feature.doc.tasks]
build-docs = "sphinx-build -nW -b html docs docs/_build"
linkcheck-docs = "sphinx-build -nW -b linkcheck docs docs/_build"

[tasks.test-docs]
depends-on = [{task = "_pytest-docs", environment = "test-docs"}]

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

issue: irrevelant in this project

Suggested change
[tasks.test-docs]
depends-on = [{task = "_pytest-docs", environment = "test-docs"}]

[tasks.show-pip-source]
args = [{ arg = "packages", "default" = "geoh5py" }]
cmd = "uv pip show {{packages}}"

[tasks.use-local-deps]
args = [{ arg = "packages", default = "geoh5py" }]
cmd = """
uv pip install --no-deps --force-reinstall \
{% for package in packages | split %} -e ../{{ package | trim }}{% endfor %}
"""

[tasks.test-pyvers]
depends-on = [
{task = "test", environment = "py310"},
{task = "test", environment = "py311"},
{task = "test", environment = "py312"},
]
Loading
Loading