Pin libsqlite=3.50.4 to workaround undefined symbol: sqlite3_total_changes64 error#63
Pin libsqlite=3.50.4 to workaround undefined symbol: sqlite3_total_changes64 error#63
Conversation
|
Noticing this warning at the linking step (https://github.com/GenericMappingTools/try-gmt/actions/runs/20699859136/job/59420488037?pr=63#step:6:2195): Not sure why sqlite 3.32.3 is being pulled in, but thinking that this might be the problem, as it might be conflicting with libsqlite 3.51.1? |
No need to install from environment.yml twice, since repo2docker does a separate clean install.
|
so probably need to investigate https://github.com/conda-forge/gdal-feedstock Edit: did a clean conda environment install with GDAL 3.12.1 included and the error goes away 😅 But still, should look into what's going on with GDAL and sqlite perhaps. |
instead of conda/mamba. Should pull in jupyter-repo2docker 2025.12.0 instead of 2025.8.0
7053634 to
4153739
Compare
Match https://github.com/jupyterhub/repo2docker/blob/2025.12.0/repo2docker/buildpacks/conda/environment.py-3.10-linux-64.lock#L31, try to prevent other versions of sqlite/libsqlite from being pulled in.
| uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0 | ||
| with: | ||
| python-version: "3.13" | ||
| pip-install: jupyter-repo2docker |
There was a problem hiding this comment.
Switched from conda install jupyter-repo2docker to pip install jupyter-repo2docker to pull in newer https://pypi.org/project/jupyter-repo2docker/2025.12.0 version since conda-forge is a little behind (xref conda-forge/jupyter-repo2docker-feedstock#16).
Pinning to
libsqlite==3.50.4to match repo2docker exactly. Repo2docker first installs some packages (includinglibsqlite) into the 'notebook' environment, and then upgrades packages based on what's in the environment.yml file. Theundefined symbol: sqlite3_total_changes64error occurs because of some mismatch in sqlite versions it seems.Test at
This is a hacky fix to the error encountered at #62 (comment). Proper fix might be to rely on upstream changes (in repo2docker?, gdal?, or somewhere else).