Commit 9635389
authored
SAS compute tools (#14)
* Correct typo
* Add basic compute server related tools
* Add comments to Compute Server related tools
* Use return_items
* feat!: reusable compute sessions, reset tool, and compute discovery tools
Add Tier 6 compute tools (list_compute_contexts, list_compute_libraries,
list_compute_tables, list_compute_columns) and a reset_compute_session
tool. Compute sessions are now pooled per authenticated user and compute
context so repeat calls skip the slow session spin-up; cached sessions
are validated before reuse, transparently recreated if Viya reaps them,
and deleted on server shutdown via a FastMCP lifespan.
BREAKING CHANGE: execute_sas_code now runs in a reusable session, so SAS
state (WORK tables, macro variables, assigned librefs) persists across
successive calls instead of being discarded per call. Use
reset_compute_session to start from a clean session.
Also harden get_context_id/create_session with raise_for_status, encode
the context-name query parameter, add unit and live integration coverage
for the new tools (including an end-to-end reuse/reset/recreate test),
update the README and CHANGELOG, and bump the version to 1.2.0.
Assisted by Claude Code.
---------
Signed-off-by: sbxxab <xavier.bizoux@sas.com>
Signed-off-by: David Weik <david.weik@sas.com>1 parent 512531b commit 9635389
18 files changed
Lines changed: 1836 additions & 384 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
3 | 21 | | |
4 | 22 | | |
5 | 23 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
135 | 135 | | |
136 | 136 | | |
137 | 137 | | |
138 | | - | |
| 138 | + | |
139 | 139 | | |
140 | 140 | | |
141 | 141 | | |
| |||
173 | 173 | | |
174 | 174 | | |
175 | 175 | | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
176 | 183 | | |
177 | 184 | | |
178 | 185 | | |
| |||
293 | 300 | | |
294 | 301 | | |
295 | 302 | | |
296 | | - | |
| 303 | + | |
297 | 304 | | |
298 | 305 | | |
299 | 306 | | |
| |||
326 | 333 | | |
327 | 334 | | |
328 | 335 | | |
329 | | - | |
| 336 | + | |
330 | 337 | | |
331 | 338 | | |
332 | 339 | | |
| |||
0 commit comments