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
Add oak_scan crate with initial library scanning (#1243)
Branched from #1226
Progress towards #1212
Introduces `oak_scan` with a library scanner. The LSP layer calls (in
the next PR) the scanner on startup with `.libPaths()`. Each libpath is
set as a library root in `oak_db`.
`oak_scan` is the only writer of Salsa inputs in `oak_db`, and is in
charge of maintaining invariants, such as making sure backpointers are
up-to-date.
Library roots are static for now. Watching them for changes (package
removed or installed) would require our own filesystem watcher. Since we
don't need one for the workspace (we'll use LSP file events), the
machinery would be a bit too heavy for what we would gain for it at this
stage. For now the LSP can be restarted to register changes to libpaths.
Copy file name to clipboardExpand all lines: AGENTS.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -67,6 +67,10 @@ just test <test_name>
67
67
just test -p ark
68
68
```
69
69
70
+
### Placing Integration Tests
71
+
72
+
Put integration tests under `crates/<crate>/tests/integration/`, with a `main.rs` that declares each test file as a module (`mod library;`). Don't add loose `*.rs` files directly under `tests/`. Each top-level file there compiles as its own test binary, so consolidating them into one `integration` binary keeps build and link times down and saves on disk space.
0 commit comments