kylebarron commented on code in PR #994:
URL: https://github.com/apache/datafusion-python/pull/994#discussion_r1913832418


##########
.github/workflows/docs.yaml:
##########
@@ -60,11 +60,15 @@ jobs:
       - name: Install dependencies and build
         uses: astral-sh/setup-uv@v5
 
+      - name: Build repo
+        run: |
+          uv venv
+          uv sync --dev -v
+

Review Comment:
   Here is `uv sync` building the full rust library? That's something I've hit 
in the cases where the Python binding is at the top level (most of my projects 
have the rust crates at the top level and the python package in a separate 
directory).
   
   In this case, I took [this 
approach](https://github.com/kylebarron/geo-index/blob/9ca258bf397250c46b52e0abaef47e29a5c71913/python/DEVELOP.md#L4).
 I.e. I install all my dependencies but **not** the current project with `uv 
sync --no-install-package datafusion`. Then manually build the Rust core in dev 
mode with `uv run --no-project maturin develop`. The `--no-project` is required 
so that uv doesn't try to build the project before it gets to maturin.
   
   This is also a lot faster for tests and docs because you can ensure maturin 
builds in dev mode instead of release mode. (There's probably an env variable 
that would work too, that gets passed down via the PEP 517 compliant builder 
that uv sync would use)



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to