Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package hcloud-cli for openSUSE:Factory checked in at 2026-01-26 11:06:24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/hcloud-cli (Old) and /work/SRC/openSUSE:Factory/.hcloud-cli.new.1928 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hcloud-cli" Mon Jan 26 11:06:24 2026 rev:15 rq:1329118 version:1.61.0 Changes: -------- --- /work/SRC/openSUSE:Factory/hcloud-cli/hcloud-cli.changes 2026-01-17 14:57:12.385339872 +0100 +++ /work/SRC/openSUSE:Factory/.hcloud-cli.new.1928/hcloud-cli.changes 2026-01-26 11:06:27.360355243 +0100 @@ -1,0 +2,15 @@ +Mon Jan 26 06:22:27 UTC 2026 - Johannes Kastl <[email protected]> + +- Update to version 1.61.0: + * Storage Boxes support is now generally available + The experimental phase for Storage Boxes is over, and Storage + Boxes support is now generally available. + * Features + - Storage Box support no longer experimental (#1267) + - server: allow specifying user-data for rebuild (#1319) + * Dependencies + - deps: update module github.com/hetznercloud/hcloud-go/v2 to + v2.36.0 (#1320) + - deps: update dependency jdx/mise to v2026.1.6 (#1316) + +------------------------------------------------------------------- Old: ---- hcloud-cli-1.60.0.obscpio New: ---- hcloud-cli-1.61.0.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ hcloud-cli.spec ++++++ --- /var/tmp/diff_new_pack.twOLD1/_old 2026-01-26 11:06:28.448400737 +0100 +++ /var/tmp/diff_new_pack.twOLD1/_new 2026-01-26 11:06:28.452400904 +0100 @@ -19,7 +19,7 @@ %define executable_name hcloud Name: hcloud-cli -Version: 1.60.0 +Version: 1.61.0 Release: 0 Summary: A command-line interface for Hetzner Cloud License: MIT ++++++ _service ++++++ --- /var/tmp/diff_new_pack.twOLD1/_old 2026-01-26 11:06:28.484402242 +0100 +++ /var/tmp/diff_new_pack.twOLD1/_new 2026-01-26 11:06:28.488402409 +0100 @@ -3,7 +3,7 @@ <param name="url">https://github.com/hetznercloud/cli</param> <param name="scm">git</param> <param name="exclude">.git</param> - <param name="revision">v1.60.0</param> + <param name="revision">v1.61.0</param> <param name="versionformat">@PARENT_TAG@</param> <param name="versionrewrite-pattern">v(.*)</param> <param name="changesgenerate">enable</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.twOLD1/_old 2026-01-26 11:06:28.520403747 +0100 +++ /var/tmp/diff_new_pack.twOLD1/_new 2026-01-26 11:06:28.524403915 +0100 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/hetznercloud/cli</param> - <param name="changesrevision">b1697c7ebfc5cc33cafda3f462a03c36b718056c</param></service></servicedata> + <param name="changesrevision">398874d4c214639263781db3a22a4971e04c5e48</param></service></servicedata> (No newline at EOF) ++++++ hcloud-cli-1.60.0.obscpio -> hcloud-cli-1.61.0.obscpio ++++++ ++++ 2299 lines of diff (skipped) ++++++ hcloud-cli.obsinfo ++++++ --- /var/tmp/diff_new_pack.twOLD1/_old 2026-01-26 11:06:29.152430174 +0100 +++ /var/tmp/diff_new_pack.twOLD1/_new 2026-01-26 11:06:29.156430341 +0100 @@ -1,5 +1,5 @@ name: hcloud-cli -version: 1.60.0 -mtime: 1768575222 -commit: b1697c7ebfc5cc33cafda3f462a03c36b718056c +version: 1.61.0 +mtime: 1769178569 +commit: 398874d4c214639263781db3a22a4971e04c5e48 ++++++ vendor.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/hcloud.go new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/hcloud.go --- old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/hcloud.go 2026-01-16 15:53:42.000000000 +0100 +++ new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/hcloud.go 2026-01-23 15:29:29.000000000 +0100 @@ -7,6 +7,54 @@ (or the RRS feed available at https://docs.hetzner.cloud/changelog/feed.rss) to be notified about additions, deprecations and removals. +# Example + + package main + + import ( + "context" + "fmt" + "log" + + "github.com/hetznercloud/hcloud-go/v2/hcloud" + "github.com/hetznercloud/hcloud-go/v2/hcloud/exp/actionutil" + ) + + func main() { + ctx := context.Background() + + client := hcloud.NewClient( + hcloud.WithToken("token"), + hcloud.WithApplication("my-tool", "v1.0.0"), + ) + + result, _, err := client.Server.Create(ctx, hcloud.ServerCreateOpts{ + Name: "Foo", + Image: &hcloud.Image{Name: "ubuntu-24.0"}, + ServerType: &hcloud.ServerType{Name: "cpx22"}, + Location: &hcloud.Location{Name: "hel1"}, + }) + if err != nil { + log.Fatalf("error creating server: %s\n", err) + } + + // Always await any returned actions, to make sure the async process is completed before you use the result: + err = client.Action.WaitFor(ctx, actionutil.AppendNext(result.Action, result.NextActions)...) + if err != nil { + log.Fatalf("error creating server: %s\n", err) + } + + server, _, err := client.Server.GetByID(ctx, result.Server.ID) + if err != nil { + log.Fatalf("error retrieving server: %s\n", err) + } + if server != nil { + fmt.Printf("server is called %q\n", server.Name) // prints 'server is called "Foo"' + } else { + fmt.Println("server not found") + } + } + # Retry mechanism The [Client.Do] method will retry failed requests that match certain criteria. The @@ -32,4 +80,4 @@ package hcloud // Version is the library's version following Semantic Versioning. -const Version = "2.35.0" // x-releaser-pleaser-version +const Version = "2.36.0" // x-releaser-pleaser-version diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/schema/server.go new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/schema/server.go --- old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/schema/server.go 2026-01-16 15:53:42.000000000 +0100 +++ new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/schema/server.go 2026-01-23 15:29:29.000000000 +0100 @@ -266,7 +266,8 @@ // ServerActionRebuildRequest defines the schema for the request to // rebuild a server. type ServerActionRebuildRequest struct { - Image IDOrName `json:"image"` + Image IDOrName `json:"image"` + UserData *string `json:"user_data,omitempty"` } // ServerActionRebuildResponse defines the schema of the response when diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/server.go new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/server.go --- old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/server.go 2026-01-16 15:53:42.000000000 +0100 +++ new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/server.go 2026-01-23 15:29:29.000000000 +0100 @@ -727,7 +727,8 @@ // ServerRebuildOpts specifies options for rebuilding a server. type ServerRebuildOpts struct { - Image *Image + Image *Image + UserData *string } // ServerRebuildResult is the result of a create server call. @@ -754,7 +755,7 @@ reqPath := fmt.Sprintf(opPath, server.ID) - reqBody := schema.ServerActionRebuildRequest{} + reqBody := schema.ServerActionRebuildRequest{UserData: opts.UserData} if opts.Image.ID != 0 || opts.Image.Name != "" { reqBody.Image = schema.IDOrName{ID: opts.Image.ID, Name: opts.Image.Name} } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box.go new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box.go --- old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box.go 2026-01-16 15:53:42.000000000 +0100 +++ new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box.go 2026-01-23 15:29:29.000000000 +0100 @@ -91,8 +91,6 @@ // StorageBoxClient is a client for the Storage Box API. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. type StorageBoxClient struct { client *Client Action *ResourceActionClient[*StorageBox] @@ -101,8 +99,6 @@ // GetByID retrieves a [StorageBox] by its ID. If the [StorageBox] does not exist, nil is returned. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-get-a-storage-box -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) GetByID(ctx context.Context, id int64) (*StorageBox, *Response, error) { const opPath = "/storage_boxes/%d" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -123,8 +119,6 @@ // GetByName retrieves a [StorageBox] by its name. If the [StorageBox] does not exist, nil is returned. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-storage-boxes -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) GetByName(ctx context.Context, name string) (*StorageBox, *Response, error) { return firstByName(name, func() ([]*StorageBox, *Response, error) { return c.List(ctx, StorageBoxListOpts{Name: name}) @@ -136,8 +130,6 @@ // // When fetching by ID, see https://docs.hetzner.cloud/reference/hetzner#storage-boxes-get-a-storage-box // When fetching by name, see https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-storage-boxes -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) Get(ctx context.Context, idOrName string) (*StorageBox, *Response, error) { return getByIDOrName(ctx, c.GetByID, c.GetByName, idOrName) } @@ -166,8 +158,6 @@ // when their value corresponds to their zero value or when they are empty. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-storage-boxes -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) List(ctx context.Context, opts StorageBoxListOpts) ([]*StorageBox, *Response, error) { const opPath = "/storage_boxes?%s" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -185,8 +175,6 @@ // All returns all [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-storage-boxes -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) All(ctx context.Context) ([]*StorageBox, error) { return c.AllWithOpts(ctx, StorageBoxListOpts{}) } @@ -194,8 +182,6 @@ // AllWithOpts returns all [StorageBox] with the given options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-storage-boxes -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) AllWithOpts(ctx context.Context, opts StorageBoxListOpts) ([]*StorageBox, error) { if opts.ListOpts.PerPage == 0 { opts.ListOpts.PerPage = 50 @@ -250,8 +236,6 @@ // is sent to the API. They are not addressable by ID or name. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-create-a-storage-box -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) Create(ctx context.Context, opts StorageBoxCreateOpts) (StorageBoxCreateResult, *Response, error) { const opPath = "/storage_boxes" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -284,8 +268,6 @@ // Update updates a [StorageBox] with the given options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-update-a-storage-box -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) Update(ctx context.Context, storageBox *StorageBox, opts StorageBoxUpdateOpts) (*StorageBox, *Response, error) { const opPath = "/storage_boxes/%d" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -309,8 +291,6 @@ // Delete deletes a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-delete-a-storage-box -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) Delete(ctx context.Context, storageBox *StorageBox) (StorageBoxDeleteResult, *Response, error) { const opPath = "/storage_boxes/%d" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -348,8 +328,6 @@ // Folders lists folders in a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-folders-of-a-storage-box -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) Folders(ctx context.Context, storageBox *StorageBox, opts StorageBoxFoldersOpts) (StorageBoxFoldersResult, *Response, error) { const opPath = "/storage_boxes/%d/folders?%s" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -376,8 +354,6 @@ // ChangeProtection changes the protection level of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-change-protection -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) ChangeProtection(ctx context.Context, storageBox *StorageBox, opts StorageBoxChangeProtectionOpts) (*Action, *Response, error) { const opPath = "/storage_boxes/%d/actions/change_protection" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -401,8 +377,6 @@ // ChangeType changes the type of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-change-type -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) ChangeType(ctx context.Context, storageBox *StorageBox, opts StorageBoxChangeTypeOpts) (*Action, *Response, error) { const opPath = "/storage_boxes/%d/actions/change_type" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -426,8 +400,6 @@ // ResetPassword resets the password of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-reset-password -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) ResetPassword(ctx context.Context, storageBox *StorageBox, opts StorageBoxResetPasswordOpts) (*Action, *Response, error) { const opPath = "/storage_boxes/%d/actions/reset_password" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -455,8 +427,6 @@ // UpdateAccessSettings updates the [StorageBoxAccessSettings] of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-update-access-settings -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) UpdateAccessSettings(ctx context.Context, storageBox *StorageBox, opts StorageBoxUpdateAccessSettingsOpts) (*Action, *Response, error) { const opPath = "/storage_boxes/%d/actions/update_access_settings" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -480,8 +450,6 @@ // RollbackSnapshot rolls back a [StorageBox] to a [StorageBoxSnapshot]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-rollback-snapshot -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) RollbackSnapshot( ctx context.Context, storageBox *StorageBox, @@ -520,8 +488,6 @@ // EnableSnapshotPlan enables a [StorageBoxSnapshotPlan] for a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-enable-snapshot-plan -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) EnableSnapshotPlan( ctx context.Context, storageBox *StorageBox, @@ -544,8 +510,6 @@ // DisableSnapshotPlan disables the [StorageBoxSnapshotPlan] for a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-disable-snapshot-plan -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) DisableSnapshotPlan( ctx context.Context, storageBox *StorageBox, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_snapshot.go new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_snapshot.go --- old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_snapshot.go 2026-01-16 15:53:42.000000000 +0100 +++ new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_snapshot.go 2026-01-23 15:29:29.000000000 +0100 @@ -33,8 +33,6 @@ // GetSnapshotByID gets a [StorageBoxSnapshot] by its ID. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-get-a-snapshot -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) GetSnapshotByID(ctx context.Context, storageBox *StorageBox, id int64) (*StorageBoxSnapshot, *Response, error) { const optPath = "/storage_boxes/%d/snapshots/%d" ctx = ctxutil.SetOpPath(ctx, optPath) @@ -55,8 +53,6 @@ // GetSnapshotByName gets a [StorageBoxSnapshot] by its name. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-list-snapshots -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) GetSnapshotByName( ctx context.Context, storageBox *StorageBox, @@ -72,8 +68,6 @@ // // When fetching by ID, see https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-get-a-snapshot // When fetching by name, see https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-list-snapshots -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) GetSnapshot( ctx context.Context, storageBox *StorageBox, @@ -121,8 +115,6 @@ // Pagination is not supported, so this will return all [StorageBoxSnapshot] at once. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-list-snapshots -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) ListSnapshots( ctx context.Context, storageBox *StorageBox, @@ -144,8 +136,6 @@ // AllSnapshotsWithOpts lists all [StorageBoxSnapshot] of a [StorageBox] with the given options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-list-snapshots -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) AllSnapshotsWithOpts( ctx context.Context, storageBox *StorageBox, @@ -158,8 +148,6 @@ // AllSnapshots lists all [StorageBoxSnapshot] of a [StorageBox] without any options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-list-snapshots -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) AllSnapshots( ctx context.Context, storageBox *StorageBox, @@ -184,8 +172,6 @@ // CreateSnapshot creates a new [StorageBoxSnapshot] for the given [StorageBox] with the provided options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-create-a-snapshot -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) CreateSnapshot( ctx context.Context, storageBox *StorageBox, @@ -219,8 +205,6 @@ // UpdateSnapshot updates the given [StorageBoxSnapshot] of a [StorageBox] with the provided options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-update-a-snapshot -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) UpdateSnapshot( ctx context.Context, snapshot *StorageBoxSnapshot, @@ -248,8 +232,6 @@ // DeleteSnapshot deletes the given [StorageBoxSnapshot] of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-delete-a-snapshot -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) DeleteSnapshot( ctx context.Context, snapshot *StorageBoxSnapshot, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_subaccount.go new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_subaccount.go --- old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_subaccount.go 2026-01-16 15:53:42.000000000 +0100 +++ new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_subaccount.go 2026-01-23 15:29:29.000000000 +0100 @@ -40,8 +40,6 @@ // // When fetching by ID, see https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-get-a-subaccount // When fetching by name, see https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) GetSubaccount( ctx context.Context, storageBox *StorageBox, @@ -62,8 +60,6 @@ // GetSubaccountByID retrieves a [StorageBoxSubaccount] by its ID. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-get-a-subaccount -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) GetSubaccountByID( ctx context.Context, storageBox *StorageBox, @@ -88,8 +84,6 @@ // GetSubaccountByName retrieves a [StorageBoxSubaccount] by its name. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) GetSubaccountByName( ctx context.Context, storageBox *StorageBox, @@ -105,8 +99,6 @@ // GetSubaccountByUsername retrieves a [StorageBoxSubaccount] by its username. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) GetSubaccountByUsername( ctx context.Context, storageBox *StorageBox, @@ -147,8 +139,6 @@ // ListSubaccounts lists all [StorageBoxSubaccount] of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) ListSubaccounts( ctx context.Context, storageBox *StorageBox, @@ -170,8 +160,6 @@ // AllSubaccountsWithOpts retrieves all [StorageBoxSubaccount] of a [StorageBox] with the given options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) AllSubaccountsWithOpts( ctx context.Context, storageBox *StorageBox, @@ -184,8 +172,6 @@ // AllSubaccounts retrieves all [StorageBoxSubaccount] of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) AllSubaccounts( ctx context.Context, storageBox *StorageBox, @@ -223,8 +209,6 @@ // CreateSubaccount creates a new [StorageBoxSubaccount] for a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-create-a-subaccount -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) CreateSubaccount( ctx context.Context, storageBox *StorageBox, @@ -259,8 +243,6 @@ // UpdateSubaccount updates a [StorageBoxSubaccount] of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-update-a-subaccount -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) UpdateSubaccount( ctx context.Context, subaccount *StorageBoxSubaccount, @@ -288,8 +270,6 @@ // DeleteSubaccount deletes a [StorageBoxSubaccount] from a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-delete-a-subaccount -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) DeleteSubaccount( ctx context.Context, subaccount *StorageBoxSubaccount, @@ -318,8 +298,6 @@ // ResetSubaccountPassword resets the password of a [StorageBoxSubaccount]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccount-actions-reset-password -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) ResetSubaccountPassword( ctx context.Context, subaccount *StorageBoxSubaccount, @@ -351,8 +329,6 @@ // UpdateSubaccountAccessSettings updates the [StorageBoxSubaccountAccessSettings] of a [StorageBoxSubaccount]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccount-actions-update-access-settings -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) UpdateSubaccountAccessSettings( ctx context.Context, subaccount *StorageBoxSubaccount, @@ -380,8 +356,6 @@ // UpdateSubaccountAccessSettings changes the home directory of a [StorageBoxSubaccount]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccount-actions-change-home-directory -// -// Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxClient) ChangeSubaccountHomeDirectory( ctx context.Context, subaccount *StorageBoxSubaccount, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_type.go new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_type.go --- old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_type.go 2026-01-16 15:53:42.000000000 +0100 +++ new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/storage_box_type.go 2026-01-23 15:29:29.000000000 +0100 @@ -34,8 +34,6 @@ // StorageBoxTypeClient provides access to Storage Box Types in the Hetzner API. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types -// -// Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. type StorageBoxTypeClient struct { client *Client } @@ -57,8 +55,6 @@ // List returns a list of storage box types for a specific page. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-list-storage-box-types -// -// Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxTypeClient) List(ctx context.Context, opts StorageBoxTypeListOpts) ([]*StorageBoxType, *Response, error) { const opPath = "/storage_box_types?%s" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -76,8 +72,6 @@ // All returns all storage box types. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-list-storage-box-types -// -// Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxTypeClient) All(ctx context.Context) ([]*StorageBoxType, error) { return c.AllWithOpts(ctx, StorageBoxTypeListOpts{}) } @@ -85,8 +79,6 @@ // AllWithOpts returns all storage box types for the given options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-list-storage-box-types -// -// Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxTypeClient) AllWithOpts(ctx context.Context, opts StorageBoxTypeListOpts) ([]*StorageBoxType, error) { if opts.ListOpts.PerPage == 0 { opts.ListOpts.PerPage = 50 @@ -100,8 +92,6 @@ // GetByID returns a specific Storage Box Type by ID. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-get-a-storage-box-type -// -// Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxTypeClient) GetByID(ctx context.Context, id int64) (*StorageBoxType, *Response, error) { const opPath = "/storage_box_types/%d" ctx = ctxutil.SetOpPath(ctx, opPath) @@ -122,8 +112,6 @@ // GetByName retrieves a Storage Box Type by its name. If the Storage Box Type does not exist, nil is returned. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-get-a-storage-box-type -// -// Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxTypeClient) GetByName(ctx context.Context, name string) (*StorageBoxType, *Response, error) { return firstByName(name, func() ([]*StorageBoxType, *Response, error) { return c.List(ctx, StorageBoxTypeListOpts{Name: name}) @@ -134,8 +122,6 @@ // retrieves a Storage Box Type by its name. If the Storage Box Type does not exist, nil is returned. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-get-a-storage-box-type -// -// Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. func (c *StorageBoxTypeClient) Get(ctx context.Context, idOrName string) (*StorageBoxType, *Response, error) { return getByIDOrName(ctx, c.GetByID, c.GetByName, idOrName) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_storage_box_client_iface.go new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_storage_box_client_iface.go --- old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_storage_box_client_iface.go 2026-01-16 15:53:42.000000000 +0100 +++ new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_storage_box_client_iface.go 2026-01-23 15:29:29.000000000 +0100 @@ -11,22 +11,16 @@ // GetByID retrieves a [StorageBox] by its ID. If the [StorageBox] does not exist, nil is returned. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-get-a-storage-box - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. GetByID(ctx context.Context, id int64) (*StorageBox, *Response, error) // GetByName retrieves a [StorageBox] by its name. If the [StorageBox] does not exist, nil is returned. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-storage-boxes - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. GetByName(ctx context.Context, name string) (*StorageBox, *Response, error) // Get retrieves a [StorageBox] either by its ID or by its name, depending on whether // the input can be parsed as an integer. If no matching [StorageBox] is found, it returns nil. // // When fetching by ID, see https://docs.hetzner.cloud/reference/hetzner#storage-boxes-get-a-storage-box // When fetching by name, see https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-storage-boxes - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. Get(ctx context.Context, idOrName string) (*StorageBox, *Response, error) // List returns a list of [StorageBox] for a specific page. // @@ -34,20 +28,14 @@ // when their value corresponds to their zero value or when they are empty. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-storage-boxes - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. List(ctx context.Context, opts StorageBoxListOpts) ([]*StorageBox, *Response, error) // All returns all [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-storage-boxes - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. All(ctx context.Context) ([]*StorageBox, error) // AllWithOpts returns all [StorageBox] with the given options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-storage-boxes - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. AllWithOpts(ctx context.Context, opts StorageBoxListOpts) ([]*StorageBox, error) // Create creates a new [StorageBox] with the given options. // @@ -56,205 +44,139 @@ // is sent to the API. They are not addressable by ID or name. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-create-a-storage-box - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. Create(ctx context.Context, opts StorageBoxCreateOpts) (StorageBoxCreateResult, *Response, error) // Update updates a [StorageBox] with the given options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-update-a-storage-box - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. Update(ctx context.Context, storageBox *StorageBox, opts StorageBoxUpdateOpts) (*StorageBox, *Response, error) // Delete deletes a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-delete-a-storage-box - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. Delete(ctx context.Context, storageBox *StorageBox) (StorageBoxDeleteResult, *Response, error) // Folders lists folders in a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-boxes-list-folders-of-a-storage-box - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. Folders(ctx context.Context, storageBox *StorageBox, opts StorageBoxFoldersOpts) (StorageBoxFoldersResult, *Response, error) // ChangeProtection changes the protection level of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-change-protection - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. ChangeProtection(ctx context.Context, storageBox *StorageBox, opts StorageBoxChangeProtectionOpts) (*Action, *Response, error) // ChangeType changes the type of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-change-type - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. ChangeType(ctx context.Context, storageBox *StorageBox, opts StorageBoxChangeTypeOpts) (*Action, *Response, error) // ResetPassword resets the password of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-reset-password - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. ResetPassword(ctx context.Context, storageBox *StorageBox, opts StorageBoxResetPasswordOpts) (*Action, *Response, error) // UpdateAccessSettings updates the [StorageBoxAccessSettings] of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-update-access-settings - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. UpdateAccessSettings(ctx context.Context, storageBox *StorageBox, opts StorageBoxUpdateAccessSettingsOpts) (*Action, *Response, error) // RollbackSnapshot rolls back a [StorageBox] to a [StorageBoxSnapshot]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-rollback-snapshot - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. RollbackSnapshot(ctx context.Context, storageBox *StorageBox, opts StorageBoxRollbackSnapshotOpts) (*Action, *Response, error) // EnableSnapshotPlan enables a [StorageBoxSnapshotPlan] for a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-enable-snapshot-plan - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. EnableSnapshotPlan(ctx context.Context, storageBox *StorageBox, opts StorageBoxEnableSnapshotPlanOpts) (*Action, *Response, error) // DisableSnapshotPlan disables the [StorageBoxSnapshotPlan] for a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-actions-disable-snapshot-plan - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. DisableSnapshotPlan(ctx context.Context, storageBox *StorageBox) (*Action, *Response, error) // GetSnapshotByID gets a [StorageBoxSnapshot] by its ID. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-get-a-snapshot - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. GetSnapshotByID(ctx context.Context, storageBox *StorageBox, id int64) (*StorageBoxSnapshot, *Response, error) // GetSnapshotByName gets a [StorageBoxSnapshot] by its name. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-list-snapshots - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. GetSnapshotByName(ctx context.Context, storageBox *StorageBox, name string) (*StorageBoxSnapshot, *Response, error) // GetSnapshot retrieves a [StorageBoxSnapshot] either by its ID or by its name, depending on whether // the input can be parsed as an integer. If no matching [StorageBoxSnapshot] is found, it returns nil. // // When fetching by ID, see https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-get-a-snapshot // When fetching by name, see https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-list-snapshots - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. GetSnapshot(ctx context.Context, storageBox *StorageBox, idOrName string) (*StorageBoxSnapshot, *Response, error) // ListSnapshots lists all [StorageBoxSnapshot] of a [StorageBox] with the given options. // // Pagination is not supported, so this will return all [StorageBoxSnapshot] at once. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-list-snapshots - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. ListSnapshots(ctx context.Context, storageBox *StorageBox, opts StorageBoxSnapshotListOpts) ([]*StorageBoxSnapshot, *Response, error) // AllSnapshotsWithOpts lists all [StorageBoxSnapshot] of a [StorageBox] with the given options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-list-snapshots - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. AllSnapshotsWithOpts(ctx context.Context, storageBox *StorageBox, opts StorageBoxSnapshotListOpts) ([]*StorageBoxSnapshot, error) // AllSnapshots lists all [StorageBoxSnapshot] of a [StorageBox] without any options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-list-snapshots - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. AllSnapshots(ctx context.Context, storageBox *StorageBox) ([]*StorageBoxSnapshot, error) // CreateSnapshot creates a new [StorageBoxSnapshot] for the given [StorageBox] with the provided options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-create-a-snapshot - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. CreateSnapshot(ctx context.Context, storageBox *StorageBox, opts StorageBoxSnapshotCreateOpts) (StorageBoxSnapshotCreateResult, *Response, error) // UpdateSnapshot updates the given [StorageBoxSnapshot] of a [StorageBox] with the provided options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-update-a-snapshot - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. UpdateSnapshot(ctx context.Context, snapshot *StorageBoxSnapshot, opts StorageBoxSnapshotUpdateOpts) (*StorageBoxSnapshot, *Response, error) // DeleteSnapshot deletes the given [StorageBoxSnapshot] of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-snapshots-delete-a-snapshot - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. DeleteSnapshot(ctx context.Context, snapshot *StorageBoxSnapshot) (StorageBoxSnapshotDeleteResult, *Response, error) // GetSubaccount retrieves a [StorageBoxSubaccount] either by its ID or by its name, depending on whether // the input can be parsed as an integer. If no matching [StorageBoxSubaccount] is found, it returns nil. // // When fetching by ID, see https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-get-a-subaccount // When fetching by name, see https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. GetSubaccount(ctx context.Context, storageBox *StorageBox, idOrName string) (*StorageBoxSubaccount, *Response, error) // GetSubaccountByID retrieves a [StorageBoxSubaccount] by its ID. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-get-a-subaccount - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. GetSubaccountByID(ctx context.Context, storageBox *StorageBox, id int64) (*StorageBoxSubaccount, *Response, error) // GetSubaccountByName retrieves a [StorageBoxSubaccount] by its name. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. GetSubaccountByName(ctx context.Context, storageBox *StorageBox, name string) (*StorageBoxSubaccount, *Response, error) // GetSubaccountByUsername retrieves a [StorageBoxSubaccount] by its username. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. GetSubaccountByUsername(ctx context.Context, storageBox *StorageBox, username string) (*StorageBoxSubaccount, *Response, error) // ListSubaccounts lists all [StorageBoxSubaccount] of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. ListSubaccounts(ctx context.Context, storageBox *StorageBox, opts StorageBoxSubaccountListOpts) ([]*StorageBoxSubaccount, *Response, error) // AllSubaccountsWithOpts retrieves all [StorageBoxSubaccount] of a [StorageBox] with the given options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. AllSubaccountsWithOpts(ctx context.Context, storageBox *StorageBox, opts StorageBoxSubaccountListOpts) ([]*StorageBoxSubaccount, error) // AllSubaccounts retrieves all [StorageBoxSubaccount] of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-list-subaccounts - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. AllSubaccounts(ctx context.Context, storageBox *StorageBox) ([]*StorageBoxSubaccount, error) // CreateSubaccount creates a new [StorageBoxSubaccount] for a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-create-a-subaccount - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. CreateSubaccount(ctx context.Context, storageBox *StorageBox, opts StorageBoxSubaccountCreateOpts) (StorageBoxSubaccountCreateResult, *Response, error) // UpdateSubaccount updates a [StorageBoxSubaccount] of a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-update-a-subaccount - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. UpdateSubaccount(ctx context.Context, subaccount *StorageBoxSubaccount, opts StorageBoxSubaccountUpdateOpts) (*StorageBoxSubaccount, *Response, error) // DeleteSubaccount deletes a [StorageBoxSubaccount] from a [StorageBox]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccounts-delete-a-subaccount - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. DeleteSubaccount(ctx context.Context, subaccount *StorageBoxSubaccount) (StorageBoxSubaccountDeleteResult, *Response, error) // ResetSubaccountPassword resets the password of a [StorageBoxSubaccount]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccount-actions-reset-password - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. ResetSubaccountPassword(ctx context.Context, subaccount *StorageBoxSubaccount, opts StorageBoxSubaccountResetPasswordOpts) (*Action, *Response, error) // UpdateSubaccountAccessSettings updates the [StorageBoxSubaccountAccessSettings] of a [StorageBoxSubaccount]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccount-actions-update-access-settings - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. UpdateSubaccountAccessSettings(ctx context.Context, subaccount *StorageBoxSubaccount, opts StorageBoxSubaccountUpdateAccessSettingsOpts) (*Action, *Response, error) // UpdateSubaccountAccessSettings changes the home directory of a [StorageBoxSubaccount]. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-subaccount-actions-change-home-directory - // - // Experimental: [StorageBoxClient] is experimental, breaking changes may occur within minor releases. ChangeSubaccountHomeDirectory(ctx context.Context, subaccount *StorageBoxSubaccount, opts StorageBoxSubaccountChangeHomeDirectoryOpts) (*Action, *Response, error) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_storage_box_type_client_iface.go new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_storage_box_type_client_iface.go --- old/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_storage_box_type_client_iface.go 2026-01-16 15:53:42.000000000 +0100 +++ new/vendor/github.com/hetznercloud/hcloud-go/v2/hcloud/zz_storage_box_type_client_iface.go 2026-01-23 15:29:29.000000000 +0100 @@ -11,38 +11,26 @@ // List returns a list of storage box types for a specific page. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-list-storage-box-types - // - // Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. List(ctx context.Context, opts StorageBoxTypeListOpts) ([]*StorageBoxType, *Response, error) // All returns all storage box types. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-list-storage-box-types - // - // Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. All(ctx context.Context) ([]*StorageBoxType, error) // AllWithOpts returns all storage box types for the given options. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-list-storage-box-types - // - // Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. AllWithOpts(ctx context.Context, opts StorageBoxTypeListOpts) ([]*StorageBoxType, error) // GetByID returns a specific Storage Box Type by ID. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-get-a-storage-box-type - // - // Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. GetByID(ctx context.Context, id int64) (*StorageBoxType, *Response, error) // GetByName retrieves a Storage Box Type by its name. If the Storage Box Type does not exist, nil is returned. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-get-a-storage-box-type - // - // Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. GetByName(ctx context.Context, name string) (*StorageBoxType, *Response, error) // Get retrieves a Storage Box Type by its ID if the input can be parsed as an integer, otherwise it // retrieves a Storage Box Type by its name. If the Storage Box Type does not exist, nil is returned. // // See https://docs.hetzner.cloud/reference/hetzner#storage-box-types-get-a-storage-box-type - // - // Experimental: [StorageBoxTypeClient] is experimental, breaking changes may occur within minor releases. Get(ctx context.Context, idOrName string) (*StorageBoxType, *Response, error) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/modules.txt new/vendor/modules.txt --- old/vendor/modules.txt 2026-01-16 15:53:42.000000000 +0100 +++ new/vendor/modules.txt 2026-01-23 15:29:29.000000000 +0100 @@ -55,7 +55,7 @@ # github.com/guptarohit/asciigraph v0.7.3 ## explicit; go 1.11 github.com/guptarohit/asciigraph -# github.com/hetznercloud/hcloud-go/v2 v2.35.0 +# github.com/hetznercloud/hcloud-go/v2 v2.36.0 ## explicit; go 1.24.0 github.com/hetznercloud/hcloud-go/v2/hcloud github.com/hetznercloud/hcloud-go/v2/hcloud/exp/actionutil
