Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Throws org.scalameta.invariants.InvariantFailedException #16

Closed
attilapiros opened this issue Jun 28, 2018 · 5 comments
Closed

Throws org.scalameta.invariants.InvariantFailedException #16

attilapiros opened this issue Jun 28, 2018 · 5 comments
Labels
scalameta Issue related to with Scala meta

Comments

@attilapiros
Copy link

First thanks for your contribution to open source :)

Unfortunately I cannot use it yet I have tried to generate the tags on the Apache Spark source and got the following error:

$ stags ./
Exception in thread "main" org.scalameta.invariants.InvariantFailedException: invariant failed:
when verifying ScalametaTokenizer.this.input.chars.apply(curr.endOffset.+(1)).==('\"')
found that ScalametaTokenizer.this.input.chars.apply(curr.endOffset.+(1)) is not equal to '\"'
where ScalametaTokenizer = scala.meta.internal.tokenizers.ScalametaTokenizer@5143c662
	at org.scalameta.invariants.InvariantFailedException$.raise(Exceptions.scala:15)
	at scala.meta.internal.tokenizers.ScalametaTokenizer.emitContents$1(ScalametaTokenizer.scala:222)
	at scala.meta.internal.tokenizers.ScalametaTokenizer.loop$1(ScalametaTokenizer.scala:231)
	at scala.meta.internal.tokenizers.ScalametaTokenizer.uncachedTokenize(ScalametaTokenizer.scala:276)
	at scala.meta.internal.tokenizers.ScalametaTokenizer.tokenize(ScalametaTokenizer.scala:31)
	at scala.meta.internal.tokenizers.ScalametaTokenizer$$anon$2.apply(ScalametaTokenizer.scala:287)
	at scala.meta.tokenizers.Api$XtensionTokenizeDialectInput.tokenize(Api.scala:21)
	at scala.meta.tokenizers.Api$XtensionTokenizeInputLike.tokenize(Api.scala:10)
	at scala.meta.internal.parsers.ScalametaParser.scannerTokens$lzycompute(ScalametaParser.scala:183)
	at scala.meta.internal.parsers.ScalametaParser.scannerTokens(ScalametaParser.scala:183)
	at scala.meta.internal.parsers.ScalametaParser.<init>(ScalametaParser.scala:140)
	at scala.meta.internal.parsers.ScalametaParser$$anon$189.apply(ScalametaParser.scala:3465)
	at scala.meta.parsers.Api$XtensionParseDialectInput.parse(Api.scala:21)
	at scala.meta.parsers.Api$XtensionParseInputLike.parse(Api.scala:10)
	at co.pjrt.stags.TagGenerator$.generateTagsForFile(TagGenerator.scala:15)
	at co.pjrt.stags.cli.Cli$.$anonfun$run$3(Cli.scala:33)
	at scala.collection.TraversableLike.$anonfun$flatMap$1(TraversableLike.scala:241)
	at scala.collection.immutable.List.foreach(List.scala:389)
	at scala.collection.TraversableLike.flatMap(TraversableLike.scala:241)
	at scala.collection.TraversableLike.flatMap$(TraversableLike.scala:238)
	at scala.collection.immutable.List.flatMap(List.scala:352)
	at co.pjrt.stags.cli.Cli$.run(Cli.scala:30)
	at co.pjrt.stags.cli.Cli$.run_(Cli.scala:14)
	at co.pjrt.stags.cli.Main$.$anonfun$mainWithCwd$2(Main.scala:24)
	at co.pjrt.stags.cli.Main$.$anonfun$mainWithCwd$2$adapted(Main.scala:24)
	at scala.Option.fold(Option.scala:158)
	at co.pjrt.stags.cli.Main$.mainWithCwd(Main.scala:24)
	at co.pjrt.stags.cli.Main$.main(Main.scala:18)
	at co.pjrt.stags.cli.Main.main(Main.scala)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at coursier.Bootstrap.main(Bootstrap.java:430)
@attilapiros
Copy link
Author

scalameta/scalameta#1177

@pjrt pjrt added the scalameta Issue related to with Scala meta label Jun 30, 2018
@pjrt
Copy link
Owner

pjrt commented Jun 30, 2018

Thanks for the report. I'll keep an eye on the Scalameta PR. Though there is an issue here in that Stags probably shouldn't fail completely if a single file failed to parse.

@olafurpg
Copy link

A fix for this has been merged in scalameta scalameta/scalameta#1685 thanks to a PR from @hugo-vrijswijk

@pjrt
Copy link
Owner

pjrt commented Jul 10, 2018

Awesome, thanks! Once the new version is released we can just upgrade.

pjrt added a commit that referenced this issue Aug 3, 2018
Does not fix the issue in #16, but now it won't just crash over it.
Also remove unused functions in TagGenerator.
@pjrt
Copy link
Owner

pjrt commented Aug 3, 2018

@attilapiros I've pushed 0.4.2 to sonatype (will be in maven in a bit). That patch does not fix the issue you described but it does allow stags to keep working and just ignore that file. Tested against spark HEAD.

Once the next stable version of scalameta comes out (with the actual fix) we can upgrade.

@pjrt pjrt closed this as completed Aug 3, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scalameta Issue related to with Scala meta
Projects
None yet
Development

No branches or pull requests

3 participants