Skip to content

Commit 1ae0808

Browse files
authoredOct 16, 2023
feat: Add support for Flutter 3.10 and 3.13, remove support for Flutter 3.0 (#971)
1 parent dc7e3d6 commit 1ae0808

File tree

7 files changed

+82
-79
lines changed

7 files changed

+82
-79
lines changed
 

‎.github/workflows/ci.yml

+13-17
Original file line numberDiff line numberDiff line change
@@ -77,31 +77,31 @@ jobs:
7777
matrix:
7878
include:
7979
# Flutter framework may contain breaking changes in minor version releases, not following semver.
80-
- name: Flutter 3.10, Ubuntu
80+
- name: Flutter 3.13, Ubuntu
8181
os: ubuntu-latest
82-
sdk: 3.10.x
83-
- name: Flutter 3.10, macOS
82+
sdk: 3.13.6
83+
- name: Flutter 3.13, macOS
8484
os: macos-latest
85-
sdk: 3.10.x
86-
- name: Flutter 3.10, Windows
85+
sdk: 3.13.6
86+
- name: Flutter 3.13, Windows
8787
os: windows-latest
88-
sdk: 3.10.x
88+
sdk: 3.13.6
8989
# Only the latest Flutter framework version (above) is tested with all architectures. Previous
9090
# Flutter framework versions (below) are only tested with Ubuntu to reduce CI resource usage.
91-
- name: Flutter 3.7
91+
- name: Flutter 3.10
9292
os: ubuntu-latest
93-
sdk: 3.7.x
94-
- name: Flutter 3.3
93+
sdk: 3.10.6
94+
- name: Flutter 3.7
9595
os: ubuntu-latest
96-
sdk: 3.3.x
96+
sdk: 3.7.12
9797
- name: Flutter beta
9898
os: ubuntu-latest
9999
sdk: beta
100100
fail-fast: false
101101
name: Test ${{ matrix.name }}
102102
steps:
103103
- name: Checkout code
104-
uses: actions/checkout@v3
104+
uses: actions/checkout@v4
105105
- name: Setup flutter (beta)
106106
if: ${{ matrix.sdk == 'beta' }}
107107
uses: subosito/flutter-action@v2
@@ -116,14 +116,10 @@ jobs:
116116
cache: true
117117
- name: Install dependencies on Ubuntu and MacOS
118118
if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
119-
run: |
120-
(cd packages/dart && flutter pub get)
121-
(cd packages/flutter && flutter pub get)
119+
run: (cd packages/flutter && flutter pub get)
122120
- name: Install dependencies on Windows
123121
if: matrix.os == 'windows-latest'
124-
run: |
125-
cmd /c "cd packages\dart && flutter pub get"
126-
cmd /c "cd packages\flutter && flutter pub get"
122+
run: cmd /c "cd packages\flutter && flutter pub get"
127123
- name: Analyze code
128124
run: flutter analyze packages/flutter --fatal-infos
129125
- name: Lint

‎packages/flutter/CHANGELOG.md

+10
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
## [7.0.0](https://github.com/parse-community/Parse-SDK-Flutter/compare/flutter-6.0.0...flutter-7.0.0) (2023-10-16)
2+
3+
### BREAKING CHANGES
4+
5+
* This release removes support for Flutter 3.0 ([#971](https://github.com/parse-community/Parse-SDK-Flutter/pull/971))
6+
7+
### Features
8+
9+
* Add support for Flutter 3.10 and 3.13, remove support for Flutter 3.0 ([#971](https://github.com/parse-community/Parse-SDK-Flutter/pull/971))
10+
111
## [6.0.0](https://github.com/parse-community/Parse-SDK-Flutter/compare/flutter-5.1.2...flutter-6.0.0) (2023-08-06)
212

313
### BREAKING CHANGES

‎packages/flutter/README.md

+9-9
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
[![Build Status](https://github.com/parse-community/Parse-SDK-Flutter/workflows/ci/badge.svg?branch=master)](https://github.com/parse-community/Parse-SDK-Flutter/actions?query=workflow%3Aci+branch%3Amaster)
66
[![Coverage](https://img.shields.io/codecov/c/github/parse-community/Parse-SDK-Flutter/master)](https://app.codecov.io/gh/parse-community/Parse-SDK-Flutter/branch/master)
77

8-
[![pub package](https://img.shields.io/pub/v/parse_server_sdk_flutter.svg)](https://pub.dev/packages/parse_server_sdk_flutter)
8+
[![pub package](https://img.shields.io/pub/v/parse_server_sdk_flutter.svg)](https://pub.dev/packages/parse_server_sdk_flutter)
99

1010
[![Forum](https://img.shields.io/discourse/https/community.parseplatform.org/topics.svg)](https://community.parseplatform.org/c/parse-server)
1111
[![Backers on Open Collective](https://opencollective.com/parse-server/backers/badge.svg)][open-collective-link]
@@ -28,14 +28,14 @@ This library gives you access to the powerful Parse Server backend from your Flu
2828

2929
## Compatibility
3030

31-
The Parse Flutter SDK is continuously tested with the most recent release of the Flutter framework to ensure compatibility. To give developers time to upgrade their app to the newest Flutter framework, previous Flutter framework releases are supported for at least 1 year after their [release date](https://docs.flutter.dev/release/archive?tab=linux). The Parse Flutter SDK depends on the Parse Dart SDK which may require a higher Dart framework version than the Flutter framework version, in which case the Flutter framework version cannot be supported even though its release date may have been less than a year ago.
31+
The Parse Flutter SDK is continuously tested with the most recent release of the Flutter framework to ensure compatibility. To give developers time to upgrade their app to a newer Flutter framework, previous Flutter framework releases are supported for at least 1 year after the [release date](https://docs.flutter.dev/release/archive?tab=linux) of the next higher significant version. The Parse Flutter SDK depends on the Parse Dart SDK which may require a higher Dart framework version than the Flutter framework version, in which case the specific Flutter framework version cannot be supported.
3232

33-
| Version | End of Support | Compatible |
34-
|--------------|----------------|----------------------------------------------|
35-
| Flutter 3.10 | May 2024 | ❌ No |
36-
| Flutter 3.7 | Apr 2024 | ✅ Yes |
37-
| Flutter 3.3 | Jan 2024 | ✅ Yes |
38-
| Flutter 3.0 | Jul 2023 | ❌ No (Parse Flutter SDK requires Flutter >=3.3.0) |
33+
| Version | Latest Version | End of Support | Compatible |
34+
|--------------|----------------|----------------|------------|
35+
| Flutter 3.13 | 3.13.6 | Sep 2024 | ✅ Yes |
36+
| Flutter 3.10 | 3.10.6 | Jul 2024 | ✅ Yes |
37+
| Flutter 3.7 | 3.7.12 | Apr 2024 | ✅ Yes |
38+
| Flutter 3.3 | 3.3.10 | Dec 2024 | ✅ Yes |
3939

4040
## Getting Started
4141

@@ -50,4 +50,4 @@ Find the full documentation in the [Parse Flutter SDK guide][guide].
5050
We want to make contributing to this project as easy and transparent as possible. Please refer to the [Contribution Guidelines](https://github.com/parse-community/Parse-SDK-Flutter/blob/master/CONTRIBUTING.md).
5151

5252
[guide]: https://docs.parseplatform.org/flutter/guide/
53-
[open-collective-link]: https://opencollective.com/parse-server
53+
[open-collective-link]: https://opencollective.com/parse-server

‎packages/flutter/example/lib/pages/home_page.dart

+28-31
Original file line numberDiff line numberDiff line change
@@ -33,37 +33,34 @@ class _HomePageState extends State<HomePage> {
3333

3434
@override
3535
Widget build(BuildContext context) {
36-
return WillPopScope(
37-
onWillPop: () async => false,
38-
child: Scaffold(
39-
appBar: AppBar(
40-
automaticallyImplyLeading: false,
41-
title: const Text('Parse Server demo'),
42-
actions: <Widget>[
43-
TextButton(
44-
child: const Text('Logout',
45-
style: TextStyle(fontSize: 17.0, color: Colors.white)),
46-
onPressed: () async {
47-
final ParseUser user = await ParseUser.currentUser();
48-
user.logout(deleteLocalUserData: true);
49-
Navigator.pop(context as dynamic, true);
50-
})
51-
],
52-
),
53-
body: _showDietList(),
54-
floatingActionButton: FloatingActionButton(
55-
onPressed: () async {
56-
final DietPlan dietPlan =
57-
randomDietPlans[Random().nextInt(randomDietPlans.length - 1)];
58-
final ParseUser user = await ParseUser.currentUser();
59-
dietPlan.set('user', user);
60-
await widget._dietPlanProvider.add(dietPlan);
61-
setState(() {});
62-
},
63-
tooltip: 'Add Diet Plans',
64-
child: const Icon(Icons.add),
65-
)),
66-
);
36+
return Scaffold(
37+
appBar: AppBar(
38+
automaticallyImplyLeading: false,
39+
title: const Text('Parse Server demo'),
40+
actions: <Widget>[
41+
TextButton(
42+
child: const Text('Logout',
43+
style: TextStyle(fontSize: 17.0, color: Colors.white)),
44+
onPressed: () async {
45+
final ParseUser user = await ParseUser.currentUser();
46+
user.logout(deleteLocalUserData: true);
47+
Navigator.pop(context as dynamic, true);
48+
})
49+
],
50+
),
51+
body: _showDietList(),
52+
floatingActionButton: FloatingActionButton(
53+
onPressed: () async {
54+
final DietPlan dietPlan =
55+
randomDietPlans[Random().nextInt(randomDietPlans.length - 1)];
56+
final ParseUser user = await ParseUser.currentUser();
57+
dietPlan.set('user', user);
58+
await widget._dietPlanProvider.add(dietPlan);
59+
setState(() {});
60+
},
61+
tooltip: 'Add Diet Plans',
62+
child: const Icon(Icons.add),
63+
));
6764
}
6865

6966
Widget _showDietList() {

‎packages/flutter/example/lib/pages/login_page.dart

+11-14
Original file line numberDiff line numberDiff line change
@@ -98,20 +98,17 @@ class _LoginPageState extends State<LoginPage> {
9898

9999
@override
100100
Widget build(BuildContext context) {
101-
return WillPopScope(
102-
onWillPop: () async => false,
103-
child: Scaffold(
104-
appBar: AppBar(
105-
automaticallyImplyLeading: false,
106-
title: const Text('Parse Server demo'),
107-
),
108-
body: Stack(
109-
children: <Widget>[
110-
_showBody(),
111-
_showCircularProgress(),
112-
],
113-
)),
114-
);
101+
return Scaffold(
102+
appBar: AppBar(
103+
automaticallyImplyLeading: false,
104+
title: const Text('Parse Server demo'),
105+
),
106+
body: Stack(
107+
children: <Widget>[
108+
_showBody(),
109+
_showCircularProgress(),
110+
],
111+
));
115112
}
116113

117114
Widget _showCircularProgress() {

‎packages/flutter/example/pubspec.yaml

+7-5
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ publish_to: 'none'
55
version: 1.0.0
66

77
environment:
8-
sdk: ">=2.18.0 <4.0.0"
8+
sdk: ">=2.19.6 <4.0.0"
9+
flutter: ">=3.3.10"
910

1011
dependencies:
1112
flutter:
@@ -20,9 +21,10 @@ dependencies:
2021
sembast: ^3.4.6+1
2122
shared_preferences: ^2.2.0
2223

23-
dependency_overrides:
24-
parse_server_sdk:
25-
path: ../../dart
24+
# Uncomment for local testing
25+
# dependency_overrides:
26+
# parse_server_sdk:
27+
# path: ../../dart
2628

2729
dev_dependencies:
2830
flutter_test:
@@ -49,4 +51,4 @@ flutter:
4951
- asset: fonts/Roboto/Roboto-Bold.ttf
5052
weight: 700
5153
- asset: fonts/Roboto/Roboto-Black.ttf
52-
weight: 900
54+
weight: 900

‎packages/flutter/pubspec.yaml

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: parse_server_sdk_flutter
22
description: The Flutter SDK to connect to Parse Server. Build your apps faster with Parse Platform, the complete application stack.
3-
version: 6.0.0
3+
version: 7.0.0
44
homepage: https://parseplatform.org
55
repository: https://github.com/parse-community/Parse-SDK-Flutter
66
issue_tracker: https://github.com/parse-community/Parse-SDK-Flutter/issues
@@ -18,13 +18,14 @@ topics:
1818
- backend
1919

2020
environment:
21-
sdk: ">=2.18.0 <4.0.0"
21+
sdk: ">=2.19.6 <4.0.0"
22+
flutter: ">=3.3.10"
2223

2324
dependencies:
2425
flutter:
2526
sdk: flutter
2627

27-
parse_server_sdk: ^5.1.2
28+
parse_server_sdk: ^5.1.3
2829
# Uncomment for local testing
2930
#parse_server_sdk:
3031
# path: ../dart

0 commit comments

Comments
 (0)
Please sign in to comment.