Skip to content

Ruby generation segmentation fault from Azure DevOps Services Git swagger file #5310

Closed

Description

What are you generating using Kiota, clients or plugins?

API Client/SDK

In what context or format are you using Kiota?

Linux executable

Client library/SDK language

Ruby

Describe the bug

I am calling kiota generate -l ruby -d https://raw.githubusercontent.com/MicrosoftDocs/vsts-rest-api-specs/master/specification/git/7.2/git.json -n Git -o ./client-git --log-level Trace

And get Segmentation fault.

Expected behavior

A client code should be generated

How to reproduce

Run the command kiota generate -l ruby -d https://raw.githubusercontent.com/MicrosoftDocs/vsts-rest-api-specs/master/specification/git/7.2/git.json -n Git -o ./client-git --log-level Trace

Open API description file

https://raw.githubusercontent.com/MicrosoftDocs/vsts-rest-api-specs/master/specification/git/7.2/git.json

Kiota Version

1.17.0+1eb16cd65853c17179e2dde3ae6098135deacf55

Latest Kiota version known to work for scenario above?(Not required)

No response

Known Workarounds

No response

Configuration

  • uname -a: Linux f7f30fcd7ac7 6.10.0-linuxkit Generate models #1 SMP Wed Jul 17 10:51:09 UTC 2024 x86_64 GNU/Linux
  • container: --platform=linux/amd64 mcr.microsoft.com/devcontainers/ruby:3-bookworm
  • physical machine: macbook M1 Pro

Debug output

Click to expand log
Warning: the Ruby language is in preview (Experimental) some features are not fully supported and source breaking changes will happen with future updates.
trce: Kiota.Builder.KiotaBuilder[0]
      configuration: {"Generation":{"ShouldGetApiManifest":false,"SkipGeneration":false,"Operation":null,"OpenAPIFilePath":"https://raw.githubusercontent.com/MicrosoftDocs/vsts-rest-api-specs/master/specification/git/7.2/git.json","ApiManifestPath":"/workspaces/azure-devops-git-ruby-client/apimanifest.json","OutputPath":"/workspaces/azure-devops-git-ruby-client/./client-git","ClientClassName":"ApiClient","ClientNamespaceName":"Git","NamespaceNameSeparator":".","ModelsNamespaceName":"Git.models","Language":7,"PluginTypes":[],"ApiRootUrl":null,"UsesBackingStore":false,"ExcludeBackwardCompatible":false,"IncludeBackwardCompatible":true,"IncludeAdditionalData":true,"Serializers":["Microsoft.Kiota.Serialization.Json.JsonSerializationWriterFactory","Microsoft.Kiota.Serialization.Text.TextSerializationWriterFactory","Microsoft.Kiota.Serialization.Form.FormSerializationWriterFactory","Microsoft.Kiota.Serialization.Multipart.MultipartSerializationWriterFactory"],"Deserializers":["Microsoft.Kiota.Serialization.Json.JsonParseNodeFactory","Microsoft.Kiota.Serialization.Text.TextParseNodeFactory","Microsoft.Kiota.Serialization.Form.FormParseNodeFactory"],"ShouldWriteNamespaceIndices":true,"ShouldWriteBarrelsIfClassExists":false,"CleanOutput":false,"StructuredMimeTypes":["application/json","text/plain;q=0.9","application/x-www-form-urlencoded;q=0.2","multipart/form-data;q=0.1"],"IncludePatterns":[],"ExcludePatterns":[],"PatternsOverride":[],"ClearCache":false,"DisabledValidationRules":[],"MaxDegreeOfParallelism":-1,"IsPluginConfiguration":false,"DisableSSLValidation":false},"Search":{"APIsGuruListUrl":"https://raw.githubusercontent.com/APIs-guru/openapi-directory/gh-pages/v2/list.json","GitHub":{"AppId":"Iv1.9ed2bcb878c90617","ApiBaseUrl":"https://api.github.com","BlockListUrl":"https://raw.githubusercontent.com/microsoft/kiota/main/resources/index-block-list.yml","AppManagement":"https://aka.ms/kiota/install/github"},"ClearCache":false},"Download":{"OutputPath":"./output/result.json","CleanOutput":false,"DisableSSLValidation":false,"ClearCache":false},"Languages":{"CLI":{"MaturityLevel":1,"Dependencies":[{"Name":"Microsoft.Kiota.Abstractions","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Http.HttpClientLibrary","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Serialization.Form","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Serialization.Json","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Authentication.Azure","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Serialization.Text","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Cli.Commons","Version":"1.1.2"}],"DependencyInstallCommand":"dotnet add package {0} --version {1}","ClientClassName":"","ClientNamespaceName":"","StructuredMimeTypes":[]},"CSharp":{"MaturityLevel":2,"Dependencies":[{"Name":"Microsoft.Kiota.Abstractions","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Http.HttpClientLibrary","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Serialization.Form","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Serialization.Json","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Authentication.Azure","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Serialization.Text","Version":"1.11.0"},{"Name":"Microsoft.Kiota.Serialization.Multipart","Version":"1.11.0"}],"DependencyInstallCommand":"dotnet add package {0} --version {1}","ClientClassName":"","ClientNamespaceName":"","StructuredMimeTypes":[]},"Go":{"MaturityLevel":2,"Dependencies":[{"Name":"github.com/microsoft/kiota-abstractions-go","Version":"v1.6.1"},{"Name":"github.com/microsoft/kiota-http-go","Version":"v1.4.3"},{"Name":"github.com/microsoft/kiota-serialization-form-go","Version":"v1.0.0"},{"Name":"github.com/microsoft/kiota-serialization-json-go","Version":"v1.0.7"},{"Name":"github.com/microsoft/kiota-authentication-azure-go","Version":"v1.1.0"},{"Name":"github.com/microsoft/kiota-serialization-text-go","Version":"v1.0.0"},{"Name":"github.com/microsoft/kiota-serialization-multipart-go","Version":"v1.0.0"}],"DependencyInstallCommand":"go get {0}@{1}","ClientClassName":"","ClientNamespaceName":"","StructuredMimeTypes":[]},"Java":{"MaturityLevel":2,"Dependencies":[{"Name":"com.microsoft.kiota:microsoft-kiota-abstractions","Version":"1.2.0"},{"Name":"com.microsoft.kiota:microsoft-kiota-http-okHttp","Version":"1.2.0"},{"Name":"com.microsoft.kiota:microsoft-kiota-serialization-form","Version":"1.2.0"},{"Name":"com.microsoft.kiota:microsoft-kiota-serialization-json","Version":"1.2.0"},{"Name":"com.microsoft.kiota:microsoft-kiota-authentication-azure","Version":"1.2.0"},{"Name":"com.microsoft.kiota:microsoft-kiota-serialization-text","Version":"1.2.0"},{"Name":"com.microsoft.kiota:microsoft-kiota-serialization-multipart","Version":"1.2.0"},{"Name":"jakarta.annotation:jakarta.annotation-api","Version":"3.0.0"}],"DependencyInstallCommand":"{0}:{1}","ClientClassName":"","ClientNamespaceName":"","StructuredMimeTypes":[]},"PHP":{"MaturityLevel":2,"Dependencies":[{"Name":"microsoft/kiota-abstractions","Version":"1.4.0"},{"Name":"microsoft/kiota-http-guzzle","Version":"1.3.0"},{"Name":"microsoft/kiota-serialization-json","Version":"1.3.0"},{"Name":"microsoft/kiota-authentication-phpleague","Version":"1.2.0"},{"Name":"microsoft/kiota-serialization-text","Version":"1.1.0"},{"Name":"microsoft/kiota-serialization-multipart","Version":"1.0.0"},{"Name":"microsoft/kiota-serialization-form","Version":"1.1.1"}],"DependencyInstallCommand":"composer require {0}:{1}","ClientClassName":"","ClientNamespaceName":"","StructuredMimeTypes":[]},"Python":{"MaturityLevel":2,"Dependencies":[{"Name":"microsoft-kiota-abstractions","Version":"1.3.3"},{"Name":"microsoft-kiota-http","Version":"1.3.2"},{"Name":"microsoft-kiota-serialization-json","Version":"1.3.0"},{"Name":"microsoft-kiota-authentication-azure","Version":"1.0.0"},{"Name":"microsoft-kiota-serialization-text","Version":"1.0.0"},{"Name":"microsoft-kiota-serialization-form","Version":"0.1.0"},{"Name":"microsoft-kiota-serialization-multipart","Version":"0.1.0"}],"DependencyInstallCommand":"pip install {0}=={1}","ClientClassName":"","ClientNamespaceName":"","StructuredMimeTypes":[]},"Ruby":{"MaturityLevel":0,"Dependencies":[{"Name":"microsoft_kiota_abstractions","Version":"0.14.4"},{"Name":"microsoft_kiota_faraday","Version":"0.15.0"},{"Name":"microsoft_kiota_serialization_json","Version":"0.9.1"},{"Name":"microsoft_kiota_authentication_oauth","Version":"0.8.0"}],"DependencyInstallCommand":"gem install \u0022{0}\u0022 -v \u0022{1}\u0022","ClientClassName":"","ClientNamespaceName":"","StructuredMimeTypes":[]},"Swift":{"MaturityLevel":0,"Dependencies":[],"DependencyInstallCommand":"","ClientClassName":"","ClientNamespaceName":"","StructuredMimeTypes":[]},"TypeScript":{"MaturityLevel":1,"Dependencies":[{"Name":"@microsoft/kiota-abstractions","Version":"1.0.0-preview.59"},{"Name":"@microsoft/kiota-http-fetchlibrary","Version":"1.0.0-preview.58"},{"Name":"@microsoft/kiota-serialization-form","Version":"1.0.0-preview.48"},{"Name":"@microsoft/kiota-serialization-json","Version":"1.0.0-preview.59"},{"Name":"@microsoft/kiota-authentication-azure","Version":"1.0.0-preview.54"},{"Name":"@microsoft/kiota-serialization-text","Version":"1.0.0-preview.56"},{"Name":"@microsoft/kiota-serialization-multipart","Version":"1.0.0-preview.37"}],"DependencyInstallCommand":"npm install {0}@{1} -SE","ClientClassName":"","ClientNamespaceName":"","StructuredMimeTypes":[]}},"Update":{"OrgName":"microsoft","RepoName":"kiota","Disabled":false}}
dbug: Kiota.Builder.KiotaBuilder[0]
      kiota version 1.17.0
dbug: Kiota.Builder.KiotaBuilder[0]
      cache file /tmp/kiota/cache/generation/3BFEC6ED8B1ED08620F69147BDE342C4F997C1A0F30DDB3A17850CF2F84EEFD1/git.json not found, downloading from https://raw.githubusercontent.com/MicrosoftDocs/vsts-rest-api-specs/master/specification/git/7.2/git.json
info: Kiota.Builder.KiotaBuilder[0]
      loaded description from remote source
trce: Kiota.Builder.KiotaBuilder[0]
      705ms: Read OpenAPI file https://raw.githubusercontent.com/MicrosoftDocs/vsts-rest-api-specs/master/specification/git/7.2/git.json
dbug: Kiota.Builder.KiotaBuilder[0]
      step 1 - reading the stream - took 00:00:00.7109226
trce: Kiota.Builder.KiotaBuilder[0]
      Parsing OpenAPI file
Segmentation fault

Other information

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

Labels

Type

No type

Projects

  • Status

    Done ✔️

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions