feat!: apps SDK, decorator-native GPU compute with live dev sessions and a new rp CLI#534
feat!: apps SDK, decorator-native GPU compute with live dev sessions and a new rp CLI#534KAJdev wants to merge 92 commits into
Conversation
…d datacenter selection
|
Capy auto-review is paused for this organization because the usage-cycle auto-review limit has been reached. Increase the limit or turn it off in billing settings to resume automatic reviews. |
# Conflicts: # requirements.txt
There was a problem hiding this comment.
CodeQL found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.
|
Promptless prepared a documentation update related to this change. Triggered by runpod-python PR #534 This PR introduces the apps SDK (successor to |
|
@capy-ai review |
| # BaseException on purpose: user module top-level code can raise | ||
| # SystemExit/KeyboardInterrupt; those must surface as discovery | ||
| # errors on the caller thread, not kill this worker thread | ||
| except BaseException as exc: # noqa: BLE001 - reported to caller |
| run_entrypoint(fn) | ||
| # BaseException on purpose: SystemExit/KeyboardInterrupt from | ||
| # the entrypoint must reach the loop, not die on this thread | ||
| except BaseException as exc: # noqa: BLE001 - marshalled to the loop |
| torch.cuda.synchronize() | ||
| start = time.time() | ||
| for _ in range(10): | ||
| a @ b |
| loop.call_soon_threadsafe(_finish, None) | ||
|
|
||
| threading.Thread(target=_runner, daemon=True).start() | ||
| await done |
| rp dev tests/e2e/examples/01_hello_world.py --once | ||
| """ | ||
|
|
||
| import runpod |
|
|
||
| import asyncio | ||
|
|
||
| import runpod |
| rp dev tests/e2e/examples/03_gpu.py --once | ||
| """ | ||
|
|
||
| import runpod |
| rp dev tests/e2e/examples/04_dependencies.py --once | ||
| """ | ||
|
|
||
| import runpod |
| rp dev tests/e2e/examples/05_api_service.py --once | ||
| """ | ||
|
|
||
| import runpod |
| rp dev tests/e2e/examples/06_tasks.py --once | ||
| """ | ||
|
|
||
| import runpod |
This is the successor to
runpod-flash, folded into the corerunpodpackage. I know this is absolutely massive but its a port of all existing flash features plus whole new App, Model, and Secret classes, @app.task decorator for running ephemeral pods, new runtimes, and shims for injecting into custom images. (with 90% test coverage!)Completes CON-652
For existing Flash users
flashApps,flashEnvironments,flashBuilds). Deployed Flash apps keep running, and this client can see and manage them (rp app list,rp undeploy).@remote(...)shapes become@app.queue,@app.api, and@app.task, with full config paritypip install runpod,rp deploy. A migration guide should land in docs alongside the release.Secret()andModel()classes, + custom image supportRelease checklist
runpod.runtimes(e2e12_custom_imagecurrently pins the branch tarball viaRUNPOD_PACKAGE_SPEC)runpod-flashrunpod config,exec, andprojectCLI commands removed;rp loginandrp initreplace themrp updateagainst the published version, drop the tarball note from the e2e READMEBreaking changes
config,exec, andprojectcommand groups removed;ssh list-keysandadd-keyrenamed tossh listandaddrunpod.serverless,Endpoint, and ctl commands are unchanged.