I am getting the warning message 'The for, if and spread elements were not supported until version 2.2.2, but this code is required to be able to run on earlier versions' but the code

Column(   crossAxisAlignment: CrossAxisAlignment.start,
            children: <Widget>[
              if (document['propertyid'] == '1') Text('jjj'),
              GestureDetector(
                onTap: () {
                  Navigator.push(
                      context,
                      MaterialPageRoute(
                          builder: (context) =>
                              PropertyDetails(document['propertyid'])));
                },
                child: Text(document['propertyname'],
                    style: TextStyle(
                        color: Colors.blue,
                        fontStyle: FontStyle.italic,
                        fontWeight: FontWeight
                            .w500) //Theme.of(context).textTheme.title,
                    ),
              ),
            ],
  ),

works as expected. The minSDKVersion etc is 28. Why does it think I want to be able to run this code on any earlier version? What do I need to change to a later version?


Solution 1: flarkmarup

In pubspec.yaml you can update your environment sdk to get rid of those warnings:

environment:
  sdk: ">=2.3.0 <3.0.0"


Solution 2: Saif Hakeem

Changing the SDK to ">=2.3.0 <3.0.0"resulted in another issue.

enter image description here

However ">=2.2.2 <3.0.0" works like a charm!


Solution 3: CopsOnRoad

Press option + return on the warning and select Update the SDK constraints

enter image description here