Skip to content

Commit

Permalink
Remove support for Internet Explorer (#2114)
Browse files Browse the repository at this point in the history
Closes #1614

Use should be replaced by the edge browser.

It has been 2 years since we removed support for internet explorer in
dart2js. We have not been testing internet explorer integration, and it
may already be broken by dart2js changes.

Remove every reference to `ie` or internet explorer in the repo.

Treat this as non-breaking for `package:test` even though there is a
small risk of breaking some users still using internet explorer and it
happens to still be working.
  • Loading branch information
natebosch committed Dec 13, 2023
1 parent 48a2bc3 commit b3fb148
Show file tree
Hide file tree
Showing 15 changed files with 13 additions and 147 deletions.
1 change: 1 addition & 0 deletions pkgs/test/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
feature, which is why we are making this change in a non-breaking release.
* If you do require this feature, file an issue and we can look at adding it
back.
* **BREAKING**: Fully remove support for Internet Explorer.
* Fix running of tests defined under `lib/` with relative imports to other
libraries in the package.

Expand Down
2 changes: 1 addition & 1 deletion pkgs/test/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -348,7 +348,7 @@ only supports boolean operations. The following identifiers are defined:

* `safari`: Whether the test is running on Apple Safari.

* `ie`: Whether the test is running on Microsoft Internet Explorer.
* `edge`: Whether the test is running on Microsoft Edge browser.

* `node`: Whether the test is running on Node.js.

Expand Down
4 changes: 0 additions & 4 deletions pkgs/test/dart_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,6 @@ tags:
add_tags: [dart2js]
test_on: mac-os

ie:
add_tags: [dart2js]
test_on: windows
skip: https://github.com/dart-lang/test/issues/1614
edge:
add_tags: [dart2js]
test_on: windows
Expand Down
13 changes: 6 additions & 7 deletions pkgs/test/doc/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -185,8 +185,8 @@ tested on supported platforms.

```yaml
tags:
# Internet Explorer doesn't support promises yet.
promises: {test_on: "browser && !ie"}
# Test on browsers other than firefox
some_feature: {test_on: "browser && !firefox"}
```

The field can also be used at the top level of the configuration file to
Expand Down Expand Up @@ -351,11 +351,10 @@ to quickly select a given set of tests.

```yaml
presets:
# Pass "-P ie" to run only Internet Explorer tests.
ie:
# Pass "-P feature" to run only tests with "feature name" in the name.
feature:
plain_names:
- "IE"
- "Internet Explorer"
- "feature name"
```

This field is not supported in the
Expand Down Expand Up @@ -611,7 +610,7 @@ tags:
chrome: {add_tags: [browser]}
firefox: {add_tags: [browser]}
safari: {add_tags: [browser]}
ie: {add_tags: [browser]}
edge: {add_tags: [browser]}
```

This field is not supported in the
Expand Down
1 change: 0 additions & 1 deletion pkgs/test/lib/src/executable.dart
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ Future<void> main(List<String> args) async {
Runtime.edge,
Runtime.firefox,
Runtime.safari,
Runtime.internetExplorer
], BrowserPlatform.start);

await executable.main(args);
Expand Down
2 changes: 0 additions & 2 deletions pkgs/test/lib/src/runner/browser/browser_manager.dart
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ import '../executable_settings.dart';
import 'browser.dart';
import 'chrome.dart';
import 'firefox.dart';
import 'internet_explorer.dart';
import 'microsoft_edge.dart';
import 'safari.dart';

Expand Down Expand Up @@ -158,7 +157,6 @@ class BrowserManager {
Runtime.chrome => Chrome(url, configuration, settings: settings),
Runtime.firefox => Firefox(url, settings: settings),
Runtime.safari => Safari(url, settings: settings),
Runtime.internetExplorer => InternetExplorer(url, settings: settings),
Runtime.edge => MicrosoftEdge(url, configuration, settings: settings),
_ => throw ArgumentError('$browser is not a browser.'),
};
Expand Down
2 changes: 0 additions & 2 deletions pkgs/test/lib/src/runner/browser/default_settings.dart
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,6 @@ final defaultSettings = UnmodifiableMapView({
macOSExecutable: '/Applications/Firefox.app/Contents/MacOS/firefox-bin',
windowsExecutable: r'Mozilla Firefox\firefox.exe',
environmentOverride: 'FIREFOX_EXECUTABLE'),
Runtime.internetExplorer:
ExecutableSettings(windowsExecutable: r'Internet Explorer\iexplore.exe'),
Runtime.safari: ExecutableSettings(
macOSExecutable: '/Applications/Safari.app/Contents/MacOS/Safari',
environmentOverride: 'SAFARI_EXECUTABLE'),
Expand Down
34 changes: 0 additions & 34 deletions pkgs/test/lib/src/runner/browser/internet_explorer.dart

This file was deleted.

84 changes: 0 additions & 84 deletions pkgs/test/test/runner/browser/internet_explorer_test.dart

This file was deleted.

6 changes: 2 additions & 4 deletions pkgs/test/test/runner/compiler_runtime_matrix_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,7 @@ void main() {
for (var runtime in Runtime.builtIn) {
for (var compiler in runtime.supportedCompilers) {
// Ignore the platforms we can't run on this OS.
if (((runtime == Runtime.internetExplorer || runtime == Runtime.edge) &&
!Platform.isWindows) ||
if ((runtime == Runtime.edge && !Platform.isWindows) ||
(runtime == Runtime.safari && !Platform.isMacOS)) {
continue;
}
Expand Down Expand Up @@ -116,8 +115,7 @@ void main() {
},
skip: compiler == Compiler.dart2wasm
? 'Wasm tests are experimental and require special setup'
: [Runtime.firefox, Runtime.nodeJS, Runtime.internetExplorer]
.contains(runtime) &&
: [Runtime.firefox, Runtime.nodeJS].contains(runtime) &&
Platform.isWindows
? 'https://github.com/dart-lang/test/issues/1942'
: null);
Expand Down
3 changes: 1 addition & 2 deletions pkgs/test/test/runner/runner_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -121,14 +121,13 @@ Output:

final _runtimes = '[vm (default), chrome, firefox'
'${Platform.isMacOS ? ', safari' : ''}'
'${Platform.isWindows ? ', ie' : ''}, edge, node]';
', edge, node]';

final _runtimeCompilers = [
'[vm]: kernel (default), source, exe',
'[chrome]: dart2js (default), dart2wasm',
'[firefox]: dart2js (default), dart2wasm',
if (Platform.isMacOS) '[safari]: dart2js (default)',
if (Platform.isWindows) '[ie]: dart2js (default)',
'[edge]: dart2js (default)',
'[node]: dart2js (default)',
].map((str) => ' $str').join('\n');
Expand Down
1 change: 1 addition & 0 deletions pkgs/test_api/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
## 0.7.0-wip

* Deprecate `Runtime.internetExplorer`.
* Added `dart2wasm` as a supported compiler for the `chrome` runtime.
* **BREAKING**: Removed the `experimentalChromeWasm` runtime.
* **BREAKING**: Removed `Runtime.isJS` and `Runtime.isWasm`, as this is now
Expand Down
4 changes: 0 additions & 4 deletions pkgs/test_api/dart_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,6 @@ tags:
add_tags: [dart2js]
test_on: mac-os

ie:
add_tags: [dart2js]
test_on: windows

# Tests that run pub. These tests may need to be excluded when there are local
# dependency_overrides.
pub:
Expand Down
2 changes: 1 addition & 1 deletion pkgs/test_api/lib/src/backend/runtime.dart
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ final class Runtime {
isBrowser: true);

/// Microsoft Internet Explorer.
@Deprecated('Internet Explorer is no longer supported')
static const Runtime internetExplorer = Runtime(
'Internet Explorer', 'ie', Compiler.dart2js, [Compiler.dart2js],
isBrowser: true);
Expand All @@ -49,7 +50,6 @@ final class Runtime {
Runtime.chrome,
Runtime.firefox,
Runtime.safari,
Runtime.internetExplorer,
Runtime.edge,
Runtime.nodeJS,
];
Expand Down
1 change: 0 additions & 1 deletion pkgs/test_core/lib/src/runner/configuration/args.dart
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ final ArgParser _parser = (() {

var allRuntimes = Runtime.builtIn.toList()..remove(Runtime.vm);
if (!Platform.isMacOS) allRuntimes.remove(Runtime.safari);
if (!Platform.isWindows) allRuntimes.remove(Runtime.internetExplorer);

parser.addFlag('help',
abbr: 'h', negatable: false, help: 'Show this usage information.');
Expand Down

0 comments on commit b3fb148

Please sign in to comment.