myria3d icon indicating copy to clipboard operation
myria3d copied to clipboard

Laspy missing from environment.yml ?

Open esgn opened this issue 2 months ago • 0 comments

Steps to reproduce :

  1. Build docker image from source (docker build . -t myria3d)
  2. Run an inference job using the created docker image. The following stack trace shows up and the inference fails. Looks like ign-pdal-tools does not install laspy directly.
Traceback (most recent call last):
  File "/app/run.py", line 125, in <module>
    launch_predict()
  File "/opt/conda/envs/myria3d/lib/python3.9/site-packages/hydra/main.py", line 48, in decorated_main
    _run_hydra(
  File "/opt/conda/envs/myria3d/lib/python3.9/site-packages/hydra/_internal/utils.py", line 377, in _run_hydra
    run_and_report(
  File "/opt/conda/envs/myria3d/lib/python3.9/site-packages/hydra/_internal/utils.py", line 214, in run_and_report
    raise ex
  File "/opt/conda/envs/myria3d/lib/python3.9/site-packages/hydra/_internal/utils.py", line 211, in run_and_report
    return func()
  File "/opt/conda/envs/myria3d/lib/python3.9/site-packages/hydra/_internal/utils.py", line 378, in <lambda>
    lambda: hydra.run(
  File "/opt/conda/envs/myria3d/lib/python3.9/site-packages/hydra/_internal/hydra.py", line 111, in run
    _ = ret.return_value
  File "/opt/conda/envs/myria3d/lib/python3.9/site-packages/hydra/core/utils.py", line 233, in return_value
    raise self._return_value
  File "/opt/conda/envs/myria3d/lib/python3.9/site-packages/hydra/core/utils.py", line 160, in run_job
    ret.return_value = task_function(task_cfg)
  File "/app/run.py", line 65, in launch_predict
    from myria3d.predict import predict
  File "/app/myria3d/predict.py", line 14, in <module>
    from myria3d.models.interpolation import Interpolator  # noqa
  File "/app/myria3d/models/interpolation.py", line 11, in <module>
    from pdaltools import las_info
  File "/opt/conda/envs/myria3d/lib/python3.9/site-packages/pdaltools/las_info.py", line 7, in <module>
    import laspy
ModuleNotFoundError: No module named 'laspy'

Temporary solution

If I manually add laspy in the pip section of the environment.yml file and rebuild the docker image, then the inference is working fine.

- pip:
  - hydra-core==1.1.*
  - hydra-colorlog==1.1.*
  # --------- Documentation --------- #
  - myst_parser==0.17.*
  - sphinxnotes-mock==1.0.0b0 # still a beta
  - sphinx_paramlinks==0.5.*
  - ign-pdal-tools>=1.5.2
  - laspy

I probably should use laspy[lazrs] after having a look at ign-pdal-tools sources.

esgn avatar Oct 21 '25 07:10 esgn