title: The body might complete normally, causing 'null' to be returned, but the return type is a potentially non-nullable type
body: <p>I'm using new dart version &gt;=2.12.0 &lt;3.0.0 with null safety enabled.</p>
  <p>I have added my code for reference.</p>
  <h2>MatchesService</h2>
  <pre><code>import 'package:cric_app/AppUrls.dart';
  import 'package:cric_app/features/home/match_model.dart';
  import 'package:dio/dio.dart';
  import 'package:rxdart/rxdart.dart';
  
  class MatchesService {
    // ignore: close_sinks
    BehaviorSubject&lt;List&lt;MatchModel&gt;&gt; list = BehaviorSubject&lt;List&lt;MatchModel&gt;&gt;();
  
    Future&lt;List&lt;MatchModel&gt;&gt; getMatches() async {
      try {
        var matchList = await fetchMatches();
        list.add(matchList);
        return matchList;
      } catch (Exc) {
        print(Exc);
      }
    }
  
    Future&lt;List&lt;MatchModel&gt;&gt; fetchMatches() async {
      var dio = Dio();
      final response = await dio.post(AppUrls.getMatches);
      print(response.data);
      final body = response.data['matches'] as List;
      return body.map((dynamic json) {
        return MatchModel(
          id: json['id'] as int,
          date: json['date'] as String,
          dateGmt: json['dateTimeGMT'] as String,
          teamOne: json['team-1'] as String,
          teamTwo: json['team-2'] as String,
          tossWinnerTeam: json['toss_winner_team'] as String,
          matchStarted: json['matchStarted'] as bool,
          type: json['type'] as String,
          winnerTeam: json['winner_team'] as String,
        );
      }).toList();
    }
  }
  </code></pre>
  <h2>HomeScreen</h2>
  <pre><code>import 'package:cric_app/components/match_card.dart';
  import 'package:cric_app/features/home/match_model.dart';
  import 'package:cric_app/features/home/matches_service.dart';
  import 'package:cric_app/utils.dart';
  import 'package:flutter/material.dart';
  
  class HomeScreen extends StatefulWidget {
    @override
    _HomeScreenState createState() =&gt; _HomeScreenState();
  }
  
  class _HomeScreenState extends State&lt;HomeScreen&gt; {
    MatchesService matchesService = MatchesService();
  
    @override
    void initState() {
      matchesService.getMatches();
      super.initState();
    }
  
    @override
    Widget build(BuildContext context) {
      return Scaffold(
        backgroundColor: primary_color,
        body: SingleChildScrollView(
          child: Container(
            margin: setMargin(15, 0, 15, 0),
            child: Column(
              crossAxisAlignment: CrossAxisAlignment.start,
              children: [
                SizedBox(
                  height: 30,
                ),
                text('Matches', Colors.white, FontWeight.bold, 23),
                SizedBox(
                  height: 2,
                ),
                text(&quot;Today's live matches&quot;, Colors.white, FontWeight.bold, 18),
                StreamBuilder&lt;List&lt;MatchModel&gt;&gt;(
                  stream: matchesService.list,
                  initialData: null,
                  builder: (context, snapshot) {
                    if (snapshot.data != null) {
                      final list = snapshot.data as List;
                      return ListView.builder(
                        itemCount: list.length,
                        itemBuilder: (BuildContext context, int index) {
                          return matchCard(context, list[index]);
                        },
                      );
                    } else {
                      return Center(
                        child: text(
                          'No live matches now',
                          Colors.white,
                          FontWeight.bold,
                          16,
                        ),
                      );
                    }
                  },
                ),
                SizedBox(
                  height: 10,
                ),
              ],
            ),
          ),
        ),
      );
    }
  }
  </code></pre>
  <p><strong>I get this error : The body might complete normally, causing 'null' to be returned, but the return type is a potentially non-nullable type.
  Try adding either a return or a throw statement at the end.</strong></p>