swagger-api / swagger-api/swagger-codegen
[Objc] Mustache error generating Objc client podspec for 3.0.0
Nobody has claimed this yet.
- Dominant language
- Mustache
- Stars
- 17.8k
- Forks
- 6k
- PR merge metrics
- No merged PRs in 30d
Description
Description
Generating Objective-C client fails with handlebars/mustache error:
Exception in thread "Thread-1" java.lang.RuntimeException: Could not generate supporting file 'SupportingFile:
templateFile: podspec.mustache
folder:
destinationFilename: Client.podspec
'
at io.swagger.codegen.DefaultGenerator.generateSupportingFiles(DefaultGenerator.java:611)
at io.swagger.codegen.DefaultGenerator.generate(DefaultGenerator.java:728)
at io.swagger.codegen.cmd.Generate.run(Generate.java:312)
at java.lang.Thread.run(Thread.java:748)
Caused by: com.github.jknack.handlebars.HandlebarsException: /objc/podspec.mustache:15:3: found: '#'
{{{#appDescription}}} s.description = <<-DESC
^
at com.github.jknack.handlebars.internal.HbsErrorReporter.syntaxError(HbsErrorReporter.java:93)
at org.antlr.v4.runtime.ProxyErrorListener.syntaxError(ProxyErrorListener.java:65)
at com.github.jknack.handlebars.internal.HbsParserFactory$2.notifyListeners(HbsParserFactory.java:148)
at org.antlr.v4.runtime.Lexer.nextToken(Lexer.java:168)
at org.antlr.v4.runtime.BufferedTokenStream.fetch(BufferedTokenStream.java:185)
at org.antlr.v4.runtime.BufferedTokenStream.sync(BufferedTokenStream.java:168)
at org.antlr.v4.runtime.BufferedTokenStream.consume(BufferedTokenStream.java:152)
at org.antlr.v4.runtime.atn.ParserATNSimulator.execATN(ParserATNSimulator.java:556)
at org.antlr.v4.runtime.atn.ParserATNSimulator.adaptivePredict(ParserATNSimulator.java:412)
at com.github.jknack.handlebars.internal.HbsParser.body(HbsParser.java:216)
at com.github.jknack.handlebars.internal.HbsParser.block(HbsParser.java:670)
at com.github.jknack.handlebars.internal.HbsParser.statement(HbsParser.java:336)
at com.github.jknack.handlebars.internal.HbsParser.body(HbsParser.java:222)
at com.github.jknack.handlebars.internal.HbsParser.block(HbsParser.java:670)
at com.github.jknack.handlebars.internal.HbsParser.statement(HbsParser.java:336)
at com.github.jknack.handlebars.internal.HbsParser.body(HbsParser.java:222)
at com.github.jknack.handlebars.internal.HbsParser.template(HbsParser.java:165)
at com.github.jknack.handlebars.internal.HbsParserFactory$1.parse(HbsParserFactory.java:84)
at com.github.jknack.handlebars.cache.NullTemplateCache.get(NullTemplateCache.java:54)
at com.github.jknack.handlebars.Handlebars.compile(Handlebars.java:414)
at com.github.jknack.handlebars.Handlebars.compile(Handlebars.java:357)
at com.github.jknack.handlebars.Handlebars.compile(Handlebars.java:343)
at io.swagger.codegen.DefaultGenerator.getHandlebars(DefaultGenerator.java:1012)
at io.swagger.codegen.DefaultGenerator.generateSupportingFiles(DefaultGenerator.java:579)
Swagger-codegen version
3.0.0 snapshot (swagger-codegen-cli-3.0.0-20180112.231857-20.jar)
Swagger declaration file content or url
PetStore Example
https://github.com/OAI/OpenAPI-Specification/blob/master/examples/v3.0/petstore.yaml
Command line used for generation
java -jar ~/Downloads/swagger-codegen-cli-3.0.0-20180112.231857-20.jar generate -l objc -i api.yaml -c config.json -o MyApiClient
Suggest a fix/enhancement
Perhaps the triple-brace here is a syntax error? I could not find the podspec.mustache file in the 3.0.0 branch.
https://github.com/swagger-api/swagger-codegen/blob/ae8a123484468632375f88cf1ea53c9a957c44f8/modules/swagger-codegen/src/main/resources/objc/podspec.mustache#L15
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with modules/swagger-codegen/src/main/resources/objc/podspec.mustache at the referenced line, then run the reported Java generation command with the PetStore OpenAPI example. Check the template syntax involved in the Handlebars error and verify that Objective-C client generation produces Client.podspec without an exception.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, objective-c
- Domain
- devtools, tooling
- Issue type
- Bug
- Difficulty
- 1/5
- Estimated time
- Under an hour
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100