Skip to content

Commit 98f4a26

Browse files
authored
feat: Add support for Dart 3.1, 3.2, 3.3; remove support for Dart 2.19 (#993)
BREAKING CHANGE: This release removes support for Dart 2.19.
1 parent 3849065 commit 98f4a26

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+133
-151
lines changed

.github/workflows/ci.yml

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,22 +16,25 @@ jobs:
1616
include:
1717
# Dart framework may contain breaking changes in minor version releases, not following semver.
1818
# The latest Dart framework (below) is tested on all architectures (Ubuntu, macOS, Windows).
19-
- name: Dart 3.1, Ubuntu
19+
- name: Dart 3.3, Ubuntu
2020
os: ubuntu-latest
21-
sdk: 3.1.2
22-
- name: Dart 3.1, macOS
21+
sdk: 3.3.3
22+
- name: Dart 3.3, macOS
2323
os: macos-latest
24-
sdk: 3.1.2
25-
- name: Dart 3.1, Windows
24+
sdk: 3.3.3
25+
- name: Dart 3.3, Windows
2626
os: windows-latest
27-
sdk: 3.1.2
27+
sdk: 3.3.3
2828
# Older Dart framework versions (below) are only tested with Ubuntu to reduce CI resource usage.
29+
- name: Dart 3.2
30+
os: ubuntu-latest
31+
sdk: 3.2.6
32+
- name: Dart 3.1
33+
os: ubuntu-latest
34+
sdk: 3.1.5
2935
- name: Dart 3.0
3036
os: ubuntu-latest
3137
sdk: 3.0.7
32-
- name: Dart 2.19
33-
os: ubuntu-latest
34-
sdk: 2.19.6
3538
- name: Dart beta
3639
os: ubuntu-latest
3740
sdk: beta

packages/dart/CHANGELOG.md

Lines changed: 10 additions & 0 deletions
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/dart-6.4.0...dart-7.0.0) (2024-04-12)
2+
3+
### BREAKING CHANGES
4+
5+
* This release removes support for Dart 2.19 ([#993](https://github.com/parse-community/Parse-SDK-Flutter/pull/993))
6+
7+
### Features
8+
9+
* Add support for Dart 3.1, 3.2, 3.3; remove support for Dart 2.19 ([#993](https://github.com/parse-community/Parse-SDK-Flutter/pull/993))
10+
111
## [6.4.0](https://github.com/parse-community/Parse-SDK-Flutter/compare/dart-6.3.0...dart-6.4.0) (2024-03-30)
212

313
### Features

packages/dart/README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,10 @@ The Parse Dart SDK is continuously tested with the most recent release of the Da
3232

3333
| Version | Latest Version | End of Support | Compatible |
3434
|-----------|----------------|----------------|------------|
35-
| Dart 3.1 | 3.1.2 | Sep 2024 | ✅ Yes |
35+
| Dart 3.3 | 3.3.3 | Mar 2025 | ✅ Yes |
36+
| Dart 3.2 | 3.2.6 | Jan 2025 | ✅ Yes |
37+
| Dart 3.1 | 3.1.5 | Oct 2024 | ✅ Yes |
3638
| Dart 3.0 | 3.0.7 | May 2024 | ✅ Yes |
37-
| Dart 2.19 | 2.19.6 | Mar 2024 | ✅ Yes |
3839

3940
## Getting Started
4041

packages/dart/lib/src/base/parse_constants.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
// Library
4-
const String keySdkVersion = '6.4.0';
4+
const String keySdkVersion = '7.0.0';
55
const String keyLibraryName = 'Flutter Parse SDK';
66

77
// End Points

packages/dart/lib/src/data/parse_core_data.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
/// Singleton class that defines all user keys and data
44
class ParseCoreData {

packages/dart/lib/src/data/parse_subclass_handler.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
typedef ParseObjectConstructor = ParseObject Function();
44
typedef ParseUserConstructor = ParseUser Function(

packages/dart/lib/src/enums/parse_enum_api_rq.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
/// Used to define the API calls made in ParseObject logs
44
enum ParseApiRQ {

packages/dart/lib/src/network/options.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
class ParseNetworkOptions {
44
ParseNetworkOptions({this.headers});

packages/dart/lib/src/network/parse_client.dart

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
typedef ParseClientCreator = ParseClient Function(
44
{required bool sendSessionId, SecurityContext? securityContext});
@@ -93,12 +93,9 @@ class ParseNetworkResponse {
9393
class ParseNetworkByteResponse extends ParseNetworkResponse {
9494
ParseNetworkByteResponse({
9595
this.bytes,
96-
final String data = 'byte response',
97-
final int statusCode = -1,
98-
}) : super(
99-
data: data,
100-
statusCode: statusCode,
101-
);
96+
super.data = 'byte response',
97+
super.statusCode,
98+
});
10299

103100
final List<int>? bytes;
104101
}

packages/dart/lib/src/network/parse_connectivity.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
/// Connection status check result.
44
enum ParseConnectivityResult {

packages/dart/lib/src/network/parse_dio_client.dart

Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -272,33 +272,11 @@ class _ParseDioClient with dio.DioMixin implements dio.Dio {
272272

273273
class _Options extends dio.Options {
274274
_Options({
275-
String? method,
276-
Duration? sendTimeout,
277-
Duration? receiveTimeout,
278-
Map<String, dynamic>? extra,
279-
Map<String, dynamic>? headers,
280-
dio.ResponseType? responseType,
275+
super.headers,
276+
super.responseType,
281277
String? contentType,
282-
dio.ValidateStatus? validateStatus,
283-
bool? receiveDataWhenStatusError,
284-
bool? followRedirects,
285-
int? maxRedirects,
286-
dio.RequestEncoder? requestEncoder,
287-
dio.ResponseDecoder? responseDecoder,
288278
}) : super(
289-
method: method,
290-
sendTimeout: sendTimeout,
291-
receiveTimeout: receiveTimeout,
292-
extra: extra,
293-
headers: headers,
294-
responseType: responseType,
295279
contentType: contentType ??
296280
(headers ?? <String, dynamic>{})[dio.Headers.contentTypeHeader],
297-
validateStatus: validateStatus,
298-
receiveDataWhenStatusError: receiveDataWhenStatusError,
299-
followRedirects: followRedirects,
300-
maxRedirects: maxRedirects,
301-
requestEncoder: requestEncoder,
302-
responseDecoder: responseDecoder,
303281
);
304282
}

packages/dart/lib/src/network/parse_live_query.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
enum LiveQueryEvent { create, enter, update, leave, delete, error }
44

packages/dart/lib/src/network/parse_query.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
/// Class to create complex queries
44
class QueryBuilder<T extends ParseObject> {

packages/dart/lib/src/network/parse_websocket_html.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
/// If you change this file, you should apply the same changes to the 'parse_websocket_io.dart' file
2+
library;
23

34
import 'dart:html' as html;
45

packages/dart/lib/src/network/parse_websocket_io.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
/// If you change this file, you should apply the same changes to the 'parse_websocket_html.dart' file
2+
library;
23

34
import 'dart:io' as io;
45

packages/dart/lib/src/objects/parse_acl.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
/// [ParseACL] is used to control which users can access or modify a particular object
44
/// [ParseObject] can have its own [ParseACL]

packages/dart/lib/src/objects/parse_array.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
class _ParseArray implements _Valuable<List>, _ParseSaveStateAwareChild {
44
_ParseArray({this.setMode = false});

packages/dart/lib/src/objects/parse_base.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
abstract class ParseBase {
44
/// refers to the Table Name in your Parse Server

packages/dart/lib/src/objects/parse_cloneable.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
/// Creates method which can be used to deep clone objects
44
abstract class ParseCloneable {

packages/dart/lib/src/objects/parse_config.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
class ParseConfig extends ParseObject {
44
/// Creates an instance of ParseConfig so that you can grab all configs from the server

packages/dart/lib/src/objects/parse_error.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
/// ParseException is used in [ParseResult] to inform the user of the exception
44
class ParseError {

packages/dart/lib/src/objects/parse_exception.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
abstract class ParseException implements Exception {}
44

packages/dart/lib/src/objects/parse_file.dart

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,17 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
class ParseFile extends ParseFileBase {
44
/// Creates a new file
55
///
66
/// {https://docs.parseplatform.org/rest/guide/#files/}
77
ParseFile(this.file,
88
{String? name,
9-
String? url,
10-
bool? debug,
11-
ParseClient? client,
12-
bool? autoSendSessionId})
9+
super.url,
10+
super.debug,
11+
super.client,
12+
super.autoSendSessionId})
1313
: super(
1414
name: file != null ? path.basename(file.path) : name!,
15-
url: url,
16-
debug: debug,
17-
client: client,
18-
autoSendSessionId: autoSendSessionId,
1915
);
2016

2117
File? file;

packages/dart/lib/src/objects/parse_file_base.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
abstract class ParseFileBase extends ParseObject {
44
/// Creates a new file

packages/dart/lib/src/objects/parse_file_web.dart

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,12 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
class ParseWebFile extends ParseFileBase {
44
ParseWebFile(this.file,
5-
{required String name,
6-
String? url,
7-
bool? debug,
8-
ParseClient? client,
9-
bool? autoSendSessionId})
10-
: super(
11-
name: name,
12-
url: url,
13-
debug: debug,
14-
client: client,
15-
autoSendSessionId: autoSendSessionId,
16-
);
5+
{required super.name,
6+
super.url,
7+
super.debug,
8+
super.client,
9+
super.autoSendSessionId});
1710

1811
Uint8List? file;
1912
CancelToken? _cancelToken;

packages/dart/lib/src/objects/parse_function.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
class ParseCloudFunction extends ParseObject {
44
/// Creates a new cloud function object

packages/dart/lib/src/objects/parse_geo_point.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
const String keyLatitude = 'latitude';
44
const String keyLongitude = 'longitude';

packages/dart/lib/src/objects/parse_installation.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
class ParseInstallation extends ParseObject {
44
/// Creates an instance of ParseInstallation

packages/dart/lib/src/objects/parse_number.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
class _ParseNumber implements _Valuable<num>, _ParseSaveStateAwareChild {
44
num estimateNumber;

packages/dart/lib/src/objects/parse_object.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../parse_server_sdk.dart';
22

33
/// [ParseObject] is a local representation of data that can be saved and
44
/// retrieved from the Parse cloud.

packages/dart/lib/src/objects/parse_operation/parse_add_operation.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
part of flutter_parse_sdk;
1+
part of '../../../parse_server_sdk.dart';
22

33
/// An operation that adds a new element to an array
44
class _ParseAddOperation extends _ParseArrayOperation {
5-
_ParseAddOperation(List value) : super(value);
5+
_ParseAddOperation(super.value);
66

77
@override
88
String get operationName => 'Add';

packages/dart/lib/src/objects/parse_operation/parse_add_relation_operation.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
part of flutter_parse_sdk;
1+
part of '../../../parse_server_sdk.dart';
22

33
/// An operation that adds new objects to a [ParseRelation]
44
class _ParseAddRelationOperation extends _ParseRelationOperation {
5-
_ParseAddRelationOperation(Set<ParseObject> value) : super(value);
5+
_ParseAddRelationOperation(super.value);
66

77
@override
88
String get operationName => 'AddRelation';

packages/dart/lib/src/objects/parse_operation/parse_add_unique_operation.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
part of flutter_parse_sdk;
1+
part of '../../../parse_server_sdk.dart';
22

33
/// An operation that adds a new element to an array field,
44
/// only if it wasn't already present
55
class _ParseAddUniqueOperation extends _ParseArrayOperation {
6-
_ParseAddUniqueOperation(List value) : super(value);
6+
_ParseAddUniqueOperation(super.value);
77

88
@override
99
String get operationName => 'AddUnique';

packages/dart/lib/src/objects/parse_operation/parse_increment_operation.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
part of flutter_parse_sdk;
1+
part of '../../../parse_server_sdk.dart';
22

33
/// An operation that increment a numeric value by a given amount
44
class _ParseIncrementOperation extends _ParseNumberOperation {
5-
_ParseIncrementOperation(num value) : super(value);
5+
_ParseIncrementOperation(super.value);
66

77
@override
88
String get operationName => 'Increment';

packages/dart/lib/src/objects/parse_operation/parse_operation.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
part of flutter_parse_sdk;
1+
part of '../../../parse_server_sdk.dart';
22

33
/// Represents an operation performed on Parse data. It defines the core
44
/// functionality of any operation performed on Parse data.
@@ -182,7 +182,7 @@ abstract class _ParseOperation<T> implements _Valuable<T> {
182182
}
183183

184184
abstract class _ParseArrayOperation extends _ParseOperation<List> {
185-
_ParseArrayOperation(List value) : super(value) {
185+
_ParseArrayOperation(super.value) {
186186
super.valueForApiRequest = [];
187187
}
188188

@@ -229,7 +229,7 @@ abstract class _ParseArrayOperation extends _ParseOperation<List> {
229229

230230
abstract class _ParseRelationOperation
231231
extends _ParseOperation<Set<ParseObject>> {
232-
_ParseRelationOperation(Set<ParseObject> value) : super(value) {
232+
_ParseRelationOperation(super.value) {
233233
super.valueForApiRequest = {};
234234
}
235235

packages/dart/lib/src/objects/parse_operation/parse_remove_operation.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
part of flutter_parse_sdk;
1+
part of '../../../parse_server_sdk.dart';
22

33
/// An operation that removes every instance of an element from an array
44
class _ParseRemoveOperation extends _ParseArrayOperation {
5-
_ParseRemoveOperation(List value) : super(value);
5+
_ParseRemoveOperation(super.value);
66

77
@override
88
String get operationName => 'Remove';

0 commit comments

Comments
 (0)