Skip to content

chore(dgw):regenerate openapi clients - #1890

Open
irvingouj@Devolutions (irvingoujAtDevolution) wants to merge 4 commits into
masterfrom
regenerate-openapi-client
Open

chore(dgw):regenerate openapi clients#1890
irvingouj@Devolutions (irvingoujAtDevolution) wants to merge 4 commits into
masterfrom
regenerate-openapi-client

Conversation

@irvingoujAtDevolution

Copy link
Copy Markdown
Contributor

just ran generate_clients.ps1, nothing updated

Copilot AI review requested due to automatic review settings July 29, 2026 15:20
@github-actions

Copy link
Copy Markdown

Let maintainers know that an action is required on their side

  • Add the label release-required Please cut a new release (Devolutions Gateway, Devolutions Agent, Jetsocat, PowerShell module) when you request a maintainer to cut a new release (Devolutions Gateway, Devolutions Agent, Jetsocat, PowerShell module)

  • Add the label release-blocker Follow-up is required before cutting a new release if a follow-up is required before cutting a new release

  • Add the label publish-required Please publish libraries (`Devolutions.Gateway.Utils`, OpenAPI clients, etc) when you request a maintainer to publish libraries (Devolutions.Gateway.Utils, OpenAPI clients, etc.)

  • Add the label publish-blocker Follow-up is required before publishing libraries if a follow-up is required before publishing libraries

@irvingoujAtDevolution irvingouj@Devolutions (irvingoujAtDevolution) changed the title regenerate openapi client chore(dgw):regenerate openapi clients Jul 29, 2026
@irvingoujAtDevolution
irvingouj@Devolutions (irvingoujAtDevolution) changed the base branch from master to regenerate-openapi-config July 29, 2026 15:24

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Regenerates OpenAPI clients using Generator 7.24.0 and the 2026.2.4 API specifications.

Changes:

  • Adds update and network-scanning APIs/models.
  • Refreshes Angular and .NET generated clients.
  • Updates generated dependencies, documentation, and metadata.

Reviewed changes

Copilot reviewed 174 out of 174 changed files in this pull request and generated 2 comments.

Show a summary per file
File(s) Description
openapitools.json Pins Generator 7.24.0.
devolutions-gateway/openapi/{gateway-api.yaml,subscriber-api.yaml} Updates API specifications.
devolutions-gateway/openapi/ts-angular-client/{package.json,tsconfig.json,index.ts,configuration.ts,encoder.ts,query.params.ts,provide-api.ts,api.base.service.ts} Refreshes Angular client infrastructure.
devolutions-gateway/openapi/ts-angular-client/api/{config,health,heartbeat,preflight}.service.ts Regenerates Angular services.
devolutions-gateway/openapi/ts-angular-client/model/*.ts Regenerates enums and adds update/network models.
devolutions-gateway/openapi/ts-angular-client/.openapi-generator/{FILES,VERSION} Updates generation metadata.
devolutions-gateway/openapi/dotnet-subscriber/src/Devolutions.Gateway.Subscriber/**/*.cs Regenerates subscriber API sources.
devolutions-gateway/openapi/dotnet-subscriber/src/Devolutions.Gateway.Subscriber/Devolutions.Gateway.Subscriber.csproj Retargets and reformats subscriber project.
devolutions-gateway/openapi/dotnet-subscriber/.openapi-generator/VERSION Updates generator metadata.
devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/*.cs Regenerates existing models and adds update/network models.
devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Client/*.cs Refreshes client runtime contracts and helpers.
devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Api/*.cs Regenerates API implementations.
devolutions-gateway/openapi/dotnet-client/docs/*.md Updates generated API/model documentation.
devolutions-gateway/openapi/dotnet-client/README.md Updates SDK reference documentation.
devolutions-gateway/openapi/dotnet-client/.openapi-generator/{FILES,VERSION} Updates generation metadata.
devolutions-gateway/openapi/doc/.openapi-generator/VERSION Updates documentation generator version.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread openapitools.json Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 139 out of 139 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (5)

devolutions-gateway/openapi/dotnet-subscriber/src/Devolutions.Gateway.Subscriber/Devolutions.Gateway.Subscriber.csproj:6

  • This regeneration downgrades the subscriber library from .NET 10 to the end-of-support .NET 6 target, which is a breaking platform regression unrelated to refreshing the OpenAPI surface. The generator configuration still pins aspnetCoreVersion to 6.0, so restore the intended target there and regenerate rather than allowing every regeneration to undo the .NET 10 upgrade.
    devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/SetUpdateScheduleRequest.cs:91
  • UpdateWindowStart is optional and 0 is a valid explicit value, but this non-nullable property combined with EmitDefaultValue = false omits 0 during JSON serialization. The server then applies its missing-field default of 7200, so a C# caller cannot schedule a midnight start. Generate an optional representation that distinguishes “not supplied” from 0 (for example, a nullable backing value) and regenerate the SDK.
    devolutions-gateway/openapi/ts-angular-client/api/net.service.ts:453
  • This method is emitted as a normal Angular HttpClient GET, but /jet/net/scan requires a WebSocket Upgrade and streams frames after the 101 response. HttpClient neither performs that handshake nor exposes WebSocket frames, so this generated method cannot provide the behavior its API advertises. Exclude this operation from REST client generation or provide a WebSocket-based client implementation.
    devolutions-gateway/openapi/dotnet-client/docs/UpdateApi.md:342
  • The generated C# example does not compile: nullable annotations cannot be applied to an object-creation type (new UpdateRequestSchema?()). Correct the documentation template/type rendering so optional reference types are instantiated without the ?, then regenerate.
            var updateRequestSchema = new UpdateRequestSchema?(); // UpdateRequestSchema? | Products and target versions to update (optional) 

devolutions-gateway/openapi/dotnet-client/docs/NetApi.md:244

  • All four generated examples are invalid C#: constructs such as new List<string>?() do not compile because ? cannot follow the type in an object-creation expression. Fix optional-type rendering in the documentation generator/template and regenerate these examples.
            var range = new List<string>?(); // List<string>? | The start and end IP address of the range to scan. for example: 10.10.0.0-10.10.0.255 (optional) 
            var target = new List<string>?(); // List<string>? | Explicit single-host targets to scan. Each value must parse as an IPv4 or IPv6 address; invalid values yield a structured `{ error: \"invalid_target\", value: \"<raw>\" }` 400 rather than a generic serde rejection at extraction time (mirrors the `range=` / `probe=` validation path). (optional) 
            var interfaceId = new List<string>?(); // List<string>? | Gateway network interface IDs to use as scan sources. (optional) 
            var probe = new List<string>?(); // List<string>? | The probes to run. Each value is either `ping`, a port number (`22`), or a named service (`rdp`, `https`, …). Validation is deferred to scan-time so failures can be surfaced as a structured 400 — naming the offending value — instead of a generic serde rejection at extraction time. (optional) 

Base automatically changed from regenerate-openapi-config to master July 30, 2026 02:39
The previous run went through a shell whose console codepage was 437, so
PowerShell mangled the em dashes and ellipsis coming out of cargo. Re-ran
the script from a UTF-8 console.
The previous run used openapi-generator 7.24.0 instead of the 7.9.0 pinned
in devolutions-gateway/openapi/openapitools.json. That churned every
generated file and bumped the Angular peer dependency from 18 to 21.

Also drops the stray openapitools.json that the generator wrapper left at
the repository root, and restores the UTF-8 punctuation in the generated
gateway document.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants