@@ -44,19 +44,27 @@ pip install 'duckdb[all]'
4444
4545## Development
4646
47- ### Building wheels and sdists
47+ ### Cloning
4848
49- To build a wheel and sdist for your system and the default Python version :
50- ``` bash
51- uv build
52- ````
49+ When you clone the repo or your fork, make sure you initialize the duckdb submodule :
50+ ``` shell
51+ git clone --recurse-submodules < repo >
52+ ```
5353
54- To build a wheel for a different Python version:
55- ` ` ` bash
56- # E.g. for Python 3.9
57- uv build -p 3.9
54+ ... or, if you already have the repo locally:
55+ ``` shell
56+ git clone < your-repo>
57+ cd < your-repo>
58+ git submodule update --init --recursive
59+ ```
60+
61+ If you'll be switching between branches that are have the submodule set to different refs, then make your life
62+ easier and add the git hooks in the .githooks directory to your local config:
63+ ``` shell
64+ git config --local core.hooksPath .githooks/
5865```
5966
67+
6068### Editable installs (general)
6169
6270 It's good to be aware of the following when creating an editable install:
@@ -72,7 +80,7 @@ uv build -p 3.9
7280# install all dev dependencies without building the project (needed once)
7381uv sync -p 3.9 --no-install-project
7482# build and install without build isolation
75- uv sync --no-build-isolation
83+ uv sync --no-build-isolation
7684```
7785
7886### Editable installs (IDEs)
@@ -82,6 +90,28 @@ uv sync --no-build-isolation
8290 compilation and editable rebuilds. This will skip scikit-build-core's build backend and all of uv's dependency
8391 management, so for "real" builds you better revert to the CLI. However, this should work fine for coding and debugging.
8492
93+
94+ ### Cleaning
95+
96+ ``` shell
97+ uv cache clean
98+ rm -rf build .venv uv.lock
99+ ```
100+
101+
102+ ### Building wheels and sdists
103+
104+ To build a wheel and sdist for your system and the default Python version:
105+ ``` bash
106+ uv build
107+ ````
108+
109+ To build a wheel for a different Python version:
110+ ` ` ` bash
111+ # E.g. for Python 3.9
112+ uv build -p 3.9
113+ ` ` `
114+
85115# ## Running tests
86116
87117 Run all pytests:
0 commit comments