Commit 25d8a01
authored
(feat): add python object-oriented sdk (#667)
* Increase pytest workers from 2 to 10
* Reduce pytest workers from 10 to 5
* initial llm work
* added await_suspended methods to base api
* added await_completed methods to base api
* unit and smoke tests for base api changes
* added snapshot_disk methods to devbox classes
* big refactor (moved client classes to _sync.py and _async.py, and moved shared methods/types to _helpers.py)
* linting, formattting, and type checking changes
* lint fixes
* circular import fixes
* circular import fixes (async)
* lint fix
* unit tests
* unit test refactoring
* async client accepts new blueprint create_and_await_build_complete parameters
* added file system mounts to devbox creation parameters and cleaned up default parameters (matches base api)
* fixed snapshot list, cleaned up getattr
* abandon trying to support other upload file types for devbox file uploads (sticks to base api FileType)
* smoke tests
* fixed tests to expect updated parameter/member names
* lint fixes
* docs + examples
* add missing mount parameters
* lint fixes
* unpack TypedDict params directly instead of explicitly declaring them
* corrected examples
* cleaned up underscore prefixes: renamed sync and async modules, and added protocol interface for devbox cmd/file/net
* update docs to correct await async devboxes and not use async callbacks (not supported)
* added module-level docstrings
* formatting changes
* fixed unit test imports
* fixed expected status for snapshot delete smoketests
* Add coverage files to .gitignore and remove .coverage from tracking
* increased timeout for snapshot tests
* clean up default value for max_retries
* remove examples (for now). will upload verified examples later
* python sdk manual types (and small fixes/cleanups)
* fixed execution result stdout/stderr
* unit tests
* end to end tests
* uv.lock version update
* add maintainence comments for manually edited types files
* paginated stdout/stderr in ExecutionResult (#670)
* added pagination logic to stdout/stderr
* unit test adjustments
* added smoke tests and todos for fixing and testing output line counting logic
* increased smoke test timeouts
* scoped docstrings for public modules, classes and methods
* formatting fixes
* rename ExecutionResult .raw to .result
* declare terminal states for devboxes.await_suspended
* visual separation of sync vs async devbox protocols, examples for async execution interface
* update maintenance instructions for DevboxCreateParams
* change manager class suffixes from Client to Ops
* remove unnecessary tests from blueprint and snapshot smoke tests
* lint fixes
* increase timeout for async sdk client smoke tests
* updated sdk readme1 parent b7d7d1e commit 25d8a01
72 files changed
Lines changed: 14610 additions & 23 deletions
File tree
- .github/workflows
- src/runloop_api_client
- resources/devboxes
- sdk
- types
- tests
- api_resources
- devboxes
- sdk
- async_devbox
- devbox
- smoketests
- sdk
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
51 | | - | |
| 51 | + | |
52 | 52 | | |
53 | | - | |
| 53 | + | |
54 | 54 | | |
55 | 55 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
17 | | - | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
0 commit comments