Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/arch/05-runconfig-and-permissions.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ The complete `RunConfig` struct is defined in `pkg/runner/config.go`.
- `builder_image`: Override the default base image for the builder stage
- Go: Default `golang:1.26-alpine`
- Node: Default `node:22-alpine`
- Python: Default `python:3.13-slim`
- Python: Default `python:3.14-slim`
- `additional_packages`: Extra packages to install during the build and runtime stages (e.g., build tools, libraries)

**CLI usage:**
Expand Down
2 changes: 1 addition & 1 deletion docs/runtime-version-customization.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ When you use protocol schemes like `thv run go://github.com/example/server`, Too

- **Go**: `golang:1.26-alpine` (builder), `alpine:3.23` (runtime)
- **Node**: `node:22-alpine` (builder and runtime)
- **Python**: `python:3.13-slim` (builder and runtime)
- **Python**: `python:3.14-slim` (builder and runtime)

You can customize these base images to use different versions or add additional build and runtime packages.

Expand Down
2 changes: 1 addition & 1 deletion docs/server/docs.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion docs/server/swagger.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion docs/server/swagger.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions pkg/container/templates/runtime_config.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ var packageNamePattern = regexp.MustCompile(`^[a-zA-Z0-9][a-zA-Z0-9._+\-]*$`)
type RuntimeConfig struct {
// BuilderImage is the full image reference for the builder stage.
// An empty string signals "use the default for this transport type" during config merging.
// Examples: "golang:1.26-alpine", "node:22-alpine", "python:3.13-slim"
// Examples: "golang:1.26-alpine", "node:22-alpine", "python:3.14-slim"
BuilderImage string `json:"builder_image" yaml:"builder_image"`

// AdditionalPackages lists extra packages to install in the builder and
Expand Down Expand Up @@ -83,7 +83,7 @@ var RuntimeDefaults = map[TransportType]RuntimeConfig{
AdditionalPackages: []string{"git", "ca-certificates"},
},
TransportTypeUVX: {
BuilderImage: "python:3.13-slim",
BuilderImage: "python:3.14-slim",
AdditionalPackages: []string{"ca-certificates", "git"},
},
}
Expand Down
4 changes: 2 additions & 2 deletions pkg/container/templates/runtime_config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ func TestGetDefaultRuntimeConfig(t *testing.T) {
{
name: "UVX default config",
transportType: TransportTypeUVX,
wantImage: "python:3.13-slim",
wantImage: "python:3.14-slim",
wantPackages: []string{"ca-certificates", "git"},
},
}
Expand Down Expand Up @@ -215,7 +215,7 @@ func TestRuntimeConfigValidate_ValidBuilderImages(t *testing.T) {
"golang:1.24-alpine",
"docker.io/library/node:20-alpine",
"ghcr.io/stacklok/builder:latest",
"python:3.13-slim",
"python:3.14-slim",
"node:22-alpine",
"mcr.microsoft.com/dotnet/sdk:8.0",
"registry.example.com/myimage:v1.2.3",
Expand Down
6 changes: 3 additions & 3 deletions pkg/container/templates/templates_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -414,7 +414,7 @@ func TestRuntimeStageInstallsAdditionalPackages(t *testing.T) {
name: "UVX runtime stage installs extra packages",
transportType: TransportTypeUVX,
runtimeConfig: &RuntimeConfig{
BuilderImage: "python:3.13-slim",
BuilderImage: "python:3.14-slim",
AdditionalPackages: []string{"ca-certificates", "git", "curl"},
},
wantInRuntime: "curl",
Expand Down Expand Up @@ -487,7 +487,7 @@ func TestEmptyAdditionalPackagesDoesNotBreakBuild(t *testing.T) {
name: "UVX with empty packages",
transportType: TransportTypeUVX,
runtimeConfig: &RuntimeConfig{
BuilderImage: "python:3.13-slim",
BuilderImage: "python:3.14-slim",
AdditionalPackages: []string{},
},
},
Expand All @@ -511,7 +511,7 @@ func TestEmptyAdditionalPackagesDoesNotBreakBuild(t *testing.T) {
name: "UVX with nil packages",
transportType: TransportTypeUVX,
runtimeConfig: &RuntimeConfig{
BuilderImage: "python:3.13-slim",
BuilderImage: "python:3.14-slim",
AdditionalPackages: nil,
},
},
Expand Down
4 changes: 2 additions & 2 deletions pkg/runner/protocol_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -270,7 +270,7 @@ func TestBuildFromProtocolSchemeWithNameDryRun(t *testing.T) {
"example-package",
"--transport",
"stdio",
"FROM python:3.13-slim",
"FROM python:3.14-slim",
},
wantErr: false,
},
Expand Down Expand Up @@ -383,7 +383,7 @@ func TestMergeRuntimeConfig(t *testing.T) {
BuilderImage: "",
AdditionalPackages: []string{"curl"},
},
wantImage: "python:3.13-slim",
wantImage: "python:3.14-slim",
wantPackages: []string{"ca-certificates", "git", "curl"},
},
}
Expand Down
Loading