Bump lints, require Dart 3.3 (#88)
diff --git a/.github/workflows/test-package.yml b/.github/workflows/test-package.yml
index 3e522b9..ed86d8f 100644
--- a/.github/workflows/test-package.yml
+++ b/.github/workflows/test-package.yml
@@ -47,7 +47,7 @@
matrix:
# Add macos-latest and/or windows-latest if relevant for this package.
os: [ubuntu-latest]
- sdk: [3.0.0, dev]
+ sdk: [3.3.0, dev]
steps:
- uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633
- uses: dart-lang/setup-dart@fedb1266e91cf51be2fdb382869461a434b920a3
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5afbb6c..9c8e7b3 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,6 @@
## 0.10.13-wip
-- Require Dart 3.0
+- Require Dart 3.3
## 0.10.12
diff --git a/lib/parser.dart b/lib/parser.dart
index 701a63f..b699ac7 100644
--- a/lib/parser.dart
+++ b/lib/parser.dart
@@ -66,7 +66,7 @@
if (map.containsKey('mappings') ||
map.containsKey('sources') ||
map.containsKey('names')) {
- throw FormatException('map containing "sections" '
+ throw const FormatException('map containing "sections" '
'cannot contain "mappings", "sources", or "names".');
}
return MultiSectionMapping.fromJson(map['sections'] as List, otherMaps,
@@ -110,13 +110,13 @@
{/*String|Uri*/ Object? mapUrl}) {
for (var section in sections.cast<Map>()) {
var offset = section['offset'] as Map?;
- if (offset == null) throw FormatException('section missing offset');
+ if (offset == null) throw const FormatException('section missing offset');
var line = offset['line'] as int?;
- if (line == null) throw FormatException('offset missing line');
+ if (line == null) throw const FormatException('offset missing line');
var column = offset['column'] as int?;
- if (column == null) throw FormatException('offset missing column');
+ if (column == null) throw const FormatException('offset missing column');
_lineStart.add(line);
_columnStart.add(column);
@@ -125,7 +125,8 @@
var map = section['map'] as Map?;
if (url != null && map != null) {
- throw FormatException("section can't use both url and map entries");
+ throw const FormatException(
+ "section can't use both url and map entries");
} else if (url != null) {
var other = otherMaps?[url];
if (otherMaps == null || other == null) {
@@ -137,11 +138,11 @@
} else if (map != null) {
_maps.add(parseJson(map, otherMaps: otherMaps, mapUrl: mapUrl));
} else {
- throw FormatException('section missing url or map');
+ throw const FormatException('section missing url or map');
}
}
if (_lineStart.isEmpty) {
- throw FormatException('expected at least one section');
+ throw const FormatException('expected at least one section');
}
}
@@ -342,7 +343,7 @@
urls.keys.toList(), names.keys.toList(), lines);
}
- SingleMapping.fromJson(Map<String, dynamic> map, {mapUrl})
+ SingleMapping.fromJson(Map<String, dynamic> map, {Object? mapUrl})
: targetUrl = map['file'] as String?,
urls = List<String>.from(map['sources'] as List),
names = List<String>.from((map['names'] as List?) ?? []),
diff --git a/lib/src/source_map_span.dart b/lib/src/source_map_span.dart
index 8ca12b9..aad8a32 100644
--- a/lib/src/source_map_span.dart
+++ b/lib/src/source_map_span.dart
@@ -14,9 +14,8 @@
/// If this is `true`, [text] is the value of the identifier.
final bool isIdentifier;
- SourceMapSpan(SourceLocation start, SourceLocation end, String text,
- {this.isIdentifier = false})
- : super(start, end, text);
+ SourceMapSpan(super.start, super.end, super.text,
+ {this.isIdentifier = false});
/// Creates a [SourceMapSpan] for an identifier with value [text] starting at
/// [start].
diff --git a/pubspec.yaml b/pubspec.yaml
index 4180b8d..fcc9925 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -4,12 +4,12 @@
repository: https://github.com/dart-lang/source_maps
environment:
- sdk: ^3.0.0
+ sdk: ^3.3.0
dependencies:
source_span: ^1.8.0
dev_dependencies:
- dart_flutter_team_lints: ^1.0.0
+ dart_flutter_team_lints: ^2.0.0
term_glyph: ^1.2.0
test: ^1.16.0
diff --git a/test/parser_test.dart b/test/parser_test.dart
index cf320b6..6cfe928 100644
--- a/test/parser_test.dart
+++ b/test/parser_test.dart
@@ -2,6 +2,9 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
+// ignore_for_file: inference_failure_on_collection_literal
+// ignore_for_file: inference_failure_on_instance_creation
+
import 'dart:convert';
import 'package:source_maps/source_maps.dart';