flutter-form-builder-ecosystem / flutter_form_builder

Simple form maker for Flutter Framework
https://pub.dev/packages/flutter_form_builder
MIT License
1.48k stars 535 forks source link

flutter_typeahead causes build to break after upgrading flutter to version 1.20 #408

Closed Shiba-Kar closed 2 years ago

Shiba-Kar commented 4 years ago

Unsupported operation: serialization of generic DartType: UnknownType(?) (UnknownType)
#0      BinaryPrinter.defaultDartType  (package:kernel/binary/ast_to_binary.dart:2231:5)

#1      UnknownType.accept  (package:front_end/src/fasta/type_inference/type_schema.dart:82:14)
#2      BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#3      BinaryPrinter.writeNodeList  (package:kernel/binary/ast_to_binary.dart:292:7)
#4      BinaryPrinter.visitInterfaceType  (package:kernel/binary/ast_to_binary.dart:2069:7)
#5      InterfaceType.accept  (package:kernel/ast.dart:7504:42)
#6      BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#7      BinaryPrinter.visitFutureOrType  (package:kernel/binary/ast_to_binary.dart:2090:5)

#8      FutureOrType.accept  (package:kernel/ast.dart:7903:42)
#9      BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#10     BinaryPrinter.visitAsExpression  (package:kernel/binary/ast_to_binary.dart:1616:5)
#11     AsExpression.accept  (package:kernel/ast.dart:4913:44)

#12     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#13     BinaryPrinter.visitVariableSet  (package:kernel/binary/ast_to_binary.dart:1368:7)
#14     VariableSet.accept  (package:kernel/ast.dart:3144:44)
#15     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#16     BinaryPrinter.visitExpressionStatement  (package:kernel/binary/ast_to_binary.dart:1795:5)
#17     ExpressionStatement.accept  (package:kernel/ast.dart:5784:43)

#18     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#19     BinaryPrinter.writeNodeList  (package:kernel/binary/ast_to_binary.dart:292:7)
#20     BinaryPrinter.visitBlock  (package:kernel/binary/ast_to_binary.dart:1803:5)
#21     Block.accept  (package:kernel/ast.dart:5823:43)

#22     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#23     BinaryPrinter.visitIfStatement  (package:kernel/binary/ast_to_binary.dart:1936:5)
#24     IfStatement.accept  (package:kernel/ast.dart:6441:43)
#25     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#26     BinaryPrinter.writeNodeList  (package:kernel/binary/ast_to_binary.dart:292:7)
#27     BinaryPrinter.visitBlock  (package:kernel/binary/ast_to_binary.dart:1803:5)

#28     Block.accept  (package:kernel/ast.dart:5823:43)
#29     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#30     BinaryPrinter.visitLabeledStatement  (package:kernel/binary/ast_to_binary.dart:1837:5)
#31     LabeledStatement.accept  (package:kernel/ast.dart:5984:43)

#32     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#33     BinaryPrinter.writeNodeList  (package:kernel/binary/ast_to_binary.dart:292:7)
#34     BinaryPrinter.visitBlock  (package:kernel/binary/ast_to_binary.dart:1803:5)
#35     Block.accept  (package:kernel/ast.dart:5823:43)
#36     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#37     BinaryPrinter.visitTryCatch  (package:kernel/binary/ast_to_binary.dart:1954:5)
#38     TryCatch.accept  (package:kernel/ast.dart:6532:43)
#39     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#40     BinaryPrinter.writeOptionalNode  (package:kernel/binary/ast_to_binary.dart:475:7)
#41     BinaryPrinter.visitFunctionNode  (package:kernel/binary/ast_to_binary.dart:1327:5)
#42     FunctionNode.accept  (package:kernel/ast.dart:2909:38)
#43     BinaryPrinter.writeFunctionNode  (package:kernel/binary/ast_to_binary.dart:389:10)

#44     BinaryPrinter.visitFunctionDeclaration  (package:kernel/binary/ast_to_binary.dart:2030:5)
#45     FunctionDeclaration.accept  (package:kernel/ast.dart:6988:43)
#46     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#47     BinaryPrinter.writeNodeList  (package:kernel/binary/ast_to_binary.dart:292:7)
#48     BinaryPrinter.visitBlock  (package:kernel/binary/ast_to_binary.dart:1803:5)
#49     Block.accept  (package:kernel/ast.dart:5823:43)

#50     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#51     BinaryPrinter.writeOptionalNode  (package:kernel/binary/ast_to_binary.dart:475:7)
#52     BinaryPrinter.visitFunctionNode  (package:kernel/binary/ast_to_binary.dart:1327:5)
#53     FunctionNode.accept  (package:kernel/ast.dart:2909:38)
#54     BinaryPrinter.writeFunctionNode  (package:kernel/binary/ast_to_binary.dart:389:10)
#55     BinaryPrinter.visitFunctionExpression  (package:kernel/binary/ast_to_binary.dart:1742:5)
#56     FunctionExpression.accept  (package:kernel/ast.dart:5535:44)
#57     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#58     BinaryPrinter.visitNamedExpression  (package:kernel/binary/ast_to_binary.dart:1503:5)
#59     NamedExpression.accept  (package:kernel/ast.dart:3813:38)
#60     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#61     BinaryPrinter.writeNodeList  (package:kernel/binary/ast_to_binary.dart:292:7)

#62     BinaryPrinter.visitArguments  (package:kernel/binary/ast_to_binary.dart:1497:5)
#63     Arguments.accept  (package:kernel/ast.dart:3753:38)
#64     BinaryPrinter.writeArgumentsNode  (package:kernel/binary/ast_to_binary.dart:396:10)
#65     BinaryPrinter.visitConstructorInvocation  (package:kernel/binary/ast_to_binary.dart:1489:5)
#66     ConstructorInvocation.accept  (package:kernel/ast.dart:4154:44)
#67     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#68     BinaryPrinter.writeNodeList  (package:kernel/binary/ast_to_binary.dart:292:7)
#69     BinaryPrinter.visitListLiteral  (package:kernel/binary/ast_to_binary.dart:1705:5)
#70     ListLiteral.accept  (package:kernel/ast.dart:5292:44)
#71     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#72     BinaryPrinter.visitNamedExpression  (package:kernel/binary/ast_to_binary.dart:1503:5)
#73     NamedExpression.accept  (package:kernel/ast.dart:3813:38)
#74     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#75     BinaryPrinter.writeNodeList  (package:kernel/binary/ast_to_binary.dart:292:7)
#76     BinaryPrinter.visitArguments  (package:kernel/binary/ast_to_binary.dart:1497:5)
#77     Arguments.accept  (package:kernel/ast.dart:3753:38)
#78     BinaryPrinter.writeArgumentsNode  (package:kernel/binary/ast_to_binary.dart:396:10)
#79     BinaryPrinter.visitConstructorInvocation  (package:kernel/binary/ast_to_binary.dart:1489:5)
#80     ConstructorInvocation.accept  (package:kernel/ast.dart:4154:44)
#81     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#82     BinaryPrinter.writeOptionalNode  (package:kernel/binary/ast_to_binary.dart:475:7)
#83     BinaryPrinter.visitReturnStatement  (package:kernel/binary/ast_to_binary.dart:1944:5)
#84     ReturnStatement.accept  (package:kernel/ast.dart:6491:43)
#85     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)
#86     BinaryPrinter.writeNodeList  (package:kernel/binary/ast_to_binary.dart:292:7)
#87     BinaryPrinter.visitBlock  (package:kernel/binary/ast_to_binary.dart:1803:5)
#88     Block.accept  (package:kernel/ast.dart:5823:43)
#89     BinaryPrinter.writeNode  (package:kernel/binary/ast_to_binary.dart:382:10)

#90     BinaryPrinter.writeOptionalNode  (package:kernel/binary/ast_to_binary.dart:475:7)
#91     BinaryPrinter.visitFunctionNode  (package:kernel/binary/ast_to_binary.dart:1327:5)
#92     FunctionNode.accept  (package:kernel/ast.dart:2909:38)
#93     BinaryPrinter.writeFunctionNode  (package:kernel/binary/ast_to_binary.dart:389:10)
#94     BinaryPrinter.writeOptionalFunctionNode  (package:kernel/binary/ast_to_binary.dart:484:7)
#95     BinaryPrinter.visitProcedure  (package:kernel/binary/ast_to_binary.dart:1203:5)
#96     Procedure.accept  (package:kernel/ast.dart:2400:40)
#97     BinaryPrinter.writeProcedureNode  (package:kernel/binary/ast_to_binary.dart:410:10)
#98     BinaryPrinter.writeProcedureNodeList  (package:kernel/binary/ast_to_binary.dart:301:7)
#99     BinaryPrinter.visitClass  (package:kernel/binary/ast_to_binary.dart:1131:5)
#100    Class.accept  (package:kernel/ast.dart:1379:38)
#101    BinaryPrinter.writeClassNode  (package:kernel/binary/ast_to_binary.dart:424:10)

#102    BinaryPrinter.writeClassNodeList  (package:kernel/binary/ast_to_binary.dart:319:7)
#103    BinaryPrinter.visitLibrary  (package:kernel/binary/ast_to_binary.dart:961:5)
#104    Library.accept  (package:kernel/ast.dart:607:38)
#105    BinaryPrinter.writeLibraryNode  (package:kernel/binary/ast_to_binary.dart:403:10)
#106    BinaryPrinter.writeLibraries  (package:kernel/binary/ast_to_binary.dart:710:9)
#107    BinaryPrinter.writeComponentFile.<anonymous closure>  (package:kernel/binary/ast_to_binary.dart:553:7)
#108    Timeline.timeSync  (dart:developer/timeline.dart:163:22)
#109    BinaryPrinter.writeComponentFile  (package:kernel/binary/ast_to_binary.dart:536:14)
#110    IncrementalSerializer.serialize  (package:front_end/src/fasta/incremental_serializer.dart:308:13)
#111    IncrementalSerializer.writePackagesToSinkAndTrimComponent  (package:front_end/src/fasta/incremental_serializer.dart:159:24)
#112    FrontendCompiler.writeDillFile  (package:frontend_server/frontend_server.dart:747:31)
#113    FrontendCompiler.compile  (package:frontend_server/frontend_server.dart:564:13)
<asynchronous suspension>
#114    _FlutterFrontendCompiler.compile  (package:flutter_frontend_server/server.dart:43:22)
#115    listenAndCompile.<anonymous closure>  (package:frontend_server/frontend_server.dart:1201:26)
#116    _RootZone.runUnaryGuarded  (dart:async/zone.dart:1384:10)

#117    _BufferingStreamSubscription._sendData  (dart:async/stream_impl.dart:357:11)
#118    _BufferingStreamSubscription._add  (dart:async/stream_impl.dart:285:7)
#119    _SinkTransformerStreamSubscription._add  (dart:async/stream_transformers.dart:69:11)
#120    _EventSinkWrapper.add  (dart:async/stream_transformers.dart:15:11)
#121    _StringAdapterSink.add  (dart:convert/string_conversion.dart:238:11)
#122    _LineSplitterSink._addLines  (dart:convert/line_splitter.dart:155:13)
#123    _LineSplitterSink.addSlice  (dart:convert/line_splitter.dart:130:5)
#124    StringConversionSinkMixin.add  (dart:convert/string_conversion.dart:163:5)
#125    _SinkTransformerStreamSubscription._handleData  (dart:async/stream_transformers.dart:121:24)
#126    _RootZone.runUnaryGuarded  (dart:async/zone.dart:1384:10)
#127    _BufferingStreamSubscription._sendData  (dart:async/stream_impl.dart:357:11)
#128    _BufferingStreamSubscription._add  (dart:async/stream_impl.dart:285:7)
#129    _SinkTransformerStreamSubscription._add  (dart:async/stream_transformers.dart:69:11)
#130    _EventSinkWrapper.add  (dart:async/stream_transformers.dart:15:11)

#131    _StringAdapterSink.add  (dart:convert/string_conversion.dart:238:11)
#132    _StringAdapterSink.addSlice  (dart:convert/string_conversion.dart:243:7)
#133    _Utf8ConversionSink.addSlice  (dart:convert/string_conversion.dart:317:20)
#134    _Utf8ConversionSink.add  (dart:convert/string_conversion.dart:310:5)
#135    _ConverterStreamEventSink.add  (dart:convert/chunked_conversion.dart:72:18)
#136    _SinkTransformerStreamSubscription._handleData  (dart:async/stream_transformers.dart:121:24)
#137    _RootZone.runUnaryGuarded  (dart:async/zone.dart:1384:10)
#138    _BufferingStreamSubscription._sendData  (dart:async/stream_impl.dart:357:11)
#139    _BufferingStreamSubscription._add  (dart:async/stream_impl.dart:285:7)
#140    _SyncStreamControllerDispatch._sendData  (dart:async/stream_controller.dart:808:19)
#141    _StreamController._add  (dart:async/stream_controller.dart:682:7)
#142    _StreamController.add  (dart:async/stream_controller.dart:624:5)
#143    _Socket._onData  (dart:io-patch/socket_patch.dart:2020:41)
#144    _RootZone.runUnaryGuarded  (dart:async/zone.dart:1384:10)
#145    _BufferingStreamSubscription._sendData  (dart:async/stream_impl.dart:357:11)
#146    _BufferingStreamSubscription._add  (dart:async/stream_impl.dart:285:7)

#147    _SyncStreamControllerDispatch._sendData  (dart:async/stream_controller.dart:808:19)
#148    _StreamController._add  (dart:async/stream_controller.dart:682:7)
#149    _StreamController.add  (dart:async/stream_controller.dart:624:5)
#150    new _RawSocket.<anonymous closure>  (dart:io-patch/socket_patch.dart:1556:33)
#151    _NativeSocket.issueReadEvent.issue  (dart:io-patch/socket_patch.dart:1052:14)
#152    _microtaskLoop  (dart:async/schedule_microtask.dart:41:21)
#153    _startMicrotaskLoop  (dart:async/schedule_microtask.dart:50:5)
#154    _runPendingImmediateCallback  (dart:isolate-patch/isolate_patch.dart:118:13)
#155    _RawReceivePortImpl._handleMessage  (dart:isolate-patch/isolate_patch.dart:169:5)

the Dart compiler exited unexpectedly.
the Dart compiler exited unexpectedly.
Exited (1) ```
danvick commented 4 years ago

I've been unable to reproduce this bug.

I can't see from the stack trace provided that the error is originating from flutter_typeahead. If you are sure this problem is caused by the package, kindly file an issue on the package repo

Can you kindly show your flutter doctor result

contactjavas commented 4 years ago

Hi @danvick , im using Dart 2.9.3 and Flutter 1.20.1 on Windows 10.

I can use TypeAheadField or TypeAheadFormField directly using flutter_typeahead package. But my other fields are using this flutter_form_builder package. That means, i'ts better to use FormBuilderTypeAhead by this package instead using flutter_typeahead directly.

The problem is, I'm not able to use FormBuilderTypeAhead even for a simple use. I've tried this example (of course adjusted to my need) and it didn't work. Then i tried even for a very simple, it's still not working. I tried to hot restart, also still not working.

However, thanks a lot for creating & maintaining the plugin :)

Here is the debug messages:


════════ Exception caught by widgets library ═══════════════════════════════════
The following assertion was thrown building RespondentPicker(dirty, dependencies: [MediaQuery, _InheritedTheme, _LocalizationsScope-[GlobalKey#c0e5b]], state: _RespondentPickerState#2520c):
'package:flutter_form_builder/src/fields/form_builder_typeahead.dart': Failed assertion: line 80 pos 16: 'T == String || selectionToTextTransformer != null': is not true.

The relevant error-causing widget was
    RespondentPicker 
lib\…\survey\survey_detail_screen.dart:146
When the exception was thrown, this was the stack
#2      new FormBuilderTypeAhead 
package:flutter_form_builder/…/fields/form_builder_typeahead.dart:80
#3      _RespondentPickerState.build 
package:survey/…/respondent/respondent_picker.dart:62
#4      StatefulElement.build 
package:flutter/…/widgets/framework.dart:4663
#5      ComponentElement.performRebuild 
package:flutter/…/widgets/framework.dart:4546
#6      StatefulElement.performRebuild 
package:flutter/…/widgets/framework.dart:4719
...
════════════════════════════════════════════════════════════════════════════════
══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
The following assertion was thrown building RespondentPicker(dirty, dependencies: [MediaQuery,
_InheritedTheme, _LocalizationsScope-[GlobalKey#c0e5b]], state: _RespondentPickerState#2520c):
'package:flutter_form_builder/src/fields/form_builder_typeahead.dart': Failed assertion: line 80 pos
16: 'T == String || selectionToTextTransformer != null': is not true.
The relevant error-causing widget was:
  RespondentPicker 
lib\…\survey\survey_detail_screen.dart:146
When the exception was thrown, this was the stack:
#2      new FormBuilderTypeAhead 
package:flutter_form_builder/…/fields/form_builder_typeahead.dart:80
#3      _RespondentPickerState.build 
package:survey/…/respondent/respondent_picker.dart:62
#4      StatefulElement.build 
package:flutter/…/widgets/framework.dart:4663
#5      ComponentElement.performRebuild 
package:flutter/…/widgets/framework.dart:4546
#6      StatefulElement.performRebuild 
package:flutter/…/widgets/framework.dart:4719
#7      Element.rebuild 
package:flutter/…/widgets/framework.dart:4262
#8      ComponentElement._firstBuild 
package:flutter/…/widgets/framework.dart:4525
#9      StatefulElement._firstBuild 
package:flutter/…/widgets/framework.dart:4710
#10     ComponentElement.mount 
package:flutter/…/widgets/framework.dart:4520
...     Normal element mounting (33 frames)
#43     Element.inflateWidget 
package:flutter/…/widgets/framework.dart:3490
#44     Element.updateChild 
package:flutter/…/widgets/framework.dart:3258
#45     SliverMultiBoxAdaptorElement.updateChild 
package:flutter/…/widgets/sliver.dart:1164
#46     SliverMultiBoxAdaptorElement.createChild.<anonymous closure> 
package:flutter/…/widgets/sliver.dart:1149
#47     BuildOwner.buildScope 
package:flutter/…/widgets/framework.dart:2620
#48     SliverMultiBoxAdaptorElement.createChild 
package:flutter/…/widgets/sliver.dart:1142
#49     RenderSliverMultiBoxAdaptor._createOrObtainChild.<anonymous closure> 
package:flutter/…/rendering/sliver_multi_box_adaptor.dart:356
#50     RenderObject.invokeLayoutCallback.<anonymous closure> 
package:flutter/…/rendering/object.dart:1868
#51     PipelineOwner._enableMutationsToDirtySubtrees 
package:flutter/…/rendering/object.dart:920
#52     RenderObject.invokeLayoutCallback 
package:flutter/…/rendering/object.dart:1868
deandreamatias commented 2 years ago

This still a issue?

deandreamatias commented 2 years ago

Due to lack of response and an old error, I will close this issue. If the bug still exists, feel free to open a new issue