File tree Expand file tree Collapse file tree 3 files changed +52
-3
lines changed Expand file tree Collapse file tree 3 files changed +52
-3
lines changed Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ COPY --from=ghcr.io/astral-sh/uv:0.6.5 /uv /uvx /bin/
3
3
ARG USERNAME=vscode
4
4
5
5
RUN apt-get update && \
6
- apt-get install -y --no-install-recommends libgdal-dev && \
6
+ apt-get install -y --no-install-recommends libgdal-dev python3-dev && \
7
7
rm -rf /var/lib/apt/lists/*
8
8
9
9
RUN python3 -m pip install pipx --no-cache-dir
@@ -24,8 +24,7 @@ COPY . /app
24
24
RUN --mount=type=cache,target=/root/.cache/uv \
25
25
--mount=type=bind,source=uv.lock,target=uv.lock \
26
26
--mount=type=bind,source=pyproject.toml,target=pyproject.toml \
27
- uv venv && uv sync --group dev --group tests \
28
- --extra duckdb --extra clickhouse --extra examples --extra geospatial
27
+ uv venv && just sync duckdb
29
28
30
29
ENV VENV_DIR=.venv
31
30
RUN chown -R $USERNAME $VENV_DIR && chmod -R 755 $VENV_DIR
Original file line number Diff line number Diff line change @@ -246,6 +246,47 @@ for manager, params in managers.items():
246
246
* ` Rebuild Container` to copy files from the local Git repo and have the build
247
247
run ` uv sync` .
248
248
249
+ # # uv
250
+
251
+ ::: {.callout-warning}
252
+ # # `uv` will not handle installation of system dependencies
253
+
254
+ ` uv` will not install system dependencies needed for some packages such as ` psycopg2` and ` kerberos` .
255
+
256
+ For a better development experience see the ` conda/mamba` or ` nix` setup instructions.
257
+ :::
258
+
259
+ 1. [Install ` uv` ](https://docs.astral.sh/uv/getting-started/installation/)
260
+
261
+ 1. [Install ` gh` ](https://cli.github.com/manual/installation)
262
+
263
+ 1. Fork and clone the ibis repository:
264
+
265
+ ` ` ` sh
266
+ gh repo fork --clone --remote ibis-project/ibis
267
+ ` ` `
268
+
269
+ 1. Change directory into ` ibis` :
270
+
271
+ ` ` ` sh
272
+ cd ibis
273
+ ` ` `
274
+
275
+ 1. Install development dependencies
276
+
277
+ This will create a virtual environment at ` .venv` and install all dependencies inside.
278
+ It will also install Ibis in development mode as ` ibis-framework` .
279
+
280
+ ` ` ` sh
281
+ just sync
282
+ ` ` `
283
+
284
+ 1. Activate the virtual environment
285
+
286
+ ` ` ` sh
287
+ source .venv/bin/activate
288
+ ` ` `
289
+
249
290
# # pip
250
291
251
292
::: {.callout-warning}
Original file line number Diff line number Diff line change @@ -6,6 +6,15 @@ default:
6
6
clean :
7
7
git clean -fdx -e ' ci/ibis-testing-data'
8
8
9
+ # install dependencies for a given backend, or all dependencies if none is given
10
+ sync backend = " ":
11
+ #!/usr/bin/env bash
12
+ if [ ! " {{ backend }} " ]; then
13
+ uv sync --all-groups --all-extras
14
+ else
15
+ uv sync --group dev --group tests --extra {{ backend }} --extra examples --extra geospatial
16
+ fi
17
+
9
18
# lock dependencies without updating existing versions
10
19
lock :
11
20
#!/usr/bin/env bash
You can’t perform that action at this time.
0 commit comments