You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+28-4Lines changed: 28 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,13 +14,29 @@ We encourage pull requests and other contributions from the community. Before su
14
14
15
15
### Setup
16
16
17
-
This project is built using [poetry](https://python-poetry.org/). To learn more about the basics of working with this tool, read [Poetry's basic usage guide](https://python-poetry.org/docs/basic-usage/).
17
+
This project is built using [uv](https://docs.astral.sh/uv/). The repo is structured as a uv workspace — a single shared virtual environment at the repo root contains all packages and their dependencies, and cross-package dependencies (e.g. the provider packages depending on `launchdarkly-server-sdk-ai`) are automatically resolved from the local workspace members.
18
18
19
-
To begin development, ensure your dependencies are installed and (optionally) activate the virtualenv.
19
+
To install uv, see the [uv installation guide](https://docs.astral.sh/uv/getting-started/installation/).
20
20
21
+
To install all packages and dev dependencies into the shared workspace environment:
22
+
23
+
```shell
24
+
make install
25
+
# or directly:
26
+
uv sync --all-groups
21
27
```
22
-
poetry install
23
-
eval $(poetry env activate)
28
+
29
+
To activate the shared virtual environment:
30
+
31
+
```shell
32
+
source .venv/bin/activate
33
+
```
34
+
35
+
Alternatively, prefix any command with `uv run` to use the workspace environment without activating it:
36
+
37
+
```shell
38
+
uv run pytest
39
+
uv run mypy src/ldai
24
40
```
25
41
26
42
### Testing
@@ -31,6 +47,14 @@ To run all unit tests:
31
47
make test
32
48
```
33
49
50
+
To run tests for a specific package:
51
+
52
+
```shell
53
+
make test-server-ai
54
+
make test-openai
55
+
make test-langchain
56
+
```
57
+
34
58
It is preferable to run tests against all supported minor versions of Python (as described in `README.md` under Requirements), or at least the lowest and highest versions, prior to submitting a pull request. However, LaunchDarkly's CI tests will run automatically against all supported versions.
0 commit comments