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

Not all ui-options supported by UiOptions #119

Closed
smolck opened this issue Feb 7, 2021 · 6 comments · Fixed by #120
Closed

Not all ui-options supported by UiOptions #119

smolck opened this issue Feb 7, 2021 · 6 comments · Fixed by #120
Assignees
Labels
bug Something isn't working

Comments

@smolck
Copy link

smolck commented Feb 7, 2021

Describe the bug
Not all options to nvim_ui_attach are supported by UiOptions. Specifically, the ones that appear to be missing are the following:

  • override
  • ext_linegrid
  • ext_hlstate
  • ext_multigrid
  • ext_termcolors
  • ext_messages

See :help ui-option in Neovim.

Expected behavior
All the options above should ideally be supported by UiOptions.

@smolck smolck added the bug Something isn't working label Feb 7, 2021
esensar added a commit that referenced this issue Feb 7, 2021
esensar added a commit that referenced this issue Feb 7, 2021
* Add missing UiOptions

This closes #119

* Fix checkstyle issues
@esensar
Copy link
Owner

esensar commented Feb 7, 2021

Thank you for reporting this issue!

Fix released in version 0.2.2.

@smolck
Copy link
Author

smolck commented Feb 7, 2021

Wow, thank you for the quick fix!

@smolck
Copy link
Author

smolck commented Feb 7, 2021

@esensar Hmm, so just trying this out, and I'm getting/I got this strange error (after setting up a subscriber to handle ui events, and then attaching the UI with UiOptions.FULL_UI):

java.lang.IllegalArgumentException: Cannot deserialize instance of `com.ensarsarajcic.neovim.java.notifications.ui.grid.linegrid.CellData` out of START_ARRAY token
 at [Source: UNKNOWN; line: -1, column: -1] (through reference chain: java.util.ArrayList[0])
	at com.fasterxml.jackson.databind.ObjectMapper._convert(ObjectMapper.java:3751)
	at com.fasterxml.jackson.databind.ObjectMapper.convertValue(ObjectMapper.java:3669)
	at com.ensarsarajcic.neovim.java.notifications.NotificationCreatorCollector.lambda$createUiEventCreators$0(NotificationCreatorCollector.java:72)
	at com.ensarsarajcic.neovim.java.notifications.NeovimStreamNotificationHandler.lambda$eventFromRawData$4(NeovimStreamNotificationHandler.java:128)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
	at java.base/java.util.ArrayList$SubList$2.forEachRemaining(ArrayList.java:1481)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
	at com.ensarsarajcic.neovim.java.notifications.NeovimStreamNotificationHandler.eventFromRawData(NeovimStreamNotificationHandler.java:134)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
	at com.ensarsarajcic.neovim.java.notifications.NeovimStreamNotificationHandler.lambda$uiEvents$1(NeovimStreamNotificationHandler.java:94)
	at com.ensarsarajcic.neovim.java.notifications.MappingProcessor.onNext(MappingProcessor.java:55)
	at java.base/java.util.concurrent.SubmissionPublisher$BufferedSubscription.consumeNext(SubmissionPublisher.java:1307)
	at java.base/java.util.concurrent.SubmissionPublisher$BufferedSubscription.takeItems(SubmissionPublisher.java:1296)
	at java.base/java.util.concurrent.SubmissionPublisher$BufferedSubscription.consume(SubmissionPublisher.java:1253)
	at java.base/java.util.concurrent.SubmissionPublisher$ConsumerTask.exec(SubmissionPublisher.java:930)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1016)
	at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1665)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1598)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of `com.ensarsarajcic.neovim.java.notifications.ui.grid.linegrid.CellData` out of START_ARRAY token
 at [Source: UNKNOWN; line: -1, column: -1] (through reference chain: java.util.ArrayList[0])
	at com.fasterxml.jackson.databind.exc.MismatchedInputException.from(MismatchedInputException.java:63)
	at com.fasterxml.jackson.databind.DeserializationContext.reportInputMismatch(DeserializationContext.java:1343)
	at com.fasterxml.jackson.databind.DeserializationContext.handleUnexpectedToken(DeserializationContext.java:1139)
	at com.fasterxml.jackson.databind.DeserializationContext.handleUnexpectedToken(DeserializationContext.java:1093)
	at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromArray(BeanDeserializerBase.java:1461)
Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of `com.ensarsarajcic.neovim.java.notifications.ui.grid.linegrid.CellData` out of START_ARRAY token

	at com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeOther(BeanDeserializer.java:185)
	at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:161)
	at com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:286)
	at com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:245)
	at com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:27)
	at com.fasterxml.jackson.databind.deser.SettableBeanProperty.deserialize(SettableBeanProperty.java:530)
	at com.fasterxml.jackson.databind.deser.impl.BeanAsArrayDeserializer._deserializeUsingPropertyBased(BeanAsArrayDeserializer.java:313)
	at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1287)
	at com.fasterxml.jackson.databind.deser.impl.BeanAsArrayDeserializer._deserializeNonVanilla(BeanAsArrayDeserializer.java:218)
	at com.fasterxml.jackson.databind.deser.impl.BeanAsArrayDeserializer.deserialize(BeanAsArrayDeserializer.java:100)
	at com.fasterxml.jackson.databind.ObjectMapper._convert(ObjectMapper.java:3746)
	... 29 more

Any idea what's causing that? Should I open another issue? Also, let me know if you need more information.

@esensar
Copy link
Owner

esensar commented Feb 7, 2021

I found the issue, but fixing it just uncovered more issues 😄
I am working of fixes, but I am not sure when it will be done.

@smolck
Copy link
Author

smolck commented Feb 7, 2021

Okay, no worries! Thank you for the help!

@esensar
Copy link
Owner

esensar commented Feb 7, 2021

It seems to be working now. Fix should be available in 0.2.3. Thank you very much for reporting these issues. Let me know if you run into any other issues along the way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants