Skip to content

Conversation

krassowski
Copy link
Collaborator

@krassowski krassowski added the maintenance This PR performs maintenance for the repository label Sep 25, 2025
@agriyakhetarpal
Copy link
Member

Hmm, the reason this doesn't work is because geopandas is not in the lockfile: https://cdn.jsdelivr.net/pyodide/v0.28.2/full/pyodide-lock.json?from-lite-config=1

@agriyakhetarpal agriyakhetarpal dismissed their stale review September 25, 2025 11:18

As above – we'd need to either add geopandas to the lockfile (with a new lockfile URL, that is) or ship it with the kernel at build time

@krassowski
Copy link
Collaborator Author

@agriyakhetarpal
Copy link
Member

No, that wouldn't work. We'll either need to ship it here: https://jupyterlite.readthedocs.io/en/latest/howto/pyodide/wheels.html with the artifacts (which I don't recommend – it's a big binary we don't have a dedicated CDN to serve it).

It is not being built from its recipe right now because it depends on pyproj, which is currently disabled: https://github.com/pyodide/pyodide-recipes/blob/95e307bce9adc7d6e41afe7a8192c213a1d633e8/packages/pyproj/meta.yaml#L5. There is an in-progress PR to re-enable it: pyodide/pyodide-recipes#356

@agriyakhetarpal
Copy link
Member

agriyakhetarpal commented Sep 25, 2025

Or, we would need to use an older Pyodide kernel with Pyodide 0.27, as we have it there: https://cdn.jsdelivr.net/pyodide/v0.27.6/full/pyodide-lock.json?from-lite-config=1. That won't be easy, as the Pyodide kernel and the Pyodide version within it are coupled, and the former pins JupyterLite. Going to an older version of JupyterLite would be undesirable for us.

@krassowski
Copy link
Collaborator Author

Is there a reason newer pyodide versions dropped geopandas? Is there a way we could help upstream?

@agriyakhetarpal
Copy link
Member

Is there a reason newer pyodide versions dropped geopandas? Is there a way we could help upstream?

It was just because pyproj was failing to build, more details here: pyodide/pyodide-recipes#99

Yes, I think we can help upstream by fixing the pyproj build failure. I can then publish a new nightly release, which should give us a new lockfile URL that we can override for the Pyodide kernel in jupyter-lite.json.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maintenance This PR performs maintenance for the repository
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add a test to ensure that geopandas can be imported
2 participants