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: CONTRIBUTION.md
+14-14
Original file line number
Diff line number
Diff line change
@@ -67,47 +67,47 @@ Contributions that align with the items detailed in our roadmap, found in the ma
67
67
68
68
## Development Environment
69
69
70
-
Adala uses [PDM](https://pdm.fming.dev/latest) to manage dependencies (both application and development) and packaging. To create an development environment, [install PDM](https://pdm.fming.dev/latest/#recommended-installation-method), navigate to the repository root and run:
70
+
Adala uses [Poetry]((https://python-poetry.org/) to manage dependencies (both application and development) and packaging. To create an development environment, [install Poetry](https://python-poetry.org/docs/#installation), navigate to the repository root and run:
71
71
72
72
```bash
73
-
pdm install --dev
73
+
poetry install --with dev
74
74
```
75
75
76
-
to specifically install Adala development only dependencies (using `pdm`'s [direct support for such](https://pdm.fming.dev/latest/usage/dependency/#add-development-only-dependencies)).
76
+
to specifically install Adala development only dependencies.
77
77
78
78
After this, activate the environment by running
79
79
80
80
```bash
81
-
eval$(pdm venv activate)
81
+
poetry shell
82
82
```
83
83
84
84
And run the test suite with
85
85
86
86
```bash
87
-
pytest --cov
87
+
pytest
88
88
```
89
89
90
-
You can expand with additional test dependencies using `pdm` with
91
-
90
+
Adala uses [pytest-recording](https://pypi.org/project/pytest-recording/) to cache network calls in [VCR cassette files](https://vcrpy.readthedocs.io/en/latest/), so that the test suite can be run in CI and without network access. When adding tests that make network calls, such as to OpenAI, run the test suite with
92
91
```bash
93
-
pdm add -dG test<package-name>
92
+
pytest --record_mode=once --block-network
94
93
```
94
+
and commit the resulting cassette `.yml` files that are generated. `--block-network` ensures that new tests do not make network calls without being marked `@pytest.mark.vcr`. To modify existing tests that make network calls, delete their cassette files before running pytest, or run only those tests with `--record_mode=rewrite`.
95
+
96
+
## Server
97
+
98
+
See the [server README](https://github.com/HumanSignal/Adala/tree/master/server) for instructions on running, developing, and testing Adala as a server rather than as a Python library. The server pytests are not run by default.
95
99
96
100
Happy developing, we're excited to review your contributions!
97
101
98
102
### Documentation
99
103
100
-
Interested in contributing to our docs? Wonderful! Docs are located in `./docs`. After installing dev dependecies (including `docs` group), you can build and serve docs dynamically with
104
+
Interested in contributing to our docs? Wonderful! Docs are located in `./docs`. After installing dev dependecies, you can build and serve docs dynamically with
101
105
102
106
```bash
103
107
mkdocs serve -f ./docs/mkdocs.yml
104
108
```
105
109
106
-
All doc dependencies are managed by `pdm`, and similar to test development dependenices, can be expanded upon with
107
-
108
-
```bash
109
-
pdm add -dG doc <package-name>
110
-
```
110
+
All doc dependencies are managed by `poetry` as part of development dependencies.
0 commit comments