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: .github/workflows/python-publish.yml
+15-3Lines changed: 15 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,12 @@
1
-
# This workflow will upload a Python Package using Twine when a release is created
1
+
# This workflow will upload Python Packages using Twine when a release is created
2
2
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python#publishing-to-package-registries
3
3
4
4
# This workflow uses actions that are not certified by GitHub.
5
5
# They are provided by a third-party and are governed by
6
6
# separate terms of service, privacy policy, and support
Copy file name to clipboardExpand all lines: DEVELOPMENT.md
+35Lines changed: 35 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -157,10 +157,22 @@ make run-ci # Run full CI pipeline
157
157
158
158
### Working with Specific Projects
159
159
160
+
Each project directory (`ragas/` and `experimental/`) now has its own standalone Makefile with core development commands. You can work directly within each project directory using these local Makefiles.
161
+
160
162
#### Ragas Core Development
161
163
```bash
162
164
# Navigate to the ragas directory for project-specific work
163
165
cd ragas
166
+
167
+
# Use the local Makefile for development
168
+
make help# See available commands
169
+
make format # Format ragas code only
170
+
make type# Type check ragas code only
171
+
make test# Run ragas tests only
172
+
make check # Quick format + type check
173
+
make run-ci # Run full ragas CI pipeline
174
+
175
+
# Or use direct commands for specific tasks
164
176
uv run pytest tests/unit # Run specific tests
165
177
uv run pyright src # Type check specific code
166
178
```
@@ -169,9 +181,28 @@ uv run pyright src # Type check specific code
169
181
```bash
170
182
# Navigate to experimental directory
171
183
cd experimental
184
+
185
+
# Use the local Makefile for development
186
+
make help# See available commands
187
+
make format # Format experimental code only
188
+
make type# Type check experimental code only
189
+
make test# Run experimental tests only
190
+
make check # Quick format + type check
191
+
make run-ci # Run full experimental CI pipeline
192
+
193
+
# Or use direct commands
172
194
uv run pytest # Run experimental tests
173
195
```
174
196
197
+
#### Monorepo-Wide Development
198
+
```bash
199
+
# From the root directory, commands operate on both projects
200
+
make format # Format code in both ragas/ and experimental/
201
+
make type# Type check both projects
202
+
make test# Run all tests in both projects
203
+
make run-ci # Run full CI for both projects
204
+
```
205
+
175
206
## Testing Strategy
176
207
177
208
### Test Types
@@ -344,6 +375,10 @@ ls -la # Check current directory structure
344
375
make format # After making changes
345
376
make test# Verify functionality
346
377
378
+
# For project-specific work
379
+
cd ragas && make help# See ragas-specific commands
380
+
cd experimental && make help# See experimental-specific commands
381
+
347
382
# For investigation
348
383
uv run pytest --collect-only # See available tests
349
384
uv run ruff check --no-fix # Check issues without fixing
.PHONY: help install setup format type check clean test test-e2e benchmarks benchmarks-docker run-ci run-ci-fast run-ci-format-check run-ci-type run-ci-tests build-docs serve-docs process-experimental-notebooks
33
29
format: ## Format and lint all code in the monorepo
34
30
@echo "Formatting and linting all code..."
35
-
@echo "(black) Formatting ragas..."
36
-
$(Q)uv run black --config ragas/pyproject.toml $(RAGAS_PATHS)
37
-
@echo "(black) Formatting stubs..."
38
-
$(Q)find ragas/src -name "*.pyi"! -name "*_pb2*" -exec uv run black --pyi --config ragas/pyproject.toml {} \;
39
-
@echo "(ruff) Auto-fixing ragas (includes import sorting and unused imports)..."
40
-
$(Q)uv run ruff check $(RAGAS_PATHS) --fix-only
41
-
@echo "(ruff) Final linting check for ragas..."
42
-
$(Q)uv run ruff check $(RAGAS_PATHS)
43
-
@echo "(black) Formatting experimental..."
44
-
$(Q)cd experimental && uv run black ragas_experimental
45
-
@echo "(ruff) Auto-fixing experimental (includes import sorting and unused imports)..."
46
-
$(Q)cd experimental && uv run ruff check ragas_experimental --fix-only
47
-
@echo "(ruff) Final linting check for experimental..."
48
-
$(Q)cd experimental && uv run ruff check ragas_experimental
0 commit comments